Unload output format supported by FABHFSU

FABHFSU unloads a database into one of four applicable formats: HS, UL, VB, and VN.

For each format, the output data set must be a sequential data set with RECFM=VB.

Subtopics:

HS format

When the HS format is selected for the unload format, the output data set must be consistent with HSAM requirements. BLKSIZE must be specified on the ddname1 DD statement. If the maximum segment length is even, the minimum BLKSIZE must be equal to the maximum segment length plus 2. If the maximum segment length is odd, the minimum BLKSIZE must be equal to the maximum segment length plus 3. (For more information about the HSAM format, see IMS Database Administration.)

UL format

The UL format is the same as the IMS HD Reorganization Unload format. You can use it to replace the IMS HD Reorganization Unload utility with the faster FABHFSU utility when reorganizing a database. The UL format is acceptable to IMS HD Reorganization Reload utility or a compatible utility. (For more information, see IMS Database Utilities.)

Consideration:
If you create an unload data set by specifying the DECN control statement for a database that contains a compressed segment, the data set is not compatible with the unloaded data set that is created by the IMS HD Reorganization Unload utility. For details, see DEC control statement. You cannot reload such an unloaded data set by using IMS HD Reorganization Reload utility (DFSURGL0), but you can reload it by using IMS High Performance Load (Load utility or PSSR utility) or the IPR Reload utility.

Block size can be specified on the ddname1 DD statement. Minimum BLKSIZE equals the length of the largest segment plus 43 bytes. Maximum BLKSIZE is determined by the output device.

If block size is not specified on the ddname1 DD statement, FABHFSU uses one of the following block sizes:

  • For device type 3380, the default block size is 23 K. If the database contains segments larger than 23 K, the maximum block size, 32 K, is used.
  • For device type 3390, the default block size is 28 K. If the database contains segments larger than 28 K, the maximum block size, 32 K, is used.
  • For device type 9345, the default block size is 22 K. If the database contains segments larger than 22 K, the maximum block size, 32 K, is used.
  • For device types other than the preceding, the default is the maximum device capacity.

If some segments have been dropped, make sure that the resulting database is valid.

VB format

This section describes the VB format, which is a product-sensitive programming interface. See Programming interface information to understand the restrictions associated with this type of material.

Begin product-sensitive programming interface information.

This format is to be used for processing by application programs. When you use the VB Format, a variable-length record is written for each retrieved database segment that contains the following data fields:

  • Segment code
  • Segment level
  • Segment data as returned by the HSSR call and as seen by HSSR application programs
           FORMAT OF VB RECORDS  

STATEMENT            OFFSET    DESCRIPTION
                    DEC  HEX  

RVB      DSECT
RVBLENN  DC   H’0’   0    0    RECORD LENGTH FIELD
RVBZZ    DC   H’0’   2    2    RESERVED FOR MVS
RVBSC    DC   X’00’  4    4    SEGMENT CODE
RVBLEV   DC   X’00’  5    5    SEGMENT LEVEL
RVBDATA  EQU  *      6    6    SEGMENT DATA AS RETURNED
                                 BY HSSR

Block size is specified on the ddname1 DD statement. If the maximum segment length is even, the minimum BLKSIZE must be equal to the maximum segment length plus 10. If the maximum segment length is odd, the minimum BLKSIZE must be equal to the maximum segment length plus 11. If block size is not specified on the ddname1 DD statement, FABHFSU uses one of the following block sizes:

  • For device type 3380, the default block size is 23 K. If the database contains segments larger than 23 K, the maximum block size, 32 K, is used.
  • For device type 3390, the default block size is 28 K. If the database contains segments larger than 28 K, the maximum block size, 32 K, is used.
  • For device type 9345, the default block size is 22 K. If the database contains segments larger than 22 K, the maximum block size, 32 K, is used.
  • For device types other than the preceding, the default is the maximum device capacity.

If some segments have been dropped, make sure that the resulting database is valid.

End product-sensitive programming interface information.

VN format

This section describes the VN format, which is a product-sensitive programming interface. See Programming interface information to understand the restrictions associated with this type of material.

Begin product-sensitive programming interface information.

This format is to be used for processing by application programs.

The VN format has the same format as the VB format, except the VN format also contains the segment name in addition to the segment code.

           FORMAT OF VN RECORDS  

STATEMENT            OFFSET    DESCRIPTION
                    DEC  HEX  

RVN      DSECT
RVNLEN   DC   H’0’   0    0    RECORD LENGTH FIELD
RVNZZ    DC   H’0’   2    2    ZZ   (RESERVED FOR MVS)
RVNSYM   DC   CL8’ ’ 4    4    SEGMENT NAME
RVNSC    DC   X’00’  12   C    SEGMENT CODE
RVNLEV   DC   X’00’  13   D    SEGMENT LEVEL
RVNDATA  EQU  *      14   E    SEGMENT DATA AS RETURNED
                                 BY HSSR

DCB requirements are the same as the requirements for the VB. If the maximum segment length is even, the minimum BLKSIZE must be equal to the maximum segment length plus 18. If the maximum segment length is odd, the minimum BLKSIZE must be equal to the maximum segment length plus 19.

End product-sensitive programming interface information.