Enabling the IMS management of ACBs and the IMS catalog at the same time

If your installation does not already use the IMS catalog, you must enable the IMS catalog when you enable IMS management of application control blocks (ACBs).

If you recently migrated to a new release of IMS, be sure that the IMS system is stable before you enable the IMS catalog and the IMS management of ACBs.

In data-sharing environments, evaluate the impact of enabling the IMS management of ACBs on your current configuration. Ideally, all IMS systems in the data-sharing group share a single IMS catalog. When the IMS management of ACBs is enabled, sharing a single IMS catalog is similar to sharing a single ACB library.

You can use either the IMS Catalog Populate utility (DFS3PU00) or the ACB Generation and Populate utility (DFS3UACB) to populate the IMS catalog and set up IMS for the management of ACBs. The utilities create and allocate all of the IMS catalog database data sets automatically, but if you need to, you can define them yourself.

Make sure that the ACB libraries that you provide as input to the IMS Catalog Populate utility (DFS3PU00) contain all of the ACBs that are currently active in the IMS system. The following catalog resources must be present in one of the ACB libraries:
  • DFSCD000
  • DFSCP000
  • DFSCP001
  • DFSCX000
  • DFSCPL00

Until the DFS3PU00 utility completes the population of the IMS catalog and the setup of the IMS management of ACBs, CATALOG=NO and ACBMGMT=ACBLIB must remain in effect for that IMS system. These values are the default values, but if necessary, you can specify them explicitly in the <CATALOG> section of the DFSDFxxx member of the IMS.PROCLIB data set that the IMS system uses.

Recommendations:

If you do not already use the IMS Common Service Layer (CSL), configure and enable CSL before you enable the IMS management of ACBs. To activate database and program view changes in online IMS systems without shutting down IMS, CSL is required. Database and program view changes are activated by the IMS type-2 command IMPORT DEFN SOURCE(CATALOG). IMS type-2 commands require the Operations Manager (OM) and the Structured Call Interface components of CSL. If you use data sharing, the CSL Resource Manager (RM) component is required.

Keep the database descriptor (DBD) and program specification block (PSB) source statements that define your databases and program views, as well as the ACB, DBD, and PSB libraries, intact and current until you are certain that all of your tools, automation, and operational procedures support the IMS management of ACBs and you do not need to fall back to user-managed ACBs.

Similarly, in your job control language (JCL), do not delete any DD statements that refer to the ACB, DBD, or PSB libraries until you are certain that you do not need to fall back.

Use the z/OS Storage Management Subsystem (SMS) to manage the IMS catalog data sets. The SMS options for the IMS catalog are specified in the <CATALOG> section of the DFSDFxxx PROCLIB member.

Procedure

To enable the IMS catalog and the IMS management of ACBs follow these steps:

  1. Set up the IMS catalog:
    1. Install the DBDs and PSBs for the IMS catalog from the IMS.SDFSRESL data set to the IMS.DBDLIB and IMS.PSBLIB data sets.
      The catalog DBDs are called DFSCD000 and DFSCX000. The PSBs are called DFSCPL00, DFSCP000, DFSCP001, DFSCP002, and DFSCP003. These names are reserved and cannot be changed or used for other resources.
    2. Run the ACB Maintenance utility to generate the ACB for the IMS catalog.
      For example, JCL for the ACB Maintenance utility, see Install the DBDs and PSBs for the IMS catalog.
    3. Activate the ACB library that contains the IMS catalog ACB.
    4. Code the CATALOG section of the DFSDFxxx member in the IMS PROCLIB data set, but do not yet enable the IMS catalog or the IMS management of ACBS. Specify CATALOG=N, ALIAS=xxxx, and ACBMGMT=ACBLIB.

      Optionally, if you want to specify a high-level qualifier for the directory data sets that is different from the high-level qualifier of the IMS catalog database data sets, use the SYSDSHLQ= parameter in a dynamic allocation macro (DFSMDA). Specify the SYSDSHLQ= parameter in a TYPE=CATDSHLQ statement in the DFSMDA macro.

      The following example shows a specification of the <CATALOG> section of the DFSDFxxx member before the IMS catalog is created:
      <SECTION=CATALOG>
      CATALOG=N,
      ALIAS=DFSC
      DATACLAS=,
      MGMTCLAS=,
      RETENTION=(VERSIONS=010),
      STORCLAS=MEDIUM,
      ACBMGMT=ACBLIB
    5. Define the HALDB master database and partitions of the IMS catalog. Choose one of the following options:
      • Defining the IMS catalog with DBRC: Use the Database Recovery Control utility (DSPURX00) to register the IMS catalog with DBRC and to define the master database and partitions in the RECON data sets.
      • Defining the IMS catalog without DBRC: Create a DFSMDA member of the IMS.PROCLIB data set to allocate the catalog partition definition data set, then use the IMS Catalog Partition Definition Data Set utility (DFS3UCD0) to create the database. Set the name of the IMS catalog database and secondary index in the UNREGCATLG parameter in the DFSDFxxx member of the IMS.PROCLIB data set. This procedure creates a stand-alone data set with the catalog partition definitions so that you do not need DBRC to manage the catalog database. This option does not require DBRC, but you can use an unregistered IMS catalog in an IMS system with DBRC if necessary.
    6. Estimate the size of the HALDB partition data sets of the IMS catalog by running the DFS3PU00 utility with the DFSCP000 PSB. If you are going to enable the IMS management of ACBs, the DFSDFxxx member must not yet specify ACBMGMT=CATALOG.
      The following is an output example of running the DFS3PU00 utility with the DFSCP000 PSB. You might need to partition the catalog according to the estimation if necessary:
      //LOADCAT EXEC PGM=DFS3PU00,REGION=7M,                               
      // PARM=(DLI,DFS3PU00,DFSCP000,,,,,,,,,,,Y,N,,,,,,,,,,,,'DFSDF=001') 
      //STEPLIB  DD  DSN=IMSVS.IMEC.EXITLIB,DISP=SHR                       
      //         DD  DSN=IMSVS.IMEC.SDFSRESL,DISP=SHR                      
      //DFSRESLB DD  DSN=IMSVS.IMEC.SDFSRESL,DISP=SHR                      
      //IMS      DD  DSN=IMSVS.IMEC.PSBLIB,DISP=SHR                        
      //         DD  DSN=IMSVS.IMEC.DBDLIB,DISP=SHR                        
      //PROCLIB  DD  DSN=IMSVS.IMEC.PROCLIB,DISP=SHR                       
      //SYSABEND DD  SYSOUT=*       DUMP DATA SET                          
      //SYSPRINT DD  SYSOUT=*       MESSAGES, STATISTICS                   
      //IEFRDER  DD  DSN=IMSVS.IMEC.SLDS(+1),DISP=(,CATLG),                
      //    UNIT=SYSDA,SPACE=(CYL,(10,10),RLSE)                            
      //DFSVSAMP DD  DSN=IMSVS.IMEC.UTIL(VSAMP),DISP=SHR                   
      //IMSACB01 DD  DSN=IMSVS.IMEC.ACBLIB,DISP=SHR                        
      //SYSINP   DD *               
      
      TOTALS FOR ALL PARTITIONS                                  
                                                                 
         ESTIMATED NUMBER OF SEGMENTS TO INSERT INTO THE CATALOG 
                         INSERTED                      AVERAGE   
         SC   SEGMENT    SEGMENTS   DSG   PARENT     SEGS/PARENT 
         --   --------   --------   ---   --------   ----------- 
          1   HEADER        1272     A                           
          2   DBD            295     A    HEADER         0.2     
          5   DSET           253     D    DBD            0.9     
          9   SEGM          1065     B    DBD            3.6     
         12   FLD           1138     C    SEGM           1.1     
         14   MAR           1138     C    FLD            1.0     
         17   LCHILD         201     B    SEGM           0.2     
         20   XDFLD           48     B    LCHILD         0.2     
         37   PSB            977     A    HEADER         0.8     
         39   PCB          24488     B    PSB           25.1     
         41   SS          176024     B    PCB            7.2     
         45   DBDXREF      24769     D    PSB           25.4 
          
      ESTIMATED SPACE REQUIREMENT TO HOLD INSERTED SEGMENTS
        DSG   BLKSIZE   BLOCKS                             
        ---   -------   ------                             
         A      8192        82                             
         B      8192     11856                             
         C      8192       329                             
         D      8192       293                             
                                                           
        DSG   RECORDS                                      
        ---   -------                                      
         L     24769                                       
         X      1273
      For more information about sizing the IMS catalog data sets, see Size of IMS catalog data sets.
    7. If you need to manually create the database data sets for the IMS catalog, create the data sets now. Otherwise, IMS creates them automatically.
    8. Initialize the empty IMS catalog partition data sets with the HALDB Partition Data Set Initialization utility (DFSUPNT0).
  2. Code the JCL and input control statements of the DFS3PU00 utility:
    • On the EXEC parameter in the JCL for the DFS3PU00 utility, specify DFSCPL00 as the PSB. PSB DFSCPL00 directs the DFS3PU00 utility to update the IMS catalog in load mode. Any existing copy of the IMS catalog is deleted.
    • Specify one or more ACB libraries that contain the currently active ACBs by using the IMSACBnn DD statements.
    • Specify the MANAGEDACBS=SETUP control statement by using the SYSINP DD statement.
    The following code is an example of the JCL required for the DFS3PU00 utility:
    //LOADCAT EXEC PGM=DFS3PU00,REGION=7M,
    // PARM=(DLI,DFS3PU00,DFSCPL00,,,,,,,,,,,Y,N,,,,,,,,,,,,'DFSDF=001')
    //STEPLIB DD DSN=IMS.EXITLIB,DISP=SHR
    // DD DSN=IMS.SDFSRESL,DISP=SHR
    //DFSRESLB DD DSN=IMS.SDFSRESL,DISP=SHR
    //IMS DD DSN=IMS.PSBLIB,DISP=SHR
    // DD DSN=IMS.DBDLIB,DISP=SHR
    //PROCLIB DD DSN=IMS.PROCLIB,DISP=SHR
    //SYSABEND DD SYSOUT=* DUMP DATA SET
    //SYSPRINT DD SYSOUT=* MESSAGES, STATISTICS
    //IEFRDER DD DSN=IMS.SLDS(+1),DISP=(,CATLG),
    // UNIT=SYSDA,SPACE=(CYL,(10,10),RLSE)
    //DFSVSAMP DD DSN=IMS.UTIL(VSAMP),DISP=SHR
    //IMSACB01 DD DSN=IMS.ACBLIB,DISP=SHR
    //SYSINP DD *
    DUPLIST
    ISRTLIST
    MANAGEDACBS=SETUP

    For more information, see Loading the IMS catalog with the DFS3PU00 utility.

  3. Run the DFS3PU00 utility to set up the IMS catalog to manage ACBs. Make sure that you enabled the IMS catalog and specified the options for the IMS catalog as necessary in CATALOG and CATALOGxxxx sections of the DFSDFxxx member before using the DFS3PU00 utility. Set ACBMGMT=ACBLIB in the CATALOG and CATALOGxxxx section of the DFSDFxxx member until the IMS directory data sets are populated .
    The DFS3PU00 loads the database and program view definitions into the IMS catalog, creates the system-managed IMS directory data sets, and loads the ACBs into the active ACB data sets of the IMS directory. When the IMS systems that use the IMS catalog restart, they load the active ACBs from the IMS directory.
    Attention: Do not restart IMS until the population of the IMS catalog is complete.
  4. For batch application programs, add the IMS catalog and ACB management definitions to the batch environment by either updating the execution JCL to reference the DFSDFxxx PROCLIB member or by using the IMS Catalog Definition exit routine (DFS3CDX0), which provides the definitions without requiring you to modify the JCL.
  5. Specify the enabling parameters for the IMS catalog and the IMS management of ACBs in the <CATALOG> section of the DFSDFxxx member in the IMS PROCLIB data set: CATALOG=Y and ACBMGMT=CATALOG.
    The following example shows the specification of the <CATALOG> section of the DFSDFxxx member:
    <SECTION=CATALOG>
    CATALOG=Y,
    ALIAS=DFSC
    DATACLAS=,
    MGMTCLAS=,
    RETENTION=(VERSIONS=010),
    STORCLAS=MEDIUM,
    ACBMGMT=CATALOG,
    
  6. After the population of the IMS catalog is complete, restart all IMS systems that use the IMS catalog.
If you have utilities, tools, or processes that continue to require the ACB, DBD, and PSB libraries, the library members must match the resources that are flagged as active in the IMS catalog. To generate matching libraries after IMS is managing the ACBs, use the IMS Catalog Database Library utility (DFS3LU00).

Consider setting the CATALOG field of the RECON data set if you need DBRC to read DBD information from an IMS catalog registered with DBRC. You can set the CATALOG field by using the CHANGE.RECON command. If you do not specify the field, DBRC reads DBD information from the DBDLIB. For more information, see DBRC access to DBD information when IMS manages ACBs.