Restrictions and considerations by database organization types

Certain restrictions and considerations apply when you run the HD Pointer Checker utility for specific database organization types.

SHISAM and HISAM databases

  • HD Pointer Checker supports SHISAM databases. Because SHISAM databases have no direct pointers, no pointer checking is done. However, several reports presenting various segment information about SHISAM databases are generated.
  • HD Pointer Checker supports HISAM databases. However, the direct-address pointers in the HISAM databases can be validated correctly only after an initial load or a reorganization. DL/I does not set a delete flag in the logical record in a HISAM overflow data set when the record is deleted. Therefore, the deleted logical record remains in the HISAM database. Alternatively, DL/I deletes the direct-address pointer that points the logical record. Therefore, in such a case, there is no direct-address pointer pointing to the logical record. HD Pointer Checker cannot determine correctly, such status caused by the segment deletion or some kind of pointer error. HD Pointer Checker determines the status as correct. When some logical records in the overflow data set of HISAM database are not pointed to by any of the direct address pointers, HD Pointer Checker writes message FABP0973W or FABP1992W to the report and returns RC=00.

HDAM, HIDAM, PHDAM, and PHIDAM databases whose size is greater than 4 GB

For an HDAM or an HIDAM database that uses OSAM access method, a database data set with an even-numbered block size might exceed 4 GB. For a PHDAM or a PHIDAM database that uses OSAM access method, the data set size of the database that is registered as DSORG=OSAM8G in RECON data sets might also exceed 4 GB. In such a case, the following rule applies:

  • The highest bit (bit 33) of an RBA with a capacity of 8 GB must be moved to the lowest unused bit position (bit 1). You should use the 32-bit value to show the original RBA.
    For example, to specify the hexadecimal value x'10000F000' as a 32-bit odd value, specify as follows:
      BLOCKDUMP=(0000F001,001)

    Do not use a 32-bit odd value to specify an original odd RBA. An odd value is interpreted by the HD Pointer Checker utility as an RBA beyond 4 GB.

HALDB databases

  • If an online reorganization has not completed, there will be a HALDB in two active sets of data sets (both A-J&X and M-V&Y), and HD Pointer Checker cannot be run for those HALDBs.
  • Pointer checking is not performed for HALDB partitions that are marked as disabled in the RECON data sets.

Secondary index databases

When checking the suppressed index pointer segment, the following restrictions apply:

  • The suppressed segment is checked during the scan of the INDEXed database.
  • When a /CK field is specified on the SUBSEQ operand of the XDFLD statement, HD Pointer Checker cannot get the field data. If the Secondary Index Database Maintenance Exit routine refers to a /CK field, the result is unpredictable.