Maintaining MSC resources in the IMSRSC repository

Maintain MSC resource definitions in the IMSRSC repository to store the definitions in a single, centralized location for all members of an IMSplex. Maintaining MSC resource definitions in the IMSRSC repository also enables the definitions to be saved across an IMS cold start.

If you use the IMSRSC repository to store dynamically defined MSC resources, ensure that automation and operational procedures that issue commands for MSC resources use type-2 commands, which specify link names, instead of type-1 commands, which specify link numbers. For example, instead of using the /RSTART LINK 10 command to start a link, use the UPDATE MSLINK NAME(logicallinkname) START(COMM) command. During stage-1 system generation, the IMS system assigns numbers to logical links in the order in which the links are generated. However, the numbers for links are not stored in the IMSRSC repository. If logical links are referenced by using link numbers and are automatically imported from the IMSRSC repository, the numbers of the links are likely to change at the next IMS cold start.

Before you create and maintain MSC resources in the IMSRSC repository, ensure that all of the following prerequisites are met:
  • The IMSRSC repository is defined.
  • Dynamic resource definition for MSC resources is enabled.
  • The IMSRSC repository is enabled for MSC resources.
  • MODBLKS=DYN is specified in either or both of the following locations:
    • The COMMON_SERVICE_LAYER section of the DFSDFxxx PROCLIB member
    • The DFSCGxxx member of the IMS PROCLIB data set
  • AUTOEXPORT=AUTO or AUTOEXPORT=REPO is specified in the DYNAMIC_RESOURCES section of the DFSDFxxx PROCLIB member.
  • AUTOIMPORT=AUTO or AUTOIMPORT=REPO is specified in the DYNAMIC_RESOURCES section of the DFSDFxxx PROCLIB member.

Creating MSC resources in the IMSRSC repository

To create MSC resources in the IMSRSC repository, issue the CREATE command for the type of MSC resource that you want to create. You must create MSC resources in the following order for the MSC link to be usable:
  1. CREATE MSPLINK
  2. CREATE MSLINK
  3. CREATE MSNAME
  4. CREATE LTERM

Issue the CREATE command to each IMS in each IMSplex for which the resource definitions are to be exported to the repository. You can use the ROUTE keyword on the OM API to specify the IMS to which the command is routed.

The MSC resource definitions that you created are automatically exported to the IMSRSC repository at the end of the next IMS checkpoint or before the IMS shutdown checkpoint.

At the end of the automatic export processing to the IMSRSC repository, the X'22' map byte X'51' automatic export complete log record is written.

Updating MSC resources in the IMSRSC repository

To update MSC resources in the IMSRSC repository, use the appropriate UPDATE command for the type of resource definition that you are updating.

The UPDATE command must be issued to each IMS in each IMSplex for which the resource definitions are to be exported to the repository. You can use the ROUTE keyword on the OM API to specify the IMS to which the command is routed.

Automatic export processing is done at the end of each IMS normal checkpoint and before the IMS shutdown checkpoint. IMS automatically exports any changes in resource definitions for MSC resources since the last automatic export.

Deleting MSC resources from the IMSRSC repository

To delete resource and descriptor definitions from the IMSRSC repository, issue the DELETE DEFN command. Issuing the DELETE DEFN command ensures that the definitions remain deleted in IMS™ across a cold start, and that they are not imported from the repository during cold start processing

Delete MSC resource definitions from the IMSRSC repository in the following order:
  1. Remote transaction definitions
  2. Remote logical terminal (LTERM) definitions
  3. MSC logical link paths (MSNAMEs)
  4. MSC logical links (MSLINKs)
  5. MSC physical links (MSPLINKs)
Important: When you delete an MSC resource of one type and re-create the resource as another type, first delete the resource from the local IMS system, and then delete the resource from the IMSRSC repository. If the MSC resource of the original type is not deleted first locally and then from the IMSRSC repository, the IMS system might fail to re-create the original resource as another resource type.

If you delete runtime resource definitions by using a DELETE command and then cold start IMS, the deleted resource definitions reappear if the resource definitions are automatically imported from the original DFSCLL3x member of the IMS.SDFSRESL data set instead of the IMSRSC repository that contains the most current definitions.

Exporting MSC resources to the IMSRSC repository

At the end of the next IMS normal checkpoint or before the IMS shutdown checkpoint, IMS automatically exports to the IMSRSC repository the newly created or updated MSC resource definitions since the last automatic export. The IMS checkpoint can be initiated either by issuing the /CHECKPOINT command or automatically by the IMS system.

If you use the /CHECKPOINT command to initiate an IMS checkpoint, the command must be routed to each IMS in each IMSplex in which the MSC resources are defined.

Importing MSC resources from the IMSRSC repository

If MSC resource definitions exist in the IMSRSC repository, the definitions are imported from the repository at the next IMS cold start.

If you are using channel-to-channel (CTC) links, consider removing the DD definitions for the CTC links from the IMS JCL before you import the MSC resources from the IMSRSC repository. This allows the CTC addresses that are defined to be used for the CTC links that are imported from the IMSRSC repository.

If an IMS system is cold started on a different z/OS® system than the z/OS system where a channel-to-channel link was created and exported, and that channel-to-channel address is not defined on the new z/OS system, the CTC link open fails and omits issuing the DFS2168I CONNECTION ESTABLISHED ON LINK x message. However, the automatic import continues. You can use the UPDATE MSPLINK SET(ADDR(addr)) command to change the address of the MSC physical to an address that is valid for that z/OS system.

Removing the DFSCLL3x and DFSCLR0x members and updating the DFSCLC0x member of the IMS.SDFSRESL data set

If you use the IMSRSC repository to store dynamically defined MSC resources, the DFSCLL3x and DFSCLR0x members of the IMS.SDFSRESL data set are no longer required. Because the DFSCLC0x member might contain non-MSC resources, the DFSCLC0x might still be required. After you are satisfied with the setup of your DRD environment for MSC resources, the DRD environment is running successfully, and your MSC resources are exported to the IMSRSC repository, you can remove the DFSCLL3x and DFSCLR0x members. For the DFSCLC0x member, update the member to remove MSC logical link path definitions. If automatic import is enabled, MSC resource definitions are imported during IMS cold start from the repository that contains the most current data. However, you can continue to use the DFSCLL3x, DFSCLR0x, and DFSCLC0x members as the source for your MSC resource definitions, instead of a repository. If you continue to use the DFSCLL3x, DFSCLR0x, and DFSCLC0x members, keep your system definition macros synchronized with the changes you make dynamically using DRD commands.

Synchronizing the DFSCLL3x member of the IMS.SDFSRESL data set

If you migrate to using the IMSRSC repository for dynamically defined MSC resources but continue to use the DFSCLL3x, DFSCLR0x, and DFSCLC0x members of the IMS.SDFSRESL data set, keep resource definitions that are in the members synchronized with the resource definitions that are in the repository. This synchronization enables you to maintain viable DFSCLL3x, DFSCLR0x, and DFSCLC0x members if you must disable DRD and fall back to using the system generation process for MSC resources. To keep your DFSCLL3x, DFSCLR0x, and DFSCLC0x members synchronized with your online definitions, update your static macro definitions with the changes that you make dynamically using type-2 commands. When changes are made dynamically, perform a MSC system definition to add, change, or delete resources from the DFSCLL3x, DFSCLR0x, and DFSCLC0x members.