X'CC' trace entry
The X'CC' trace entry is shown.
The X'CC' trace entry
TRACE ID = X'CC'
word 0 — byte 1 - X'CC' - Lock request handler
(DFSLRH00) entry
byte 2 - PST number (see note 1 below)
bytes 3-4 - Trace sequence number
word 1 - Block number on RBA (see note 2 below)
word 2 - PSTTOKEN - The object of the request
word 3 - PSTLRPRM - These bytes are described in the
PSTLRPRM chart below. The first byte equates to byte
0, the second to byte 1, and so on (see note 3 below).
word 4 - bytes 1-2 - Subcode from lock manager (IRLM) or PRMFBK
feedback for DFSFXC10.
byte 3 - Register 15 return code
byte 4 - Return code from lock manager or DFSFXC10
(Use DFSFXC10 return codes from the X'CA'
trace entry, note 6) (See note 5 below)
word 5 - byte 1 - PSTLRSUB-DFSLRH00 abend subcode (see note 7 below)
bytes 2-4 - PSTABTRM - System abend code (see note 6 below)
word 6 - PSTDSGA - Address of the DSG used by this PST
word 7 - byte 1 - Return register
bytes 2-4 - Address within module where DFSLRH00 was called
Notes:
- The PST number for the task (PST).
- The RBA or RBN of the resource for which a request was issued in a X'CA' trace entry. When some of the problem types occur, you can find the same field or the beginning RBA of the block in the traces for a different PST number.
- Shows what the request was.
- For PI, these 2 bytes are in the PRM DSECT at X'0C' and X'0D'.
- For PI, follow the above. The DFSFXC10 return code is usually also placed in the register 15 return code field.
- A key field when DFSLRH00 issues an abend (such as U0855, U03301, U03302). The abend is in hexadecimal, not in decimal (for example, 855= X'0357', 3302= X'0CE6'). Ignore the field if an abend was not issued from DFSLRH00.
- For abends issued by DFSLRH00, this field contains the Lock Request Handler abend subcode.
You might need the X'CC' trace entry for several problem types including:
- Task was allowed to process even though a wait was requested.
- DFSLRH00 abends (such as U0855, U03302).
- Request not satisfied. These problems might indicate an internal IMS error.
The following table shows the PSTLRPRM chart (bytes 0 through 3).
| Byte 0 (hex) | Meaning |
|---|---|
| 11 | Get local segment lock |
| 12 | Get local data set busy lock |
| 13 | Get local buffer update lock |
| 14 | Get local Q command lock |
| 15 | Get local catalog lock |
| 22 | Get global buffer update lock |
| 23 | Get global data set busy lock |
| 24 | Get global data set extend lock |
| 25 | Get global data set reference lock |
| 26 | Get global command lock |
| 27 | Get global command lock (CLB) |
| 30 | Get local and global root locks |
| 31 | Get local segment and global buffer update locks |
| 32 | Get local-global data set busy locks |
| 33 | Get local-global buffer update locks |
| 34 | Get local Q command and global buffer update locks |
| 37 | Get global catalog lock |
| 41 | Release local segment lock |
| 42 | Release local data set busy lock |
| 43 | Release local buffer update lock |
| 44 | Release local Q command lock |
| 45 | Release local catalog lock |
| 52 | Release global buffer update lock |
| 53 | Release global data set busy lock |
| 54 | Release global data set extend lock |
| 55 | Release global data set reference lock |
| 56 | Release global command lock |
| 57 | Release global command lock (CLB) |
| 60 | Release local and global root locks |
| 61 | Release local and global data set busy locks |
| 62 | Release local and global buffer update locks |
| 63 | Release local segment and global buffer update locks |
| 67 | Release global catalog lock |
| 70 | Test local lock share or update state |
| 71 | Test global lock share or update state |
| 72 | Test local and global lock share or update |
| 73 | Test feedback for local lock |
| 74 | Test feedback for global lock |
| 75 | Test feedback for local and global locks |
| 80 | LRHGIRDX new root, LRHRRIDX old root |
| 81 | Release alternate local and global root locks |
| 82 | Get local segment and local and global buffer update locks |
| 83 | Release all subsystem global busy locks |
| 84 | Release all subsystem locks |
| 86 | Transfer locks |
| 87 | Change locks into retained status |
| 90 | Get Fast Path lock |
| 91 | Release Fast Path lock |
| 92 | Change ownership of Fast Path lock |
| 93 | Force known locks for Fast Path |
| 94 | Change locks to retain locks for Fast Path |
| 95 | Change ownership of Fast Path UOW lock from release lock ITASK to PST dependent region (HSSP only) |
| 96 | Change locks to retain locks for DL/I |
| 97 | Invalid call if function is equal to or greater than 97 |
| Byte 1 (hex) | Meaning |
| 80 | MODE=COND |
| 40 | MODE=UNCOND |
| 10 | Owning WU given on RRIDX |
| 00 | Mode not applicable |
| Byte 2(Hex) | Meaning |
| 01 | STATE=READ |
| 02 | STATE=SHARE |
| 03 | STATE=UPDATE |
| 04 | STATE=EXCL |
| F0 | STATE PRESET (Fast Path) |
| 00 | STATE not applicable |
| Byte 3 (hex) | Meaning |
| 80 | CLB call if LRHPRMFL=X'80' |
| C0 | Fast Path request |
| 68 | Root lock request |
| 40 | 'Single' request |
| 20 | 'Local' request |
| 10 | 'Get' request |
| 08 | 'P-Lock' request |
| 07 | 'Combined' request if <= X'07' |
| 01 | LRHTTLKX, LRHTIBDX |
| 02 | LRHGRIDU, LRHRRIDW |
| 03 | LRHGSEGX, LRHRSEGX |
| 04 | LRHGBIDX, -RBIDX, -GBIDA |
| 05 | LRHGZIDX, LRHRZIDX |
| 06 | LRHGQCMX |
| 00 | LRHRZIDA, LRHRALLX |