Running the ILK Repair utility

Run the ILK Repair utility to repair corrupted HALDB partition reorganization numbers, duplicate ILKs, and potentially duplicate ILKs in HALDB databases. The utility also repairs such errors in the logically related databases and PSINDEX databases at the same time.

Before you begin

This utility requires the repair information records that are created by the HD Pointer Checker utility of IMS HP Pointer Checker. Complete the instructions in the topic "Repairing HALDB partition reorganization numbers and duplicate ILKs" in the IMS High Performance Pointer Checker User's Guide.

Procedure

  1. Specify the JOB and the EXEC statements.
    Define the JOB and the EXEC statements in the utility JCL. Code the EXEC statement as follows:
    //         EXEC PGM=IKJEFT1B,DYNAMNBR=25
  2. Specify the DD statements.

    Define the DD statements in the utility JCL. Use the following JCL example to code the JCL statements:

    //DBRFZAP JOB (installation accounting information)
    //*
    //BATCHTSO EXEC PGM=IKJEFT1B,DYNAMNBR=25
    //*
    //SYSEXEC DD DISP=SHR,DSN=smphlq.SFABCLIB
    //*
    //ISPPLIB DD DISP=SHR,DSN=ISP.SISPPENU
    //ISPMLIB DD DISP=SHR,DSN=ISP.SISPMENU
    //ISPSLIB DD DISP=SHR,DSN=ISF.SISFSLIB
    //ISPTLIB DD DISP=SHR,DSN=ISP.SISPTENU
    //ISPLOG DD SYSOUT=*,DCB=(LRECL=125,BLKSIZE=129,RECFM=VA)
    //ISPPROF DD DISP=(NEW,PASS),DSN=&TEMP,
    // UNIT=SYSALLDA,SPACE=(CYL,(3,10,15)),
    // DCB=(LRECL=80,BLKSIZE=3120,RECFM=FB)
    //*
    //SYSTSPRT DD SYSOUT=*
    //SYSPRINT DD SYSOUT=*
    //*
    //SYSTSIN DD *
      PROFILE PREFIX(userid)
      ISPSTART CMD(FABZREPR smphlq workhlq workmlq debug)
    /*
    //FABZIN DD DISP=SHR,DSN=HPS.HDPC.FABPILK
    The following DD statements are supported:
    SYSEXEC
    Required. Defines the REXX procedure library of IMS Database Repair Facility (SFABCLIB).
    SYSTSIN DD
    Required. Defines the input data set that contains the PROFILE and ISPSTART commands and their parameters. The PROFILE command is optional but the ISPSTART command is required. The PROFILE command must precede the ISPSTART command.
    //SYSTSIN  DD   *
     PROFILE PREFIX(userid)
     ISPSTART CMD(FABZREPR smphlq workhlq workmlq debug)
    /*
    userid
    Optional. Specifies the prefix portion for the data set names that are used by ISPF. If the userid is defined to RACF®, instead of specifying the PROFILE PREFIX(userid) statement, you can specify the USER=userid parameter on the JOB statement.
    smphlq
    Required. Specifies the high-level qualifier of the IMS Database Repair Facility load module library (SFABLMD0).
    workhlq
    Required. Specifies the high-level qualifier for the work data sets that are used by IMS Database Repair Facility.
    workmlq
    Required. Specifies the middle-level qualifier for the work data sets that are used by IMS Database Repair Facility.
    debug
    Optional. Code this parameter only for debugging purposes.

    To report problems to IBM® for diagnosis, set this parameter to 1 to turn on the debug trace, rerun the failing job, and send the job log to IBM.

    FABZIN
    Required. Specifies the input data set, which is the FABPILK data set that is created by the HD Pointer Checker utility.
    SYSTSPRT DD
    Required. Specifies the output data set for the Control Statements and Messages report. This report contains the result of the job, and when OSAM data sets are processed, it also contains the process logs, and messages. This data set contains 133-byte fixed-length records. BLKSIZE, if coded, must be a multiple of 133. However, it is recommended that you use:
    //SYSTSPRT DD SYSOUT=A
    SYSPRINT
    Required. Specifies the output data set for the Control Statements and Messages report. This report contains the process logs and messages for VSAM data sets. This data set contains 133-byte fixed-length records. BLKSIZE, if coded, must be a multiple of 133. However, it is recommended that you use:
    //SYSPRINT DD SYSOUT=A
    ISPPLIB, ISPMLIB, ISPSLIB, ISPTLIB, ISPPROF, ISPLOG DD
    Except for the ISPLOG DD statement, all these DD statements are required. These DD statements specify the ISPF data sets. For more information about these DD statements, see the z/OS® ISPF User’s Guide, Volume 1.
  3. Submit the job.
  4. Ensure that the job completed successfully by locating the FABZ800I message in the Control Statements and Messages report in the SYSTSPRT data set. This message indicates the successful completion of the job.
  5. In the Control Statements and Messages report in the SYSTSPRT data set and the SYSPRINT data set, locate the following indicator:
    * DBNAME: dbdname  PARTNAME: partname DSG:  A
    * DS NAME: dataset_name
    ***********************************************
    * THE ILDS MUST BE REBUILT FOR THIS PARTITION *
    ***********************************************

    This indicator notifies you the HALDB partition whose indirect list data sets (ILDSs) must be rebuilt. Locate all the indicators in the reports and make a list of the partitions whose ILDSs must be rebuilt. You will use this list in the subsequent repair process.

What to do next

Continue with the repair procedure described in the topic "Repairing HALDB partition reorganization numbers and duplicate ILKs" in the IMS High Performance Pointer Checker User's Guide.