DBD Analysis program reference

To enable the Multiple-step HASH Check option, you must prepare a DBDEFCTL data set. To prepare this data set, run the HD Pointer Checker DBD Analysis program on all databases whose pointers you want to validate with the HASH Check option.

This program extracts the database definition information from the PSB and the DBD, and writes it into the DBDEFCTL data set, which is used by the Image Copy function with the HASH Check option and the HASH Evaluation program.

The extracted database information is stored in a single member of the DBDEFCTL data set for each database. PSB information is stored as one member. If you specify the member name with the DBDEFCTL keyword, the control information member is created with that name. If the member name is omitted, member name PROCTL01 is used as the default. Do not use a database name as the control information member name.

If the database structure has been changed, you must run the DBD Analysis program to update the database information for all databases to be checked.

Utility control statements

If you have utility control statements in the PROCCTL data set that work well for a stand-alone HD Pointer Checker HASH Check option job, you can use them for the DBD Analysis program input. No change is required.

If you want to code new utility control statements for your DBD Analysis program job, you can apply the syntax described in the IMS High Performance Pointer Checker User's Guide.

However, the purpose of this program is to generate the DBDEFCTL data set, which is required by the subsequent run of the Image Copy function with the HASH Check option and HASH Evaluation program steps. Thus, the HASH=YES or HASH=FORCE parameter is required. If it is not specified, the DBD Analysis program ends with a return code of 8. If none of the specified databases can be checked with the HASH Check option, the DBD Analysis program also ends.

DBDEFCTL=name
Optional keyword for the PROC statement in the PROCCTL data set. Specify the PDS member name of the control information. The name is 1- to 8-alphanumeric or national characters ($, #, and @). If you do not specify the name, PROCTL01 is used as the default member name.

The following table lists the parameters. The values shown in the right column are always used regardless of the specifications in the control statements.

Table 1. Parameters to specify the control information member name
Parameter Specification
PROC
SEP
OPTION
PTRCHK
YES
PROC
IXKEYCHK SYMIXCHK SYMLPCHK VLSSUMM EPSCHK CHECKREC
OPTION
HOMECHK INCORE KEYSIN ZEROCTR SPIXCHK SPMN
REPORT
DBDIST CHAINDIST DECODEDBD MAPDBD COMPFACT SEGIO
NO
PROC
TYPE
SCAN
PROC
CHECK
(CHK,111111)
PROC
ITKBSRVR ITKBLOAD
*NO
DATABASE
DATASET
REAL
PROC
RETCDDSN USER
DATABASE
SCANGROUP BLOCKDUMP
OPTION
NOCHKP VSAMBF DSSIZE ICUNIT IBUFF
The specification is ignored.

DD statements

To run the DBD Analysis program, supply an EXEC statement and the appropriate DD statements that define the input and output data sets.

The following table summarizes the DD statements for the DBD Analysis program.

Table 2. DBD Analysis program DD statements
DDNAME Use Format Need
STEPLIB Input PDS Optional
DFSRESLB Input PDS Optional
IMS Input PDS Required
IMS2 Input PDS Optional
SYSPRINT Output SYSOUT Optional
SYSUDUMP Output SYSOUT Optional
DFSVSAMP Input LRECL=80 Required
DBDEFCTL Output PDS Required
PRIMAPRT Output LRECL=133 Required
SNAPPIT Output LRECL=133 Optional
PROCCTL Input LRECL=80 Required
RECONx Input KSDS Optional
STEPLIB DD
This statement points to the HD Pointer Checker load module library data sets. Data sets must be in the following order:
//STEPLIB  DD   DISP=SHR,DSN=pgmlib
//         DD   DISP=SHR,DSN=IMS.SDFSRESL 
pgmlib is the name of the library that contains the HD Pointer Checker load modules. IMS.SDFSRESL is the name of the library that contains the IMS nucleus and required action modules.
DFSRESLB DD
This statement points to an authorized library that contains the IMS SVC modules.
IMS DD
This statement defines the library that contains the PSB library and the DBD library. It must contain all DBDs that are referred to by your PSB. If your PSB and DBDs are not in the same library, all appropriate libraries must be concatenated.
IMS2 DD
This statement defines the library that contains the FABPZWTO user exit, the partition selection exit module, or both. The data set must reside on a direct-access volume. It is required if you want to use FABPZWTO, the partition selection exit, or both.
SYSPRINT DD
This statement defines the output messages data set. The data set can reside on a tape, a direct-access volume, or a printer, or it can be routed through the output stream (SYSOUT). SYSPRINT can be blocked but must be a multiple of 121.
SYSUDUMP DD
This statement defines the optional output data set that defines the output from a system ABEND dump routine. It is used only when a dump is required. Although this statement is optional, you should include this data set.
DFSVSAMP DD
This statement describes the data set that contains the buffer information required by the DL/I buffer handler.
DBDEFCTL DD
This statement defines the required output partitioned data set to be used as input to the Image Copy function with the HASH Check option and the HASH Evaluation program. This data set contains database definition information for each database as a PDS member named with each DBD name, as well as the information for the HASH Check option process control. The member name of the control information must be specified with the DBDEFCTL parameter of the utility control statement. Do not specify the DCB information on the DD statement. If specified, it is ignored.

Access to the DBDEFCTL data set by an Image Copy job of IMS HP Image Copy and by a HASH evaluation job is restricted to read-only. This data set is reusable until you change the content.

PRIMAPRT DD
This statement defines the output data set that contains the primary reports. It is required. If BLOCKSIZE is coded on the DD statement, it must be a multiple of 133.
SNAPPIT DD
This statement defines the output data set that contains the internal control blocks, if DIAG=YES is specified. This statement is optional. If BLOCKSIZE is coded on the DD statement, it must be a multiple of 133.
PROCCTL DD
This statement defines the input control statement data set. The data set can reside on a tape or a direct-access volume; or it can be routed through the input steam (DD * or DD DATA).
RECON1 DD
RECON2 DD
RECON3 DD
These statements specify the DBRC RECON data sets. These statements are required if HALDB exists in the databases and the RECON data sets are not allocated dynamically, or if DBRC parameter is Y and the RECON data sets are not allocated dynamically. Do not specify these RECON data set DD statements if you want RECON data sets allocated dynamically using the DFSMDA macro.