Trace Output report with diagnostics information

The following diagnostic information appears on the report whenever you use the DIAGG option in conjunction with the SKERROR option when unloading a corrupted database and a GG or a GX status code is returned.

The diagnostic information that is printed on the Trace Output report varies with the database organization and the type of error detected by HSSR Engine.

Example report: Trace Output report with diagnostics information (CASE 1-A, CASE 1-B, and CASE 2)

The following figures show an example of this report with diagnostics information when the error cases are CASE 1-A, CASE 1-B, and CASE 2.

Figure 1. Trace Output report with diagnostics information (CASE 1-A, CASE 1-B, and CASE 2) (Part 1 of 3)
IMS HIGH PERFORMANCE UNLOAD                                         "TRACE OUTPUT"                                       PAGE:     1
5655-E06                                                   DATE: 06/01/2021  TIME: 18.57.16                         FABH310  - V1.R2


********************* BEGINNING OF GG DIAGNOSIS *******************************

********************* BEGINNING OF GG DIAGNOSIS *******************************

********************* BEGINNING OF GG DIAGNOSIS *******************************

GG STATUS CODE FOR PCB HDAM0010

THE NAME OF THE PREVIOUSLY RETRIEVED SEGMENT IS:ORDER

    THE SNAP OF ITS CONCATENATED KEY FOLLOWS:

  KEY      0006FB64   F0F0F0F0 F0F0F0F9 F0F0                                                      *0000000900                      *

------------------ TYPE OF GG ERROR -------------------------------------------

CASE 1-A: CHILD-POINTER POINTS OUTSIDE OF DATASET

         THE BAD POINTER IS AT THE DECIMAL OFFSET 0006 WITHIN THE PREFIX OF

         THE SEGMENT=ORDER    AND SHOULD POINT TO THE SEGMENT=ORDART

RETRIEVAL OF FOLLOWING SEGMENTS MAY BE SKIPPED:

          ONE ORDART   ,ANY TWIN ON TWIN- OR HIERARCHICAL- CHAIN,

          AND ALL OF THEIR DEPENDENTS

------------------ "HD-FROM INFO" FOLLOWS -------------------------------------

RBA OF SEGMENT-PREFIX CONTAINING THE BAD POINTER AND LOW+HIGH RBA OF ITS CI:

  RBA'S    0000BEDC   00001C10 00001C00 00001FFF                                                  *                                *

THE SEGMENT-PREFIX CONTAINING THE BAD POINTER

  PREFIX   071DF810   0100011C 00470FA3 0000                                                      *                                *

------------------ "HD-TO INFO" FOLLOWS ---------------------------------------

RBA OF POINTER-TARGET FOLLOWS:

  RBA'S    0000BEDC   0FA30000                                                                    *                                *

THE BAD POINTER POINTS OUTSIDE OF THE DATASET

************************ END OF GG DIAGNOSIS **********************************

************************ END OF GG DIAGNOSIS **********************************

************************ END OF GG DIAGNOSIS **********************************

*** DB CALL ***  FUNC=GN   DBD=HDAM0010 LEV=01 STAT=GG PROC=GX   SEGN=ORDER

  KEYFEEDB 0006FB64   F0F0F0F0 F0F0F0F9 F0F0                                                      *0000000900                      *

  IO-AREA
Figure 2. Trace Output report with diagnostics information (CASE 1-A, CASE 1-B, and CASE 2) (Part 2 of 3)
********************* BEGINNING OF GG DIAGNOSIS *******************************
  
********************* BEGINNING OF GG DIAGNOSIS *******************************
  
********************* BEGINNING OF GG DIAGNOSIS *******************************
  
GG STATUS CODE FOR PCB HDAM0010
  
PREVIOUS CALL WAS NOT SUCCESSFUL (OR NO PREVIOUS CALL)
  
------------------ TYPE OF GG ERROR -------------------------------------------
  
CASE 1-B: TWIN-POINTER POINTS OUTSIDE OF DATASET
  
         THE BAD POINTER IS AT THE DECIMAL OFFSET 0002 WITHIN THE PREFIX OF
  
         THE SEGMENT=ORDER    AND SHOULD POINT TO THE SEGMENT=ORDER
  
RETRIEVAL OF FOLLOWING SEGMENTS MAY BE SKIPPED:
  
          ONE ROOT, ANY OTHER ROOT ON SAME RAP CHAIN, AND ALL OF THEIR DEPENDENTS
  
------------------ "HD-FROM INFO" FOLLOWS -------------------------------------
  
RBA OF SEGMENT-PREFIX CONTAINING THE BAD POINTER AND LOW+HIGH RBA OF ITS CI:
  
  RBA'S    0000BEDC   00001C10 00001C00 00001FFF                                                  *                                *
  
THE SEGMENT-PREFIX CONTAINING THE BAD POINTER  
  PREFIX   071DF810   0100011C 00470FA3 0000                                                      *                                *
  
------------------ "HD-TO INFO" FOLLOWS ---------------------------------------
  
RBA OF POINTER-TARGET FOLLOWS:
  
  RBA'S    0000BEDC   011C0047                                                                    *                                *
  
THE BAD POINTER POINTS OUTSIDE OF THE DATASET
  
************************ END OF GG DIAGNOSIS **********************************
  
************************ END OF GG DIAGNOSIS **********************************
  
************************ END OF GG DIAGNOSIS **********************************
  
*** DB CALL ***  FUNC=GN   DBD=HDAM0010 LEV=01 STAT=GG PROC=GX   SEGN=ORDER
  
  KEYFEEDB 0006FB64   F0F0F0F0 F0F0F0F9 F0F0                                                      *0000000900                      *
  
  IO-AREA
  
*** DB CALL ***  FUNC=GN   DBD=HDAM0010 LEV=01 STAT=   PROC=GX   SEGN=ORDER
  
  KEYFEEDB 0006FB64   F0F0F0F0 F0F0F1F6 F0F0                                                      *0000001600                      *
  
  IO-AREA  00105EFF   F0F0F0F0 F0F0F1F6 F0F0D6D9 C4C5D940   C4C5E2C3 D9C9D7E3 C9D6D540 D7D7D7D7   *0000001600ORDER DESCRIPTION PPPP*
           00105F1F   D7D7D7D7 D7D7D740 F9F6F1F2 F3F14040   40404040 40404040 40404040 40404040   *PPPPPPP 961231                  *
           00105F3F   40404040 40404040 40404040 40404040   40404040 40404040 40404040 40404040   *                                *
           00105F5F   40404040 40404040 40404040 40404040   40404040 40404040 40404040 40404040   *                                *
           00105F7F   40404040 40404040 40404040 40404040   40404040 40404040 40404040 40404040   *                                *
           00105F9F   40404040 40404040 40404040 40404040   40404040 40404040 40404040 40404040   *                                *
           00105FBF   40404040 40404040 40404040 40404040   40404040 40404040 40404040 40404040   *                                *
           00105FDF   40404040 40404040 40404040 40404040   40404040 40404040 4040                *                                *
 
  SEG-PREF 07267978   01000000 00000000 2E7C                                                      *                                *
  
Figure 3. Trace Output report with diagnostics information (CASE 1-A, CASE 1-B, and CASE 2) (Part 3 of 3)
********************* BEGINNING OF GG DIAGNOSIS *******************************
  
********************* BEGINNING OF GG DIAGNOSIS *******************************
  
********************* BEGINNING OF GG DIAGNOSIS *******************************
  
GG STATUS CODE FOR PCB HDAM0010
  
THE NAME OF THE PREVIOUSLY RETRIEVED SEGMENT IS: ORDART
  
    THE SNAP OF ITS CONCATENATED KEY FOLLOWS:
  
  KEY      0006FB64   F0F0F0F0 F0F0F1F8 F0F0E3F0 F1F8F0F2   40F0                                  *0000001800T01802 0              *
  
------------------ TYPE OF GG ERROR -------------------------------------------
  
CASE 2: HDAM ROOT-ANCHOR-POINT DOES NOT POINT TO ROOT
  
RETRIEVAL OF FOLLOWING SEGMENTS MAY BE SKIPPED:
  
ONE ROOT, ANY OTHER ROOT ON SAME RAP CHAIN, AND ALL OF THEIR DEPENDENTS
  
------------------ "HD-FROM INFO" FOLLOWS -------------------------------------
  
RBA OF RAP CONTAINING THE BAD POINTER AND LOW+HIGH RBA OF ITS CI:
  
  RBA'S    0000BEDC   00002008 00002000 000023FF                                                  *                                *
  
THE BAD RAP
  
  RAP      071E0008   00002010                                                                    *                                *
  
------------------ "HD-TO INFO" FOLLOWS ---------------------------------------
  
RBA OF POINTER-TARGET AND LOW+HIGH RBA OF ITS CI:
  
  RBA'S    0000BEDC   00002010 00002000 000023FF                                                  *                                *
  
THE TARGET OF THE BAD POINTER FOLLOWS
  
  TARGET   071E0010   0200                                                                        *                                *
  
THE "TO" BUFFER IS THE SAME AS THE "FROM" BUFFER
  
************************ END OF GG DIAGNOSIS **********************************
  
************************ END OF GG DIAGNOSIS **********************************
  
************************ END OF GG DIAGNOSIS **********************************
  
*** DB CALL ***  FUNC=GN   DBD=HDAM0010 LEV=02 STAT=GG PROC=GX   SEGN=ORDART
  
  KEYFEEDB 0006FB64   F0F0F0F0 F0F0F1F8 F0F0E3F0 F1F8F0F2   40F0                                  *0000001800T01802 0              *
  
  IO-AREA
  
*** DB CALL ***  FUNC=GN   DBD=HDAM0010 LEV=01 STAT=   PROC=GX   SEGN=ORDER
  
  KEYFEEDB 0006FB64   F0F0F0F0 F0F0F0F8 F0F0                                                      *0000000800                      *
  
  IO-AREA  001063B9   F0F0F0F0 F0F0F0F8 F0F0D6D9 C4C5D940   C4C5E2C3 D9C9D7E3 C9D6D540 C8C8C8C8   *0000000800ORDER DESCRIPTION HHHH*
           001063D9   C8C8C8C8 C8C8C840 F9F6F1F2 F3F14040   40404040 40404040 40404040 40404040   *HHHHHHH 961231                  *
           001063F9   40404040 40404040 40404040 40404040   40404040 40404040 40404040 40404040   *                                *
           00106419   40404040 40404040 40404040 40404040   40404040 40404040 40404040 40404040   *                                *
           00106439   40404040 40404040 40404040 40404040   40404040 40404040 40404040 40404040   *                                *
           00106459   40404040 40404040 40404040 40404040   40404040 40404040 40404040 40404040   *                                *
           00106479   40404040 40404040 40404040 40404040   40404040 40404040 40404040 40404040   *                                *
           00106499   40404040 40404040 40404040 40404040   40404040 40404040 4040                *                                *
  
  SEG-PREF 071DF184   01000000 00000000 1688                                                      *                                * 

Example report: Trace Output report with diagnostics information (CASE 19-A)

The following figure shows an example of this report with diagnostics information when the error case is CASE 19-A.

Figure 4. Trace Output report with diagnostics information (CASE 19-A)
IMS HIGH PERFORMANCE UNLOAD                                         "TRACE OUTPUT"                                       PAGE:     1
5655-E06                                                   DATE: 06/01/2021  TIME: 12.00.09                         FABH310  - V1.R2


********************* BEGINNING OF GG DIAGNOSIS *******************************

********************* BEGINNING OF GG DIAGNOSIS *******************************

********************* BEGINNING OF GG DIAGNOSIS *******************************

GG STATUS CODE FOR PCB DBHD0010

THE NAME OF THE PREVIOUSLY RETRIEVED SEGMENT IS:SG001LV1

    THE SNAP OF ITS CONCATENATED KEY FOLLOWS:

  KEY      001131E4   F0F2F0F0 F0F0F0F0 F0F1                                                      *0200000001                      *

------------------ TYPE OF GG ERROR -------------------------------------------

CASE 19-A: THE DATABASE POSITION IS UNAVAILABLE

        INFORMATION OF INTERNAL RBA CALL

          STATUS CODE: GG

          THE SNAP OF SSA FOLLOWS:

  SSA-1    0000A238   E2C7F0F0 F1D3E5F1 5CE34D00 0138185D                                         *SG001LV1*T(    )                *

************************ END OF GG DIAGNOSIS **********************************

************************ END OF GG DIAGNOSIS **********************************

************************ END OF GG DIAGNOSIS **********************************

*** DB CALL ***  FUNC=GN   DBD=DBHD0010 LEV=00 STAT=GG PROC=GXOT SEGN=

  KEYFEEDB

  IO-AREA

  SSA-1    07164AEE   E2C7F0F0 F1D3E5F1 40                                                        *SG001LV1                        *

  SSA-2    07164AF7   E2C7F0F0 F4D3E5F2 40                                                        *SG004LV2                        *

Example report: Trace Output report with diagnostics information (CASE 19-B)

The following figure shows an example of this report with diagnostics information when the error case is CASE 19-B.

Figure 5. Trace Output report with diagnostics information (CASE 19-B)
IMS HIGH PERFORMANCE UNLOAD                                         "TRACE OUTPUT"                                       PAGE:     1
5655-E06                                                   DATE: 06/01/2021  TIME: 12.07.42                         FABH310  - V1.R2


********************* BEGINNING OF GG DIAGNOSIS *******************************

********************* BEGINNING OF GG DIAGNOSIS *******************************

********************* BEGINNING OF GG DIAGNOSIS *******************************

GG STATUS CODE FOR PCB DBHI0010

THE NAME OF THE PREVIOUSLY RETRIEVED SEGMENT IS:SG001LV1

    THE SNAP OF ITS CONCATENATED KEY FOLLOWS:

  KEY      0008B244   F1F0F0F0 F0F0F0F0 F0F1                                                      *1000000001                      *

------------------ TYPE OF GG ERROR -------------------------------------------

CASE 19-B: THE DATABASE POSITION IS UNAVAILABLE

        INFORMATION OF DL/I BUFFER HANDLER REQUEST

          PSTRTCDE: 18; PSTFNCTN: F2; DDNAME: DDHX0010

          THE SNAP OF REQUESTED KEY FOLLOWS:

  KEY      00022569   F1F0F0F0 F0F0F0F0 F0F1                                                      *1000000001                      *

************************ END OF GG DIAGNOSIS **********************************

************************ END OF GG DIAGNOSIS **********************************

************************ END OF GG DIAGNOSIS **********************************

*** DB CALL ***  FUNC=GN   DBD=DBHI0010 LEV=00 STAT=GG PROC=GXOT SEGN=

  KEYFEEDB

  IO-AREA

  SSA-1    07125CAE   E2C7F0F0 F1D3E5F1 40                                                        *SG001LV1                        *

  SSA-2    07125CB7   E2C7F0F0 F4D3E5F2 40                                                        *SG004LV2                        *

Example report: Trace Output report with diagnostics information (CASE 20)

The following figure shows an example of this report with diagnostics information when the error case is CASE 20.

Figure 6. Trace Output report with diagnostics information (CASE 20)
IMS HIGH PERFORMANCE UNLOAD                                         "TRACE OUTPUT"                                       PAGE:     1
5655-E06                                                   DATE: 06/01/2021  TIME: 12.11.14                         FABH310  - V1.R2


********************* BEGINNING OF GG DIAGNOSIS *******************************

********************* BEGINNING OF GG DIAGNOSIS *******************************

********************* BEGINNING OF GG DIAGNOSIS *******************************

GG STATUS CODE FOR PCB DBHD0160

THE NAME OF THE PREVIOUSLY RETRIEVED SEGMENT IS:SG005LV3

    THE SNAP OF ITS CONCATENATED KEY FOLLOWS:

  KEY      000721E4   F0F4F0F0 F0F0F0F0 F0F1F0F4 F0F3F0F0   F0F0F0F1 F0F4F0F4 F0F0F0F0 F0F1       *040000000104030000010404000001  *

------------------ TYPE OF GG ERROR -------------------------------------------

CASE 20: STATUS CODE=GG RETURNED ON THE INTERNAL DL/I CALL

************************ END OF GG DIAGNOSIS **********************************

************************ END OF GG DIAGNOSIS **********************************

************************ END OF GG DIAGNOSIS **********************************

*** DB CALL ***  FUNC=GN   DBD=DBHD0160 LEV=00 STAT=GG PROC=GXOT SEGN=

  KEYFEEDB

  IO-AREA

  SSA-1    071A7848   E2C7F0F0 F1D3E5F1 40                                                        *SG001LV1                        *

  SSA-2    071A7851   E2C7F0F0 F4D3E5F2 40                                                        *SG004LV2                        *

  SSA-3    071A785A   E2C7F0F0 F5D3E5F3 40                                                        *SG005LV3                        *

Report field descriptions

The following information is provided in the report:

************ BEGINNING OF GG DIAGNOSIS ************
Eye-catcher identifying the beginning of the DIAGG diagnosis. The line is printed three times.
GG STATUS CODE FOR PCB psbname
psbname of PSB containing PCB used; if run in the ULU region, this is the dbdname as specified on the EXEC statement.
THE NAME OF THE PREVIOUSLY RETRIEVED SEGMENT IS: segname
Segment name returned by the previous successful HSSR call.
THE SNAP OF ITS CONCATENATED KEY FOLLOWS:
Concatenated key of the segment. There might be one or more lines each showing up to 32 bytes of data in hexadecimal and EBCDIC format.

The report contains a section that starts with the following line:

--------------- TYPE OF GG ERROR -----------------
The section contains information describing the type of GG error that was detected. The next line, "CASE nn:", identifies a type of GG error.
Pointer or Key Sequence Errors
For a pointer error or a key sequence error, the report tells which kind of pointer or key is incorrect and which type of segments may be skipped by the SKERROR option.

The following is a description of each error case:

CASE 1-A: Incorrect segment prefix pointer other than root twin pointer.
HSSR Engine handles the incorrect pointer as if it contained zero, and continues processing with the next appropriate pointer. In this case, HSSR Engine skips the retrieval of one or more dependent segments of the current database record.

If the incorrect pointer is a physical child first pointer, the following segments are skipped:

  • Child segment
  • All twins on the physical twin chain or on the hierarchical chain of the above child
  • All dependents of the above segments

If the incorrect pointer is a physical twin forward pointer, the following segments are skipped:

  • Twin segment
  • All further twins on the incorrect physical twin forward chain
  • All dependents of the above segments

If the incorrect pointer is a hierarchical forward pointer, the following segments are skipped:

  • All further segments on the incorrect hierarchical twin forward chain
  • All dependents of the above segments
CASE 1-B: Incorrect HDAM root twin pointer.
HSSR Engine handles the incorrect pointer as if it contained zero, and continues processing by skipping to the next HDAM root anchor point (RAP).

In this case, HSSR Engine skips the retrieval of the following database segments:

  • All further roots on the incorrect twin chain (incorrect RAP synonym chain)
  • All dependents of the above roots
CASE 1-C: Incorrect HIDAM root twin pointer.
HSSR Engine attempts to access the HIDAM root segment via the HIDAM index.

If the pointer in the index record is correct, HSSR Engine does not skip the retrieval of any database segments. If the pointer in the index record is also incorrect, HSSR Engine skips to the next record, with the result that one root and all of its dependents are not retrieved.

CASE 2: Incorrect HDAM root anchor pointer.
HSSR Engine handles the incorrect RAP as if it contained zero, and continues processing by skipping to the next RAP.

In this case, HSSR Engine skips the retrieval of:

  • All roots on the incorrect RAP synonym chain
  • All dependents of the above roots
CASE 3: Incorrect HIDAM root index pointer.
HSSR Engine continues processing by accessing the next Index record.

In this case, HSSR Engine skips the retrieval of one root segment and all its dependents.

CASE 4: Incorrect pointer to split data portion of a segment.
HSSR Engine skips the retrieval of the following segments of the current database record:
  • Segment with the incorrect data pointer
  • All further segments on the remainder of a hierarchical forward pointer chain, if the segment is on such a chain
  • All dependents of the above segments
CASE 5: KEYCHECK option detected sequence error.
HSSR Engine uses the same logic as in case 4.

This case includes the sequence error in the sequence key for a virtual logical child when a migration unload is being done. In that case, HSSR Engine skips the retrieval of the following occurrences of the logical child:

  • The occurrence at which the sequence error is detected
  • All further occurrences of the logical child on the remainder of a logical child forward pointer chain
CASE 9: Incorrect value for segment length field.
HSSR Engine skips the retrieval of the following segments of the current database record:
  • Segment with the incorrect segment length field
  • All dependents of the above segments
CASE 10: HISAM segment code is not 01 at beginning of root record.
If error is due to an incorrect pointer used to chain ESDS records of a secondary index database, HSSR Engine resumes its retrieval with the logical next KSDS record; hence the retrieval of one or more database records is skipped.

For other errors, HSSR Engine resumes its retrieval with the next root segment, skipping the retrieval of the remaining segments of the current database record.

CASE 11: HISAM record has incorrect segment code or delete byte.
HSSR Engine uses the same logic as in case 10.
CASE 12: HISAM pointer to overflow record points outside of data set.
HSSR Engine uses the same logic as in case 10.
CASE 13: Key sequence error detected for a segment in an HISAM or secondary index database.
HSSR Engine uses the same logic as in case 10.

For HDAM and HIDAM databases, the report contains a section of information describing the incorrect pointer:

-------------"HD-FROM INFO" FOLLOWS --------------
An eye-catcher identifying the beginning of the "HD-FROM" information:
RBA OF SEGMENT PREFIX CONTAINING THE BAD POINTER AND LOW+HIGH RBA OF ITS CI:
Snap of one area containing three RBAs:
  • RBA of segment prefix (or RBA of the RAP) that contains the incorrect pointer.
  • Beginning RBA and ending RBA of the block or CI that contains the incorrect pointer.
THE SEGMENT PREFIX CONTAINING THE BAD POINTER
Snap of segment prefix that contains the incorrect pointer. This field provides the virtual storage addresses of the data traced on the right. There might be multiple lines, each showing up to 32 bytes of data in hexadecimal and EBCDIC format.
THE SEGMENT BUFFER
Snap of the block, CI, or index record that contains the incorrect pointer. This field provides the virtual storage addresses of the data traced on the right. There might be multiple lines, each showing up to 32 bytes of data in hexadecimal and EBCDIC format.

For HDAM and HIDAM databases, the report contains a section of information describing the portion of the database "pointed to" by the incorrect pointer.

-------------- "HD-TO INFO" FOLLOWS --------------
An eye-catcher identifying the beginning of the "HD-TO" information:
RBA OF POINTER TARGET AND LOW+HIGH RBA OF ITS CI:
Snap of one area containing three RBAs:
  • RBA contained in the incorrect pointer (RBA "pointed to" by the incorrect pointer).
  • Beginning RBA and ending RBA of the block or CI that is "pointed to."
THE TARGET OF THE BAD POINTER FOLLOWS
Snap of the first 2 bytes "pointed to" by the incorrect pointer. If the incorrect pointer does not point outside of the data set, this area is snapped.
THE TARGET BUFFER
Snap of the block or CI "pointed to" by the incorrect pointer. This field provides the virtual storage addresses of the data traced on the right. There might be multiple lines, each showing up to 32 bytes of data in hexadecimal and EBCDIC format.

This snap is only provided if the "TO-" block or CI snapped in the "HD-TO" is not the same as the "FROM-" block or CI snapped in the "HD-FROM INFO". Otherwise, the message THE "TO" BUFFER IS THE SAME AS THE "FROM" BUFFER appears in this area.

For HISAM and secondary index databases, the report contains data on the last KSDS record accessed by HSSR Engine.

---------- HS ISAM/KSDS RECORD FOLLOWS -----------
An eye-catcher identifying the beginning of the HS ISAM/KSDS RECORD. A snap of the last KSDS record accessed by HSSR Engine. This field provides the virtual storage addresses of the data traced on the right. There might be multiple lines, each showing up to 32 bytes of data in hexadecimal and EBCDIC format.

For HISAM and secondary index databases, the report contains information about the current ESDS/KSDS record.

------------ HS CURRENT RECORD FOLLOWS -----------
An eye-catcher identifying the beginning of the HS CURRENT RECORD.
VSAM RBA OF BAD RECORD AND LOW+HIGH RBA.S OF ITS CI FOLLOWS ON SNAPS:
Snap of one area containing three ESDS RBAs or three OSAM RRNs.
  • RBA of the ESDS record
  • Beginning RBA and ending RBA of the CI that contains the record.
SNAP OF BAD SEGMENT CODE/DELETE BYTE AND OF BAD RECORD FOLLOWS:
Snap of the first 2 bytes of the segment prefix and of the current ESDS/KSDS record. This field provides the virtual storage addresses of the data traced on the right. There might be multiple lines, each showing up to 32 bytes of data in hexadecimal and EBCDIC format.
IMS call handler or IMS buffer handler errors
If APISET 3 is specified, and a call to IMS causes an error, one of the following reports is issued. CASE 15 to CASE 18 are deleted.
CASE 19-A: The current database position is not valid.
This might happen if there is something that updates the database concurrently. The error causes the current position to be reset to the beginning. If status code GG or GE is returned in response to the INTERNAL RBA call, the following:
  • status code
  • the SNAP DUMP of SSA specified at the time of RBA call
A sample of this report is provided in Figure 4.
CASE 19-B: The current database position is not valid.
This might happen if there is a something that updates the database concurrently. If an error occurs when a DLI buffer handler is called for a DBDS, the following information is written in the report:
  • DDNAME of DSG
  • the return code from the buffer handler (PSTRTCDE)
  • the function code (PSTFNCTN) sent to the buffer handler
  • the key value (for key request) sent to the buffer handler
A sample of this report is provided in Figure 5.
CASE 20: Status 'GG' is returned when a call is made from an application to IMS.
An error occurred in IMS after a call was made to IMS. The error resets the position of the database to the beginning. HSSR Engine does not generate any error report, because it cannot identify the reason for the error. The PCB information at the call time is reported in the CALL TRACE report that is generated after the DIAGG report. A sample of this report is provided in Figure 6.

The following line indicates the end of a DIAGG output:

*************** END OF GG DIAGNOSIS ***************
The line is printed three times.

After printing a DIAGG output information, the DIAGG option forces a temporary activation of the hardcopy trace option, TRHC. The TRHC option remains in effect until the next database call is completed. The TRHC option enables you to determine whether the next call has been completed successfully, and to see the next retrieved segment. If the TRHC option is active, the Trace Output report contains the following information:

  • Trace of the HSSR call that ended with a GG or a GX status code.
  • Trace of the first successful HSSR call after a GG or a GX status code was returned. This contains the name of the returned segment, a snap of the PCB key feedback area, and a snap of the returned segment.
  • Snaps of the buffer handler calls, if the keyword BUF is specified in the DIAGG statement.
  • Snaps of the control blocks of HSSR Engine, if the keyword CB is specified in the DIAGG statement.