Maintaining your dynamic resource definition environment
After you have set up your IMS systems to support dynamic resource definition (DRD), it is important to establish processes to maintain your DRD environment.
Here are some steps to follow to establish processes to maintain your DRD environment.
Enabling automatic export to an IMSRSC repository
Enable the automatic export function to an IMSRSC repository by:
- Defining the IMSRSC repository.
- Specifying AUTOEXPORT=AUTO or AUTOEXPORT=REPO in the DYNAMIC_RESOURCES section of the DFSDFxxx member in the IMS.PROCLIB data set.
- For MSC resources, specifying MSCREPO=Y in the MSC section of the DFSDFxxx member.
When automatic export to a repository is enabled, your resource and descriptor definitions are automatically exported to the repository at IMS checkpoint if the attribute values of one or more of your resources or descriptors have changed since the last IMS checkpoint. If you later must perform a cold start, and IMS is not enabled with the RDDS, IMS imports the resource and descriptor definitions from the repository and creates runtime resource and descriptor definitions that it must run.
Enabling automatic export to an RDDS for MODBLKS resources
Enable the automatic export function to an RDDS for MODBLKS resources by performing the following tasks. MSC resources do not support RDDSs.
- Defining two or more system resource definition data sets.
- Specifying AUTOEXPORT=AUTO in the DYNAMIC_RESOURCES section of the DFSDFxxx member in the IMS PROCLIB data set.
When automatic export is enabled, your resource and descriptor definitions are automatically exported to an RDDS at IMS checkpoint if the attribute values of one or more of your resources or descriptors have changed since the last IMS checkpoint. If you later must perform a cold start, and IMS is not enabled with the IMSRSC repository, or the repository is empty, IMS imports the resource and descriptor definitions from the RDDS and creates the runtime resource and descriptor definitions that it must run.
Exporting MODBLKS resource definitions to a repository or RDDS by using the EXPORT command
If the attribute values of one or more of your MODBLKS resources or descriptors have changed since the last IMS checkpoint, save the definitions to a repository or an RDDS.
As an alternative to enabling the automatic export function to a repository, use the EXPORT DEFN TARGET(REPO) command to save your current resource and descriptor definition to a repository.
As an alternative to enabling the automatic export function to an RDDS, use the EXPORT DEFN TARGET(RDDS) command to save your current resource and descriptor definition to an RDDS.
Enabling automatic import
Enable the automatic import function by specifying AUTOIMPORT=AUTO in the DYNAMIC_RESOURCES section of the DFSDFxxx member of the IMS PROCLIB data set. When AUTOIMPORT=AUTO is specified, IMS determines whether to enable automatic import processing. If IMS enables automatic import, it also determines the data source from which to import the definitions.
- A MODBLKS data set
- A DFSCLL3x member of the IMS.SDFSRESL data set
- An RDDS
- A repository
If you delete runtime resource definitions from a data source by using a DELETE command and then cold start IMS, the deleted resource definitions reappear if the automatic import function is enabled and the definitions still exist in another data source from which automatic import can take place.
Backing up repository definitions
You can use VSAM backup utilities to create backups of repository data sets.
Alternately, for MODBLKS resources, you can maintain an RDDS that contains equivalent repository definitions for each IMS that uses the repository. Use the Repository to RDDS utility (CSLURP20) to generate an RDDS from the repository for each IMS that uses the repository.
For MODBLKS resources, you can also use the newly generated RDDS as input to the RDDS to Repository utility (CSLURP10) to copy resource and descriptor definitions from one repository to another repository.
Reorganizing repository data sets
Periodically reorganize the repository data sets by using VSAM reorganization utilities.
Adjusting repository data sets with the FRPBATCH commands
- Use the ADD command to add a repository to the Repository Server (RS) catalog repository data sets.
- Use the DELETE command to remove a repository from the RS catalog repository data sets.
- Use the DSCHANGE command to change the status of a repository data set pair to either DISCARD or SPARE.
- Use the RENAME command to rename a repository.
- Use the UPDATE command to update a repository definition in the RS catalog repository data sets. Use this command to change the repository data sets or the AUTOOPEN specification of a repository.
Removing IMS.MODBLKS data sets
When DRD is enabled, the IMS.MODBLKS data sets are no longer required. After you are satisfied with the setup of your DRD environment and it is running successfully, you can remove the IMS.MODBLKS data sets. If automatic import is enabled, resource and descriptor definitions are imported during IMS cold start from the RDDS or the repository that contains the most current data. However, you can continue to use the IMS.MODBLKS data set as the source for all of your resource definitions, instead of an RDDS or repository. If you choose to continue using the IMS.MODBLKS data set, keep your system definition macros synchronized with the changes you make dynamically using DRD commands.
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 contents of IMS.MODBLKS
As you migrate to using RDDSs or the repository, keep resource definitions that are in the IMS.MODBLKS data set synchronized with the resource definitions that are in the RDDS or repository. This synchronization enables you to maintain a viable IMS.MODBLKS data set if you must disable DRD and fall back to using the online change process for the resources in the IMS.MODBLKS data set. To keep your IMS.MODBLKS data set 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 MODBLKS system definition to add, change, or delete resources from the IMS.MODBLKS data set.
Synchronizing the DFSCLL3x, DFSCLR0x, and DFSCLC0x members 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.