CSL trace records

You can analyze CSL address space trace records (for example OM, RM, or SCI) in a formatted dump to determine whether a problem is environmental or internal.

Trace records

Trace record eye catchers in a formatted dump provide clues about which function resulted in an error. You might be able to take action to correct environmental problems immediately. Refer internal problems to IBM® with appropriate documentation, such as system console logs and dumps.

ODBM trace records are written to one or more of the trace tables shown in the following table.

Table 1. Trace tables for ODBM trace records
Table name Number of tables Table description
CSL 1 CSL activity, including errors
ERR 1 Errors
ODBM 1 ODBM activity
PLEX 1 per IMSplex IMSplex activity, including errors

OM trace records are written to one or more of the trace tables shown in the following table.

Table 2. Trace tables for OM trace records
Table name Number of tables Table description
CSL 1 CSL activity, including errors
ERR 1 Errors
OM 1 OM activity
PLEX 1 per IMSplex IMSplex activity, including errors

RM trace records are written to one or more of the trace tables shown in the following table.

Table 3. Trace tables for RM trace records
Table name Number of tables Table description
CSL 1 CSL activity, including errors
ERR 1 Errors
PLEX 1 per IMSplex IMSplex activity, including errors
REPO 1 IMSRSC repository activity, including errors
RM 1 RM activity, including errors

SCI trace records are written to one or more of the trace tables shown in the following table.

Table 4. Trace tables for SCI trace records
Table name Number of tables Table description
CSL 1 CSL activity, including errors
ERPL 1 Parmlist errors
ERR 1 Errors
INTF 1 SCI interface activity
INTP 1 Interface parmlist
PLEX 1 per IMSplex IMSplex activity, including errors
SCI 1 SCI activity, including errors

Each CSL trace record contains 32 bytes (the ERPL and INTP tables in the SCI address space contain records that are 256 bytes). The first byte is the trace code, which indicates the function that wrote the trace record. Examples of trace code functions include address space initialization, address space termination, the CSLOMCMD request, the CSLRMUPD request, and the CSLSCRQS request. The second byte is the trace subcode, which indicates the category of the trace record. Examples of trace subcode categories include begin request, end request, CQS error, and SCI error. Most trace records include a 2-byte module identifier of the module that wrote the trace record. The last 8 bytes are the STCK time stamp of when the trace record was written. Trace record mapping of the rest of the fields is unique to the trace subcode.

CSL address space trace codes and other common codes used in trace records are mapped by a macro following the naming convention of CSLxCODE macro, where x represents the CSL address space as shown in the following table.

Table 5. CSL address space trace code mapping macros
Codes macro name Description
CSLDCODE ODBM codes
CSLOCODE OM codes
CSLRCODE RM codes
CSLSCODE SCI codes
CSLZCODE CSL codes common to multiple CSL address spaces

CSL address space trace records are mapped by a macro following the naming convention of CSLxTRC macro, where x represents the CSL address space as shown in the following table.

Table 6. CSL address space trace record mapping macros
Trace macro name Description
CSLDTRC ODBM trace records
CSLOTRC OM trace records
CSLRTRC RM trace records
CSLSTRC SCI trace records
CSLZTRC CSL trace records common to multiple CSL address spaces

Trace record mapping is based upon the trace subcode, which identifies the category of trace record. One particular trace subcode can apply to many trace codes. Each trace record mapping also includes a pictorial representation in a comment block. Use the trace subcode to locate the trace record mapping in the CSLxTRC macro. Some trace codes are unique to a particular CSL address space, others are common to more than one CSL address space.

The CSLxCODE macro includes 2-byte module identifier codes that are used in trace records and messages when it is necessary to identify a CSL module. The module identifier represents the module that wrote the trace record. Module identifier codes are defined as follows:

CSL address spaces
X'0001'-X'6FFF'
CSLZ modules
X'7000'-X'77FF'
BPE modules
X'7800'-X'7FFF'
Not used
X'8000'
Reserved for BPE tracing
X'8001'-X'FFFF'

CSL request trace records sometimes contain a return code, reason code, and completion code from the request. CSL request return codes, reason codes, and completion codes are mapped by macros following the naming convention CSLxRR, where x represents the CSL address space as shown in the following table. These macros are in the IMS.SDFSMAC data set.

Table 7. CSL request return, reason, and completion codes mapping macros
Macro Description
CSLDRR ODBM return codes, reason codes, and completion codes
CSLORR OM return codes, reason codes, and completion codes
CSLRRR RM return codes, reason codes, and completion codes
CSLSRR SCI return codes, reason codes, and completion codes

CSL trace records in formatted dumps contain eye catchers that identify the trace code, the trace subcode, and the module that wrote the trace record. The EPL and INTF trace tables in SCI contain parameter lists, tables, and other data areas that cross the SCI interface. These data areas are formatted in the SCI dump.