Examples for enabling the HD Pointer Checker HASH Check option

Use the following examples to enable the HD Pointer Checker HASH Check option for the Image Copy function.

Example 1: Creating image copies—single-step HASH Check option enabled

The following figure shows a JCL example for an Image Copy job for HDAM databases. The HASH Check option is enabled. This job creates image copies of four database data sets, and does HASH Check, in a single step.

Figure 1. Example of Image Copy JCL—single-step HASH Check
//DBDUMP    JOB
//DBDUMP    EXEC FABPICHE
//HDAMDS1   DD DISP=OLD,DSN=HD00180.HDAMDS1
//HDAMDS2   DD DISP=OLD,DSN=HD00180.HDAMDS2
//DBOUT1    DD DISP=(NEW,CATLG,DELETE),SPACE=(TRK,(5,5)),
//    UNIT=SYSDA,VOL=SER=ICVOL1,
//            DSN=HD00180.ICDS1
//DBOUT2    DD DISP=(NEW,CATLG,DELETE),SPACE=(TRK,(5,5)),
//    UNIT=SYSDA,VOL=SER=ICVOL1,
//            DSN=HD00180.ICDS2
//ICEIN     DD *
  GLOBAL UNIT=SYSDA,VOLSER=DBVOL1,DBRC=N,HDPC=Y,
     DBDALLOC=N,
     ICCAT=Y
  IC DBD=HDAMDB1,ICOUT=DBOUT1
  IC DBD=HDAMDB2,ICOUT=DBOUT2
/*

Example 2: Creating image copies—multiple-step HASH Check in a single job

The following figure is a JCL example for DBDEFCTL allocation job.

Figure 2. Example JCL to allocate DBDEFCTL
//ALLOC    JOB
//ALLOC    EXEC PGM=IDCAMS,DYNAMNBR=10
//SYSPRINT DD SYSOUT=*
//SYSIN    DD *
 DELETE  (SAMPLE.DBDEFCTL) NONVSAM
 SET MAXCC = 0
 ALLOCATE DSNAME('SAMPLE.DBDEFCTL') -
          NEW                       -
          UNIT(SYSDA)               -
          VOL(HPSVOL)               -
          SPACE(10,10) CYLINDER DIR(50)
/*

The following figure is a JCL example for the DBD Analysis program. The HIDAM database HI00180 has three data set groups, whose DD names are DSG001, DSG002, and DSG003. IX00180 is the HIDAM primary index.

Figure 3. Example JCL for DBD Analysis program
//DBDANAL  JOB
//DBDANAL  EXEC FABPDA,
//              PSB='PSBL0180',
//              DBDEFC='SAMPLE.DBDEFCTL'
//PROCCTL  DD *
  PROC TYPE=ALL,HASH=YES
  DATABASE DB=HI00180,DD=DSG001
  DATABASE DB=HI00180,DD=DSG002
  DATABASE DB=HI00180,DD=DSG003
  DATABASE DB=IX00180,DD=PINDEX1,PRIMEDB=HI00180
/*

The following figure is a JCL example for an Image Copy job of IMS HP Image Copy with the HASH Check option enabled for a HIDAM database and the primary index. This job takes the image copies of four database data sets in a single job. The HASH records of the four database data sets are combined into one HASH record data set.

Figure 4. Example Image Copy JCL (single job)
//DBDUMP   JOB
//DBDUMP   EXEC FABJEIC,
//              DBDEFC='SAMPLE.DBDEFCTL',
//              SORTEX='SAMPLE.SORTEX'
//DSG001   DD DISP=OLD,DSN=HI00180.DSG001
//DSG002   DD DISP=OLD,DSN=HI00180.DSG002
//DSG003   DD DISP=OLD,DSN=HI00180.DSG003
//PINDEX1  DD DISP=OLD,DSN=IX00180.PINDEX1
//DBAOUT1  DD DISP=(NEW,CATLG,DELETE),SPACE=(TRK,(5,5)),
//            UNIT=SYSDA,VOL=SER=ICVOL1,
//            DSN=HI00180.DSG001.ICDS1
//DBAOUT2  DD DISP=(NEW,CATLG,DELETE),SPACE=(TRK,(5,5)),
//            UNIT=SYSDA,VOL=SER=ICVOL1,
//            DSN=HI00180.DSG001.ICDS2
//DBAOUT3  DD DISP=(NEW,CATLG,DELETE),SPACE=(TRK,(5,5)),
//            UNIT=SYSDA,VOL=SER=ICVOL1,
//            DSN=HI00180.DSG001.ICDS3
//DBAOUTX  DD DISP=(NEW,CATLG,DELETE),SPACE=(TRK,(5,5)),
//            UNIT=SYSDA,VOL=SER=ICVOL1,
//            DSN=HI00180.DSG001.ICDSX
//* +----1----+----2----+----3----+----4----+----5----+----6----+----7---
//SYSIN     DD *
D1 HI00180  DSG001   DBAOUT1          Y        DUMP SINGLE DS WITH COMP
D1 HI00180  DSG002   DBAOUT2          Y        DUMP SINGLE DS WITH COMP
D1 HI00180  DSG003   DBAOUT3          Y        DUMP SINGLE DS WITH COMP
D1 IX00180  PINDEX1  DBAOUTX          Y        DUMP SINGLE DS WITH COMP
/*

The following figure is a JCL example for the HASH Evaluation program for a HIDAM database and the primary index.

Figure 5. Example of HASH Evaluation program JCL
//HASHEVEL JOB
//*
//HASHEVAL EXEC FABPHE,
//              DBDEFC='SAMPLE.DBDEFCTL',
//              SORTEX='SAMPLE.SORTEX'

After you complete the HASH evaluation, delete the SORTEX data set.

Example 3: Creating image copies—multiple-step HASH Check in multiple job steps

The following figure is a JCL example for multiple Image Copy jobs with the HASH Check option enabled for a HIDAM database and the primary index used in Example 2: Creating image copies—multiple-step HASH Check in a single job. The same DBD Analysis program JCL can be used for this case. You can use the already created DBDEFCTL data set. The image copies of four database data sets are taken in multiple jobs. The HASH records are written into separate HASH record data sets.

Figure 6. Example of Image Copy JCL (multiple jobs)
//DBDUMP1  JOB
//DBDUMP   EXEC FABPIC,
//              DBDEFC='SAMPLE.DBDEFCTL',
//              SORTEX='SAMPLE.SORTEX1'
//DSG001   DD DISP=OLD,DSN=HI00180.DSG001
//DBAOUT1  DD DISP=(NEW,CATLG,DELETE),SPACE=(TRK,(5,5)),
//            UNIT=SYSDA,VOL=SER=ICVOL1,
//            DSN=HI00180.DSG001.ICDS1
//* +----1----+----2----+----3----+----4----+----5----+----6----+----7---
//SYSIN     DD *
D1 HI00180  DSG001   DBAOUT1          Y        DUMP SINGLE DS WITH COMP
/* 
//DBDUMP2  JOB
//DBDUMP   EXEC FABPIC,
//              DBDEFC='SAMPLE.DBDEFCTL',
//              SORTEX='SAMPLE.SORTEX2'
//DSG002   DD DISP=OLD,DSN=HI00180.DSG002
//DBAOUT2  DD DISP=(NEW,CATLG,DELETE),SPACE=(TRK,(5,5)),
//            UNIT=SYSDA,VOL=SER=ICVOL1,
//            DSN=HI00180.DSG001.ICDS2
//* +----1----+----2----+----3----+----4----+----5----+----6----+----7---
//SYSIN     DD *
D1 HI00180  DSG002   DBAOUT2          Y        DUMP SINGLE DS WITH COMP
/*

//DBDUMP3  JOB
//DBDUMP   EXEC FABPIC,
//              DBDEFC='SAMPLE.DBDEFCTL',
//              SORTEX='SAMPLE.SORTEX3'
//DSG003   DD DISP=OLD,DSN=HI00180.DSG003
//DBAOUT3  DD DISP=(NEW,CATLG,DELETE),SPACE=(TRK,(5,5)),
//            UNIT=SYSDA,VOL=SER=ICVOL1,
//            DSN=HI00180.DSG001.ICDS3
//* +----1----+----2----+----3----+----4----+----5----+----6----+----7---
//SYSIN     DD *
D1 HI00180  DSG003   DBAOUT3          Y        DUMP SINGLE DS WITH COMP
/*

//DBDUMPX  JOB
//DBDUMP   EXEC FABPIC,
//              DBDEFC='SAMPLE.DBDEFCTL',
//              SORTEX='SAMPLE.SORTEXX'
//PINDEX1  DD DISP=OLD,DSN=IX00180.PINDEX1
//DBAOUTX  DD DISP=(NEW,CATLG,DELETE),SPACE=(TRK,(5,5)),
//            UNIT=SYSDA,VOL=SER=ICVOL1,
//            DSN=HI00180.DSG001.ICDSX
//* +----1----+----2----+----3----+----4----+----5----+----6----+----7---
//SYSIN     DD *
D1 IX00180  PINDEX1  DBAOUTX          Y        DUMP SINGLE DS WITH COMP
/* 

The following figure is a JCL example for the HASH Evaluation program for a HIDAM database and the primary index.

Figure 7. Example of HASH Evaluation program JCL with multiple SORTEXs
//HASHEVEL JOB
//*
//HASHEVAL EXEC FABPHE,
//              DBDEFC='SAMPLE.DBDEFCTL'
//HDPCPRO.SORTIN   DD DISP=SHR,DSN=DSN=SAMPLE.SORTEX1
//                 DD DISP=SHR,DSN=DSN=SAMPLE.SORTEX2
//                 DD DISP=SHR,DSN=DSN=SAMPLE.SORTEX3
//                 DD DISP=SHR,DSN=DSN=SAMPLE.SORTEXX

After you complete the HASH evaluation, delete all SORTEX data sets.