Trace record examples for BPE-based DBRC

These examples show formatted BPE-based DBRC trace record examples.

DBRC I/O services trace

In the following example, the trace code is in the first byte (X'72'), which the DSPBDTR macro documents as I/O services. The eye catcher is IOSRV. The trace subcode is in the second byte (X'02'), which the DSPBDTR macro documents as RECON data set true open start. The eye catcher is True OPEN start. The 8-byte identifier in the right eye catcher for corresponding subcode is in word 1 - 2.

Important: An asterisk at the beginning of a subcode eye catcher indicates an error.
Code   Subcode               Trace Entry                                                               Trace Data
-----------------------------------------------------------------------------------------------------------------  
IOSRV: True OPEN start       72020000 D6D7C5D5 C5D9F140 C9D4E2F1  0BD61000 00000000 00000000 00000000  OPENER1
                             00000000 00000000 00000000 00000000  00000000 00000000 00000000 00000000         
                             00000000 00000000 00000000 00000000  00000000 00000000 00000000 00000000         
                             00000000 00000000 00000000 00000000  00000000 00000000 C1C4D082 D9525260     
  

When the identifier is DSPURI00, the block-area pointer eye catcher follows the eye catcher for subcode in the left eye catcher. In the following example, the trace subcode is in the second byte (X'01'), which the DSPBDTR macro documents as "Enter DSPURI00." The eye catcher is Enter URI00. The block-area pointer eye catcher that follows is MODIRCAR. The 16-byte entry message for DSPURI00 is in word 12 - 15. The eye catcher is LOGICAL CLOSE.

Code   Subcode               Trace Entry                                                               Trace Data
-----------------------------------------------------------------------------------------------------------------  
IOSRV: Enter URI00 MODIRCAR  72010000 C4E2D7E4 D9C9F0F0 C9D4E2F1  0BDC0000 00000000 00000000 00000000   LOGICAL CLOSE
                             D4D6C4C9 D9C3C1D9 F1F201D8 C3082000  40D3D6C7 C9C3C1D3 40C3D3D6 E2C54040                
                             40404040 40404040 40404040 40404040  40404040 40404040 00000000 00000000                
                             00000000 00000000 00000000 00000000  00000000 00000000 C248B54C F0FE19A0         

DBRC module flow trace

The following example shows a DBRC module flow trace.

Important: An asterisk at the beginning of a subcode eye catcher indicates an error.
Module A calls module B: The following two-line trace entry is produced when module A calls module B. A two-line trace entry is produced when module B calls DSPSTGET to obtain initial workspace storage after being called by module A. The trace code is in the first byte (X'77'), which the DSPBDTR macro documents as "Request processing." The eye catcher is RQST. The trace subcode is in the second byte (X'1A'), which the DSPBDTR macro documents as Process Flow. The eye catcher is Module entry. The 8-byte identifier in the right eye catcher for the corresponding subcode is in word 1 - 2. Word 3 represents the client ID, which is IMS1 in this example.
Code   Subcode              Trace Entry                                                                  Trace Data
-----------------------------------------------------------------------------------------------------------------  
RQST : Module entry         771A0000 606EF1C4 E2E2F0F1 C9D4E2F1 8BD8C38C 0BDF5258 0BE97370 0BE97518      ->1DSS01
                            00000000 00000000 00000000 00000000 00000000 00000000 C3D772C3 AC3CE200 
  
words 1-2     Identifier that consists of:
              - An arrow (->) indicating that the module is being called.
              - The nesting level of module B. Nesting levels are shown in
                one or two decimal digits, up to 99 (nesting level 0 is DSPUIN00).
              - Last five characters of the module name being called. 
word 3        Client ID. 
word 4        Offset in module A of call to module B.
word 5        Entry point address of module B.
word 6        Save area address of the calling module (A).
word 7        Beginning address of the temporary storage obtained for module B
              (save area address of module B).
words 14-15   Trace time stamp.
 
       
Module B calls module A: The following two-line trace entry is produced when module B calls DSPSTFRE to release all of its temporary storage before returning to module A. The trace code is in the first byte (X'77'), which the DSPBDTR macro documents as Request processing. The eye catcher is RQST. The trace subcode is in the second byte (X'1B'), which the DSPBDTR macro documents as Process Flow. The eye catcher is Module exit. The 8-byte identifier in the right eye catcher for corresponding subcode is in word 1 - 2.
Code   Subcode              Trace Entry                                                                Trace Data
-----------------------------------------------------------------------------------------------------------------  
RQST : Module exit          771B0000 F04C60C4 E2E2F0F1 C9D4E2F1 0BD8C38C 00000236 0BE97370 0BE97518    <-DSS01
                            00000000 00000000 00000000 00000000 00000000 00000000 C3D772D5 50228DC0 
  
words 1-2     Identifier that consists of:
              - An arrow (->) indicating that the module is returning.
              - The nesting level of module A. Nesting levels are shown in
                one or two decimal digits, up to 99 (nesting level 0 is DSPUIN00).
              - Last five characters of the module name returning. 
word 3        Client ID. 
word 4        Offset in module A to which module B returns.
word 5        Offset in module B where it returns to module A.
word 6        Save area address of module A that called module B.
word 7        Beginning address of the temporary storage being released for module B
              by module DSPSTFRE.
words 14-15   Trace time stamp.
 
       
DSPSTACK trace entry: The following example shows a two-line trace entry that is produced when module B issues macro DSPGFSTK, which calls DSPSTGET to obtain additional temporary storage. The trace code is in the first byte (X'78'), which the DSPBDTR macro documents as System related. The eye catcher is SYS. The trace subcode is in the second byte (X'15'), which the DSPBDTR macro documents as Additional work space. The eye catcher is DBRC stack rqst. The 8-byte identifier in the right eye catcher for corresponding subcode is in word 1 - 2.
Code   Subcode              Trace Entry                                                               Trace Data
-----------------------------------------------------------------------------------------------------------------  
SYS : DBRC stack rqst       78150000 C4E2D7E2 E3C1C3D2 C9D4E2F1 8BE0B9AE 0BE0B710 0BF4D7C8 0BE98910   DSPSTACK
                            00000000 00000000 00000000 00000000 00000000 00000000 C3D772D5 2A1BA7C0 
  
words 1-2     Identifier DSPSTACK.
word 3        Client ID. 
word 4        Return point address in the module B to which DSPSTGET returns after
              acquiring additional temporary storage for the module.
word 5        Entry point address of module B.
word 6        Save area address of module B.
word 7        Beginning address of the additional temporary storage obtained
              for module B.
words 14-15   Trace time stamp.
 
       

DBRC request user exit trace

The following example shows a trace taken before the DBRC request user exit routine is called. The trace subcode is in the second byte of the trace (X'1C'). which the DSPBDTR macro documents as "Before calling user exit," as indicated in the left eye catcher field. The "BRQ0" that follows refers to the module name (DSPBRQ00) that issues the trace call. The 1-byte BRQX_Flags field is located in the first byte of the second word of the trace. The eye catcher field on the right contains "DBRC IS BYPASSED," corresponding to the flag code (X'80' in this trace). The "END" that follows is the user exit function (BRQX_Func), which is located in the first byte of the first word (X'02' in this trace).

Important: An asterisk at the beginning of a subcode eye catcher indicates an error.
Code   Subcode               Trace Entry                                                               Trace Data
-----------------------------------------------------------------------------------------------------------------  
RQST:  Before exit call BRQ0 771C0000 02030010 80000000 C9D4E2F1  0A8B0558 07142002 00001000 0C083000   DBRC IS BYPASSED END
                             00000000 0A8FDE40 0A8B056C 0A91A798  00000008 C4C6E2C2 D9D3E2C2 00000100
                             07142002 00001000 00000000 00000000  00000000 00000000 00000000 00000000
                             00C57B78 00000001 0C083000 00000000  00000000 00000000 C4BC1081 98B16660

DBRC group services trace

DBRC group services generates trace entries of two types: group services request or group services send. This type of entry means that global services is requested to do something by either its own DBRC or one of the other DBRC instances in the same IMSplex. The 8-byte identifier in the right eye catcher for corresponding request type is in word 5-6, which represents the DBRC job name.

Group services request:

The following example shows a group services request entry.

Code   Subcode            Trace Entry                                                               Trace Data  
-----  ----------------   ------------------------------------------------------------------------  ------------
GRPSV:REQ - DBRCUP        73270000 00000058 00800000 12248000  00000000 C4C2D9F8 C3E2C2C2 F4F70038  DBR8CSBB    
                          1197A6B8 C4D5465B BC96000D 00000000  00000000 00000000 C4D5465B C5AFF4C0              

The following tables describes useful fields and their possible values:

Table 1. Word 1 eye catchers for the group services request
Word 1 Eye catcher Request type
X'50' INIT Initialize global services.
X'51' NOTQUIESCE Another DBRC is telling this DBRC that RECON data set access is allowed.
X'52' QUIESCE This DBRC wants exclusive RECON data set access.
X'53' QUACK Another DBRC acknowledges this DBRC's request for exclusive RECON data set access.
X'54' ENDQUIESCE This DBRC releases RECON data sets to other DBRCs again.
X'55' ENDQUACK Another DBRC acknowledges renewed RECON data set access.
X'56' GOTQUIESCE Another DBRC wants exclusive RECON data set access.
X'57' GOTENDQUIES Another DBRC releases its exclusive RECON data set access.
X'58' DBRCUP A new DBRC joined the IMSplex.
X'59' DBRCDOWN A DBRC left the IMSplex.
X'5A' SCIUP Local SCI is active.
X'5B' SCIDOWN Local SCI is down.
X'5C' RCNLOSS This DBRC wants to notify other DBRCs of a RECON loss.
X'5D' RESEND Another DBRC wants this DBRC to resend its last request.
X'5E' GRP2DONE Local processing complete for request types 56 or 57.
X'5F' GOTRCNLOSS RECON loss notification from another DBRC.
X'60' ID Another DBRC informs this DBRC of its SSID.
Table 2. Words 4 -10 request types for the group services request
Word Request type
Word 4 Message sequence number.
  Meaningful only for requests from other DBRCs (request types 51, 53, 55, 56, 5D, 5F, 60). Each DBRC assigns a sequence number to every new request that it sends. If a request is resent, it contains the same sequence number that was originally assigned to it.
Words 5-6 For requests from other DBRCs, the job name of the other DBRC.
Words 7-10 The SCI token associated with the request. Can be used to distinguish between DBRCs if the job name is not unique.
Group services send:

The following example shows a group services send entry. This type of entry means that group services is sending a message to another DBRC.

Code   Subcode               Trace Entry                                                               Trace Data  
-----  ----------------      ------------------------------------------------------------------------  ------------
GRPSV:SEND - NOTQUIESCE      73280000 00000001 00000000 00000002  00000000 00000000 00000000 00000000    
                             00000000 00000000 00000000 00000000  00000000 00000000 C4D5465B C5B11020  

The following list describes useful fields and their possible values:

Table 3. Word 1 eye catchers for the group services request
Word 1 Eye catcher Message type
X'01' NOTQUIESCE RECON access is allowed.
X'02' RCNLOSS RECON loss notification.
X'03' QUIESCE Request for exclusive RECON access.
X'04' QUIESCECLS Request for exclusive RECON access and that the recipient close the RECON data sets.
X'05' QUACK Acknowledge the request for exclusive RECON access.
X'06' ENDQUIESCE Release exclusive RECON access by this DBRC.
X'07' ENDQUACK Acknowledge release of exclusive RECON access.
X'08' RESEND Request resend of another DBRC's last request.
X'09' ID Send SSID to another DBRC.
Table 4. Words 3 and 4 message types for the group services request
Word Request type
Word 3 Message sequence number.
Word 4 If the message is a response to a message from another DBRC, this is the sequence number of the other DBRC's message.