Compaq ACMS for OpenVMS
Version 4.4 Release
Notes
6.10 Use Logical Names for File Allocation in ACMSATL
The Audit Trail Logger (ACMSATL) attempts to translate the following
logical names and uses the values specified when the Audit Trail Log
file is created:
- ACMS$ATL_DEQ_BLOCKS --- The default extension quantity (DEQ)
specifies the number of blocks to be added when the file is extended.
Valid values are 0 through 65535.
- ACMS$ATL_ALQ_BLOCKS --- The allocation quantity (ALQ) specifies the
number of blocks to be initially allocated when the log is created.
Valid values are 0 through 4,294,967,295.
See the OpenVMS Record Management Services Reference Manual
for additional information on these fields.
6.11 New Logical Name Must be Defined for RI Agents and User-Written Agents
During the initialization of a CP process or a user-written agent, ACMS
determines the following two conditions: whether CMA is in the process
and the version of DECforms being used. Depending on these two
conditions, the ACMS agent with respect to DECforms operates in either
SINGLE-USER mode or MULTI-USER mode.
SINGLE-USER mode is defined as one (1) user at a time executing an ACMS
task. A single-threaded user-written agent is an example of SINGLE-USER
mode.
MULTI-USER mode is defined as more than one (1) user at a time
executing an ACMS task. A CP process is an example of MULTI-USER mode.
If you use a MULTI-USER user-written agent with DECforms Version 2.2,
the agent must be linked with CMA.
ACMS provides the logical name ACMS$DECFORMS_IN_AGENT. This logical
name must be defined as a process logical name when a user-written
agent uses DECforms in ACMS tasks. The following values are valid for
defining the logical name to a TRUE value: 1, "T", "t", "Y", "y". For
example:
$ DEFINE/PROCESS ACMS$DECFORMS_IN_AGENT "Y"
|
ACMS Version 4.1 used the logical name ACMS$CMA_USER_AGENT for
essentially the same purpose, but the name was confusing. Later
versions of ACMS still support this logical name, but it is
undocumented.
Compaq recommends that you use settings for the logical name based on
the version of DECforms that the agent uses, as follows:
- DECforms Version 1.4 is used. Defining the logical name
ACMS$DECFORMS_IN_AGENT is not required but has no harmful effects.
Defining the logical name causes ACMS to load the FORMS$MANAGER forms
manager during initialization, rather than when the first DECforms call
is made.
- DECforms Version 2.1B is used. The logical name
ACMS$DECFORMS_IN_AGENT must be defined to the TRUE value. Doing so
ensures that ACMS brings CMA into the process if CMA is not already
there.
- DECforms Version 2.2 or later is used. If the agent is intended to
run in SINGLE-USER mode, defining the logical name
ACMS$DECFORMS_IN_AGENT has no effect, because CMA is not in the
process. Defining the logical name causes ACMS to load the
FORMS$MANAGER forms manager during initialization, rather than when the
first DECforms call is made.
Define the logical name ACMS$DECFORMS_IN_AGENT only when using DECforms
Version 2.1B or when using DECforms Version 2.2 or later in MULTI-USER
mode.
6.12 Cache Directories for Application and Forms Files Should Not Be Write Protected
The directories used for caching the application and forms files should
not be write protected. Write protecting the caching directories will
cause the task to fail when caching of the application or forms files
to the submitter node is performed.
6.13 No Longer Necessary to Store ACMS Definitions in CDD
In previous versions of ACMS, after ACMS definitions were checked for
syntax errors they were always stored in CDD. When all the definitions
were processed, the definitions were read out of the dictionary, and a
database file to be used by the ACMS run-time software was created.
With ACMS Version 4.3 and later, the ACMS definitions no longer have to
be stored in CDD. The ADU COMPILE command can be used to compile ACMS
definitions and store the results in an OpenVMS file. Once all the
definitions are processed, the ADU LINK command can be used to create
the runtime database files.
CDD record definitions must continue to be stored in the dictionary.
When determining whether to store definitions in CDD or to compile the
definitions into OpenVMS files, keep in mind the following:
- All ACMS definitions that are going to be transformed for inclusion
into a database file must be processed the same way.
For example,
if you store a task group definition in the CDD, all task definitions
referenced in the task group must also be stored in the dictionary. If,
instead, you compile the task group definition, all referenced task
definitions must be compiled.
- File-based processing requires that the files that are the
compilation results of all referenced ACMS definitions be in the same
directory with the same file extension. That is, the compilation
results of all tasks required by a task group must be in the same
directory with the same file extension. The same is true for all
submenus required by a menu.
For more information about the ADU COMPILE and LINK commands, refer to
the Compaq ACMS for OpenVMS ADU Reference Manual.
Chapter 7
Guidelines for Reporting an ACMS Problem
The following sections discuss the kinds of information you should have
available when reporting an ACMS problem.
7.1 Calling in a Problem to Your Compaq Support Representative
When you call your Compaq support representative to report a problem,
the telephone support specialist will most likely ask you for the
following information:
- Which versions of OpenVMS, ACMS, network, forms product, and
programming language are you using?
Obtain the version information
as follows:
- OpenVMS version
- Identify the hardware type by logging in to the system and looking
at the output of this statement:
$ WRITE SYS$OUTPUT F$GETSYI("ARCH_NAME")
|
The output will be either Alpha or VAX.
- Get the OpenVMS version from the first line of this command:
- Network and firmware version and information
- DECnet version number and ECO level
- Firmware version
- TCP/IP product name, version and ECO level
- ACMS version
Log in to the system experiencing the problem and
type this file using the following command:
$ TYPE SYS$SYSTEM:ACMS_ECO_LEVEL.DAT
|
This file always contains the most accurate version identification
information. Version IDs are not always updated throughout the ACMS
system. This file is the most reliable source of ACMS version
information.
- DECforms version
- Get the image file identification of the FORMS$MANAGER image:
$ ANALYZE/IMAGE SYS$SHARE:FORMS$MANAGER.EXE
Image Identification Information
image name: "FORMS$MANAGER"
image file identification: "FORMS V1.4-12"
link date/time: 25-JUN-1993 11:46:59.70
linker identification: "05-13"
Patch Information
|
- Get the image file identification of the FORMS$CIOSHR image:
$ ANALYZE/IMAGE SYS$SHARE:FORMS$CIOSHR.EXE
Image Identification Information
image name: "FORMS$CIOSHR"
image file identification: "FORMS V1.4-5"
link date/time: 8-APR-1992 21:04:07.36
linker identification: "05-05"
Patch Information
|
Report both of these image versions when reporting a problem with a
system where DECforms is being used.
- TDMS version
Get the image file identification of the TSSSHR
image:
$ ANALYZE/IMAGE SYS$SHARE:TSSSHR.EXE
Image Identification Information
image name: "TSSSHR"
image file identification: "TDMS V1.9A-0"
link date/time: 29-APR-1991 16:59:21.21
linker identification: "05-05"
Patch Information
|
- Programming language version
The programming language version
is usually visible in the header of compiler listing files.
For
example:
APPL_PROGRAM Source Listing 22-NOV-1993 DEC COBOL V1.1-747
Source Listing 12-OCT-1995 DEC C V4.1-001
|
- A clear statement of the problem, and why you feel this is an ACMS
problem.
- What commands or process caused the problem?
- What were the exact error messages you received?
- What additional information appeared in either the ACMS Audit
Trail Log file or the ACMS Software Event Logger (SWL)? Be sure to have
these logs on hand when you place your call. Refer to Compaq ACMS
for OpenVMS Managing Applications for details about these files.
The support specialist may also ask for the following information:
- The version number of other products you are using with ACMS.
- A description of the application and, if necessary, a small
example of code that duplicates the problem.
- Whether you are running a distributed application.
If you have
a distributed environment, please report the clock time on both systems
and note any time difference.
- Whether you are running with multiple submitter platforms (that is,
whether the logical name ACMS$MULTIPLE_SUBMITTER_PLATFORMS is defined
to true).
- Whether the problem affects all users or only specific users.
- Whether the problem affects all applications or only specific
tasks.
- Whether the tasks use remote requests.
- The types of devices being accessed.
- The ACMS system state at the time the problem occurred.
- Whether the problem is reproducible.
- Whether you can reproduce the problem running your application in
the ACMS Task Debugger environment.
- Whether this command, statement, or application has worked before.
If you answer yes to this question, the specialist will want to know
what might have caused the change. For example, such changes might
include updates to the operating system or layered products, bringing
new production applications online, and adding new users.
After listening to your responses, the specialist might be able to
provide immediate help or might have to call you back after doing some
testing and research. For problems that the specialist cannot reproduce
or resolve, you might be asked to supply additional detailed
information.
7.2 Additional ACMS Information You Can Collect
This section provides additional information that you may be asked to
collect to assist in analyzing a problem. It would be helpful if, for
very large log files, you extract and forward only the portion of the
log file that represents the time of the error.
- The SWLUP log file. This file is most important. It is located in
SYS$ERRORLOG:SWL.LOG or in the directory pointed to by the logical
ACMS$SWL_LOG. Send the binary log file rather than an output report.
- The Audit Trail Log file. This file is located either in
SYS$ERRORLOG:ACMSAUDIT.LOG or in the directory pointed to by the
logical ACMS$AUDIT_LOG. Send the binary log file rather than an output
report.
- Any ACMS dump files. These files are located in the SYS$ERRORLOG
directory, the default directory for the associated process user name,
or in the directory pointed to by the logical SYS$PROCDMP. The dump
file names are in the form of ACMxxxx.DMP.
Use the
following commands to analyze the dump file:
$ ANALYZE/PROCESS/OUTPUT=<file-name>.DMP_INFO
DBG> SHOW CALLS
DBG> SHOW IMAGE
DBG> SHOW STACK
|
- All ACMSGEN parameters. Use the following commands to obtain this
information:
$ RUN SYS$SYSTEM:ACMSGEN
ACMSGEN> USE_ACTIVE
ACMSGEN> WRITE ACMSGEN.LOG
ACMSGEN> EXIT
|
- All OpenVMS SYSGEN parameters. Use the following commands to
obtain this information:
$ RUN SYS$SYSTEM:SYSGEN
SYSGEN> SET /OUT=SYSGEN.LOG
SYSGEN> SHOW /ALL
SYSGEN> SHOW /SPECIAL
SYSGEN> EXIT
|
- Memory on all systems involved. Use the DCL command SHOW MEMORY to
obtain this information:
$ SHOW MEMORY/ALL/FULL/OUT=MEMORY.LOG
|
- The authorization data for all OpenVMS accounts used by ACMS. Run
the OpenVMS Authorize Utility and then obtain a full listing
(SYSUAF.LIS file) for each account:
$ RUN SYS$SYSTEM:AUTHORIZE
UAF> LIST/FULL <account-name>
UAF> EXIT
|
- All logical name tables. Use the DCL command SHOW LOGICAL to
obtain this information:
$ SHOW LOGICAL/FULL/TABLE=*/OUT=ALL_LOG.LOG
|
7.2.1 Reporting Problems with ACMS Utilities
In addition to the information listed in Section 7.2, it may
be helpful to collect the following information for problems with ACMS
utilities:
- A listing of the definitions (including record, form, request,
request library, task, task group, application, and menu) and
procedures that may have caused the problem.
- The SWLUP log file. This file is very important. It is located in
SYS$ERRORLOG:SWL.LOG or in the directory pointed to by the logical
ACMS$SWL_LOG. Send the binary log file rather than an output report.
- The Audit Trail log file. This file is located either in
SYS$ERRORLOG:ACMSAUDIT.LOG or in the directory pointed to by the
logical ACMS$AUDIT_LOG. Send the binary log file rather than an output
report.
- All ACMSGEN parameters. Use the following commands to obtain this
information:
$ RUN SYS$SYSTEM:ACMSGEN
ACMSGEN> USE_ACTIVE
ACMSGEN> WRITE ACMSGEN.LOG
ACMSGEN> EXIT
|
- The authorization data for all OpenVMS accounts used by ACMS. Run
the OpenVMS Authorize Utility, and obtain a full listing (SYSUAF.LIS
file) for each account using the following commands:
$ RUN SYS$SYSTEM:AUTHORIZE
UAF> LIST/FULL <account-name>
UAF> EXIT
|
- All logical name tables. Use the DCL command SHOW LOGICAL to obtain
this information:
$ SHOW LOGICAL/FULL/TABLE=*/OUT=ALL_LOG.LOG
|
7.2.2 Reporting Problems with the ACMS Run-Time System
In addition to the information listed in Section 7.2, it may
be helpful to collect the following additional information for problems
with the ACMS run-time system:
- Process dump files. These files are located in the SYS$ERRORLOG
directory, the default directory for the associated process user name,
or the directory pointed to by the logical name SYS$PROCDMP, if the
error occurred in the Command Process (CP), the Application Execution
Controller (EXC), the ACMS Central Controller (ACC), the Audit Trail
Log (ATL), or the Terminal Subsystem Controller (TSC). The dump file
names are in the form of ACMxxxx.DMP.
Use the following
commands to analyze the dump file on VAX systems:
$ ANALYZE/PROCESS/OUTPUT=<file-name>.DMP_INFO
DBG> SHOW IMAGE
DBG> SHOW CALLS
DBG> SHOW STACK
|
On Alpha systems, the dump files should be analyzed on the system
where they were created. This should be done before the system is
rebooted or modified in any way. Please provide the support specialist
with the output file.
Use the following commands to analyze the
dump file on Alpha systems:
$ ANALYZE/PROCESS_DUMP/OUTPUT=<file-name>.DMP_INFO-
_$ /IMAGE=SYS$SYSTEM:ACMSEXC
|
The /IMAGE= qualifier is sometimes necessary to access the DEBUG.
$ DBG SHOW IMAGE
DBG> SHOW CALLS
DBG> SHOW STACK
|
- All OpenVMS SYSGEN parameters. Use the following commands to obtain
this information:
$ RUN SYS$SYSTEM:SYSGEN
SYSGEN> SET /OUT=SYSGEN.LOG
SYSGEN> SHOW/ALL
SYSGEN> SHOW/SPECIAL
SYSGEN> EXIT
|
- Memory on all systems involved. Use the DCL command SHOW MEMORY to
obtain this information:
$ SHOW MEMORY/ALL/FULL/OUT=MEMORY.LOG
|
- Output from the SDA utility for any ACMS processes that appear to
be hung. Use the following commands to obtain the information:
$ ANALYZE/SYSTEM
SDA> SET PROCESS/ID=pid-of-hanging-process
SDA> SHOW PROCESS
SDA> SHOW PROCESS/CHANNEL
SDA> SHOW PROCESS/IMAGES
SDA> SHOW PROCESS/PHD
SDA> SHOW CALL
SDA> SHOW CALL/NEXT
SDA> SHOW CALL/NEXT !repeat this until there are no more calls
Call Frame Information
-----------------------
%SDA-E-NOTINPHYS, 00000000 : not in physical memory
SDA> EXIT
|
- Collection of current PCs and other information from any process
that may be hung. Use the following process to capture this information:
$ SET HOST/LOG=output-file NODE::
|
After logging in:
$ SET TERM/UNKNOWN
$ SHOW PROCESS/ID=pid/CONTINUOUS
|
Let this run for 15 to 20 minutes, then press CTRL/Z.
Submit the output file with the problem report.
- A machine-readable copy of the OpenVMS SYSGEN parameter values.
This may be useful if there is an unexpected process dump. Use the
following commands to obtain these values:
$ RUN SYS$SYSTEM:SYSGEN
SYSGEN> USE ACTIVE
SYSGEN> WRITE <file-spec>
|
The USE ACTIVE command copies the current parameter values into
your work area. The WRITE command creates a machine-readable version of
this information in the output file you specify.
- A listing of the ACMSGEN parameters.
- A listing of the definitions (including form, request, request
library, task group, task, record, application, and menu) and
procedures for the task that may have caused the problem.
- A listing of the parameter settings of the various user names under
which the ACMS components were running when the problem occurred. Use
the OpenVMS Authorize Utility to obtain this information:
$ RUN SYS$SYSTEM:AUTHORIZE
UAF> LIST/FULL <user-name>
|
The LIST/FULL command writes the information to a file called
SYSUAF.LIS in your default directory. The file includes the user name,
the user identification code (UIC), the default OpenVMS directory,
privileges, and a list of the OpenVMS quotas and values assigned for
that user name.
Information about the user names for the ACMS
Central Controller (ACC), the Terminal Subsystem Controller (TSC), the
Application Execution Controller (EXC), and the Command Process (CP) is
useful in determining the events surrounding a problem with the ACMS
system.
- A listing of the Audit Trail Report for the error.
- A listing of the ACCOUNTING log report.
- A listing of the hardware error log (Error Log Utility).
7.2.3 Reporting Problems with the Remote Manager Web Agent
If you encounter problems with the Remote Manager web agent process
(ACMS$MGMT_HMMO), refer to the following files for error information
specific to the web agent:
SYS$SPECIFIC:[WBEM]ACMS$MGMT_HMMO.LOG;*
SYS$SPECIFIC:[WBEM]ACMS$MGMT_HMMO.ERR;*.
SYS$SPECIFIC:[WBEM]*.DMP;*
If the problem is with WBEM$SERVER process, supply your Compaq support
representative with the dump file. If the problem is with the Remote
Manager web agent process, please have the following files ready for
analysis in addition to a procedure which reproduces the error
condition:
SYS$SPECIFIC:[WBEM]ACMS$MGMT_HMMO.LOG;*
SYS$SPECIFIC:[WBEM]ACMS$MGMT_HMMO.ERR;*
SYS$SPECIFIC:[WBEM]*.html;*
SYS$SPECIFIC:[WBEM]*.txt;*
SYS$SPECIFIC:[WBEM]SYS$OUTPUT.*;
SYS$SPECIFIC:[WBEM]*.DMP;*