Printing long database records

You can use the FABHLDBR utility to print the longest database records of a database or the database records that require a large number of I/Os for their retrieval.

Prerequisite: The input for the FABHLDBR utility is the HSSRLOUT data set, which is created by the Database Tuning Statistics function during an execution of HSSR Engine. To generate the HSSRLOUT data set, see the following topics:

The HSSRLOUT data set contains one record for each database record with the following data:

  • Length of the database record (fullword)
  • The number of database I/Os required to read all database segments of the database record (fullword)
  • Key of the database root segment

For each record in the HSSRLOUT data set, the FABHLDBR utility issues:

  • A GU call in order to retrieve the database root segment
  • GN calls to retrieve dependent segments of the database record (optional)

Each retrieved database segment is printed in a snap-like fashion (the printing of the database segments is not done directly by the FABHLDBR utility, but by the hardcopy trace option). The FABHLDBR utility also provides, in the printed output, the length of each database record (the length includes the length of the segment prefixes) and the number of I/Os required to read all database segments of the database record.

Optionally, you can request on the SYSIN data set that FABHLDBR:

  • Stops processing after retrieving or printing nnnnn database records.
  • Processes only the HSSRLOUT records for the database records that are longer than or equal to mmmmmmm bytes.
  • Processes only the HSSRLOUT records for the database records that require nn or more I/Os.
  • Retrieves or prints only the database root segments.