IKYRVSAM

IKYRVSAM contains sample IDCAMS JCL to migrate the PKI Services VSAM data sets to support VSAM record-level sharing (RLS) when you intend to use Parallel Sysplex® support. IKYRVSAM is installed as a member of SYS1.SAMPLIB.

Execute this job after executing the IKYCVSAM job. This job renames the VSAM data sets created by IKYCVSAM and copies their contents to newly allocated RLS data sets.

Note: The following listing might not be identical to the code sample shipped with the product. For the most current sample, see SYS1.SAMPLIB member IKYRVSAM.
//IKYRVSAM JOB <job card parameters>
//*********************************************************************
//*  SAMP:      IKYRVSAM                                              *
//*                                                                   *
//*    Licensed Materials - Property of IBM                           *
//*    5694-A01                                                       *
//*    (C) Copyright IBM Corp. 2002, 2006                             *
//*    Status = HKY7730                                               *
//*                                                                   *
//*********************************************************************
//*                                                                   *
//*  This sample JCL may be used to reallocate the VSAM data sets     *
//*  in a storage class acceptable to VSAM record level sharing (RLS).*
//*  This is a prerequisite to using PKI Services SYSPLEX support.    *
//*                                                                   *
//*********************************************************************
//*                                                                   *
//*  Caution: This is neither a JCL procedure nor a complete job.     *
//*  Before using this job step, you will have to make the following  *
//*  modifications:                                                   *
//*                                                                   *
//*  1) Change the job card to meet your system requirements.         *
//*                                                                   *
//*  2) Change the STORCLAS statements to provide the name of the     *
//*     storage class defined for use with VSAM RLS.                  *
//*                                                                   *
//*  3) This job assumes you are using the default VSAM data set      *
//*     names (all have high level qualifiers "PKISRVD.VSAM"). If     *
//*     you have changed these data set names, you will need to       *
//*     modify the source data set names in the ALTER                 *
//*     statements of the RENAMEDS step. If you are using             *
//*     multiple CA Domains, IBM recommends using the first eight     *
//*     characters of the CA Domain as one of the data set            *
//*     qualifiers.                                                   *
//*                                                                   *
//*  4) This job creates destination data sets with the same default  *
//*     names as the source data sets. (The source data sets are      *
//*     renamed.) If you wish to use different destination data set   *
//*     names, you will need to modify the data set names in all      *
//*     steps except the RENAMEDS step. If you modify these names,    *
//*     be sure to also modify your configuration file                *
//*     appropriately(/etc/pkiserv/pkiserv.conf). If you are using    *
//*     multiple CA Domains, IBM recommends using the first eight     *
//*     characters of the CA Domain as one of the data set            *
//*     qualifiers.                                                   *
//*                                                                   *
//*  5) This job renames the source data sets to begin with high      *
//*     level qualifiers "PKISRVD.OLDVSAM". If you wish to change     *
//*     these names, you will need to do so in the RENAMEDS and       *
//*     and REPROCL steps. If you are using multiple CA Domains,      *
//*     IBM recommends using the first eight characters of the CA     *
//*     Domain as one of the data set qualifiers.                     *
//*                                                                   *
//*  6) If you wish to change either the primary or secondary space   *
//*     allocation sizes for either the OST or ICL datasets from the  *
//*     default value, update the CYL or TRK operands on the          *
//*     DEFINE CLUSTER or DEFINE ALTERNATE INDEX commands.            *
//*                                                                   *
//*  **Note, do not change any of the numeric values other than       *
//*        CYL or TRK                                                 *
//*-------------------------------------------------------------------*
//* Change Activity:                                                  *
//*                                                                   *
//*    $L0=PKIS3   HKY7707 020314 PDJWS1: VSAM RLS                    *
//*    $P1=MG00719 HKY7707 020416 PDJWS1: VSAM RLS 2              @P1A*
//*    $L1=MG01176 HKY7708 020826 PDJWS1: VSAM scaling            @L1A*
//*    $P2=MG01346 HKY7708 021022 PDJWS1: JES3 JCL error          @P2A*
//*    $P3=MG01521 HKY7708 030106 PDBRW1: Incorrect source names  @P3A*
//*    $L2=PKIS7   HKY7730 050228 PDTCG1: Multi-CA Support        @L2A*
//*                                                                   *
//* Change Description:                                               *
//*                                                                   *
//*    C: Removed SPANNED, CISIZE, and FILE(VOLUME) statements    @P1A*
//*    C: Added more alt indexes and changed allocation parms     @L1A*
//*    C: Removed DD statements from BLDINDEX step                @P2A*
//*    C: Correct souce dataset names for ICL alternate indexes   @P3A*
//*    C: Updated prolog with CA Domain information               @L2A*
//*    C: - Updated RENAMEDS step to use PKISRVD.VSAM.OST.AIX.IX      *
//*         dataset name and conditionally handle the former dataset  *
//*         name (PKISRVD.VSAM.AIX.IX).                               *
//*       - Updated DEFALTDX step to use PKISRVD.VSAM.OST.AIX.IX      *
//*         dataset name instead of the former dataset name of        *
//*         PKISRVD.VSAM.AIX.IX.                                      *
//*       - Updated DEFKSDS to have a line continuation character     *
//*         after the CYL parameters.                             @P4A*
//*-------------------------------------------------------------------*
//*
//*-------------------------------------------------------------------*
//* Rename source clusters, alternate indexes and PATH                *
//*-------------------------------------------------------------------*
//RENAMEDS  EXEC PGM=IDCAMS
//SYSPRINT  DD SYSOUT=*
//SYSIN     DD *
    ALTER -
        PKISRVD.VSAM.OST -
        NEWNAME(PKISRVD.OLDVSAM.OST)
    ALTER -
        PKISRVD.VSAM.OST.* -
        NEWNAME(PKISRVD.OLDVSAM.OST.*)
    ALTER -
        PKISRVD.VSAM.OST.AIX.* -
        NEWNAME(PKISRVD.OLDVSAM.OST.AIX.*)
    ALTER -
        PKISRVD.VSAM.ICL -
        NEWNAME(PKISRVD.OLDVSAM.ICL)
    ALTER -
        PKISRVD.VSAM.ICL.* -
        NEWNAME(PKISRVD.OLDVSAM.ICL.*)
    ALTER -
        PKISRVD.VSAM.OST.AIX.IX -
        NEWNAME(PKISRVD.OLDVSAM.OST.AIX.IX)
    IF LASTCC EQ 8 THEN
      DO
        SET MAXCC EQ 0
        ALTER -
            PKISRVD.VSAM.AIX.IX -
            NEWNAME(PKISRVD.OLDVSAM.OST.AIX.IX)
      END
    ALTER -
        PKISRVD.VSAM.OST.STATAIX.* -
        NEWNAME(PKISRVD.OLDVSAM.OST.STATAIX.*)
    ALTER -
        PKISRVD.VSAM.OST.REQAIX.* -
        NEWNAME(PKISRVD.OLDVSAM.OST.REQAIX.*)
    ALTER -
        PKISRVD.VSAM.ICL.STATAIX.* -
        NEWNAME(PKISRVD.OLDVSAM.ICL.STATAIX.*)
    ALTER -
        PKISRVD.VSAM.ICL.REQAIX.* -
        NEWNAME(PKISRVD.OLDVSAM.ICL.REQAIX.*)
/*
//*-------------------------------------------------------------------*
//* Define destination Clusters                                       *
//*-------------------------------------------------------------------*
//DEFKSDS  EXEC PGM=IDCAMS,COND=(8,LE)
//SYSPRINT DD   SYSOUT=*
//SYSIN    DD   *
    DEFINE CLUSTER -
        (NAME(PKISRVD.VSAM.OST) -
        STORCLAS(class-name) -
        RECSZ(1024 32756) -
        INDEXED -
        NOREUSE -
        KEYS(4 0) -
        SHR(2) -
        CYL(3,1) -
        LOG(NONE) -
        OWNER(PKISRVD) ) -
      DATA -
        (NAME(PKISRVD.VSAM.OST.DA)) -
      INDEX -
        (NAME(PKISRVD.VSAM.OST.IX))

    DEFINE CLUSTER -
        (NAME(PKISRVD.VSAM.ICL) -
        STORCLAS(class-name) -
        RECSZ(1024 32756) -
        INDEXED -
        NOREUSE -
        KEYS(4 0) -
        SHR(2) -
        LOG(NONE) -
        CYL(3,1) -
        OWNER(PKISRVD) ) -
      DATA -
        (NAME(PKISRVD.VSAM.ICL.DA)) -
      INDEX -
        (NAME(PKISRVD.VSAM.ICL.IX))
/*
//*-------------------------------------------------------------------*
//* Repro source cluster to destination cluster                       *
//*-------------------------------------------------------------------*
//REPROCL EXEC PGM=IDCAMS,COND=(8,LE)
//SYSPRINT  DD SYSOUT=*
//SYSIN     DD *
   REPRO INDATASET(PKISRVD.OLDVSAM.OST) -
      OUTDATASET(PKISRVD.VSAM.OST)
   REPRO INDATASET(PKISRVD.OLDVSAM.ICL) -
      OUTDATASET(PKISRVD.VSAM.ICL)
/*
//*-------------------------------------------------------------------*
//* Define ALTERNATE INDEX AND PATH                                   *
//*-------------------------------------------------------------------*
//DEFALTDX EXEC PGM=IDCAMS,COND=(8,LE)
//SYSPRINT DD   SYSOUT=*
//SYSIN    DD   *
    DEFINE ALTERNATEINDEX -
       (NAME(PKISRVD.VSAM.OST.AIX) -
        RELATE(PKISRVD.VSAM.OST)-
        TRK(5,1) -
        KEYS(24 44) ) -
      DATA -
        (NAME(PKISRVD.VSAM.OST.AIX.DA)) -
      INDEX -
        (NAME(PKISRVD.VSAM.OST.AIX.IX))
    DEFINE PATH -
        (NAME(PKISRVD.VSAM.OST.PATH) -
         PATHENTRY(PKISRVD.VSAM.OST.AIX))
    DEFINE ALTERNATEINDEX -
       (NAME(PKISRVD.VSAM.OST.STATAIX) -
        RELATE(PKISRVD.VSAM.OST)-
        TRK(5,1) -
        KEYS(40 4) ) -
      DATA -
        (NAME(PKISRVD.VSAM.OST.STATAIX.DA)) -
      INDEX -
        (NAME(PKISRVD.VSAM.OST.STATAIX.IX))
    DEFINE PATH -
        (NAME(PKISRVD.VSAM.OST.STATUS) -
         PATHENTRY(PKISRVD.VSAM.OST.STATAIX))
    DEFINE ALTERNATEINDEX -
       (NAME(PKISRVD.VSAM.ICL.STATAIX) -
        RELATE(PKISRVD.VSAM.ICL)-
        TRK(5,1) -
        KEYS(40 4) ) -
      DATA -
        (NAME(PKISRVD.VSAM.ICL.STATAIX.DA)) -
      INDEX -
        (NAME(PKISRVD.VSAM.ICL.STATAIX.IX))
    DEFINE PATH -
        (NAME(PKISRVD.VSAM.ICL.STATUS) -
         PATHENTRY(PKISRVD.VSAM.ICL.STATAIX))
    DEFINE ALTERNATEINDEX -
       (NAME(PKISRVD.VSAM.OST.REQAIX) -
        RELATE(PKISRVD.VSAM.OST)-
        TRK(5,1) -
        KEYS(32 12) ) -
      DATA -
        (NAME(PKISRVD.VSAM.OST.REQAIX.DA)) -
      INDEX -
        (NAME(PKISRVD.VSAM.OST.REQAIX.IX))
    DEFINE PATH -
        (NAME(PKISRVD.VSAM.OST.REQUESTR) -
         PATHENTRY(PKISRVD.VSAM.OST.REQAIX))
    DEFINE ALTERNATEINDEX -
       (NAME(PKISRVD.VSAM.ICL.REQAIX) -
        RELATE(PKISRVD.VSAM.ICL)-
        TRK(5,1) -
        KEYS(32 12) ) -
      DATA -
        (NAME(PKISRVD.VSAM.ICL.REQAIX.DA)) -
      INDEX -
        (NAME(PKISRVD.VSAM.ICL.REQAIX.IX))
    DEFINE PATH -
        (NAME(PKISRVD.VSAM.ICL.REQUESTR) -
         PATHENTRY(PKISRVD.VSAM.ICL.REQAIX))
/*
//*-------------------------------------------------------------------*
//* BUILD ALTERNATE INDEX                                             *
//*-------------------------------------------------------------------*
//BLDINDEX EXEC PGM=IDCAMS
//SYSPRINT DD   SYSOUT=*
//SYSIN    DD   *
    BLDINDEX INDATASET(PKISRVD.VSAM.OST) -
        OUTDATASET(PKISRVD.VSAM.OST.AIX)
    BLDINDEX INDATASET(PKISRVD.VSAM.OST) -
        OUTDATASET(PKISRVD.VSAM.OST.STATAIX)
    BLDINDEX INDATASET(PKISRVD.VSAM.ICL) -
        OUTDATASET(PKISRVD.VSAM.ICL.STATAIX)
    BLDINDEX INDATASET(PKISRVD.VSAM.OST) -
        OUTDATASET(PKISRVD.VSAM.OST.REQAIX)
    BLDINDEX INDATASET(PKISRVD.VSAM.ICL) -
        OUTDATASET(PKISRVD.VSAM.ICL.REQAIX)
/*