Using dynamic program LIBRARY resources

For an application to run, the load module has to reside in a data set in a CICS® load LIBRARY concatenation.

CICS has two types of load LIBRARY concatenations:
  • The static load LIBRARY concatenation: DFHRPL.
  • One or more dynamically defined load LIBRARY concatenations.
Static LIBRARY concatenation DFHRPL
The startup JCL defines the static load LIBRARY concatenation, DFHRPL, to CICS. DFHRPL contains critical data sets, that must be available for CICS to start and run, and application program entities. When CICS is running, changes to the DFHRPL data set names are not possible without stopping and restarting CICS. Such changes are not usually an option in today's continuous availability environment.

DFHRPL data set names must conform to the MVS™ data set naming convention.

Data sets in a dynamic program LIBRARY concatenation can reside in the extended addressing space (EAS) of an extended address volume (EAV) DASD volume.

Dynamic program LIBRARY concatenation
You can define program LIBRARY concatenations to CICS dynamically. The use of dynamic program LIBRARY concatenations provides a number of advantages for the system programmer and the organization:
  • They contain one or more data sets from which program artifacts can be loaded.
  • You can bring new application programs for deployment into service at any time without affecting continuous availability.
  • You can withdraw existing application programs in dynamic LIBRARY concatenations from service without affecting continuous availability.
  • You can install patches to existing application programs by installing them in a LIBRARY concatenation with a higher ranking than the existing LIBRARY, without affecting continuous availability.
  • You can take offline data sets in dynamic LIBRARY concatenations for compression without affecting continuous availability.

LIBRARY data set names must conform to the MVS data set naming convention and you can use alias data sets. Data sets in a dynamic program LIBRARY concatenation can reside in the extended addressing space (EAS) of an extended address volume (EAV) DASD volume.

You do not have to use dynamic program LIBRARY concatenations. You may use DFHRPL. In fact, you must define the following data sets in DFHRPL:
  • SDFHLOAD
  • Phase 1 PLT programs
  • Non-SMS managed data sets
  • Data sets with DISP other than SHR

You can install or create dynamic LIBRARY concatenations as either enabled or disabled.

Enabled
When you install or create a LIBRARY with an enabled status of enabled, CICS attempts to allocate and then concatenate the data sets, before finally opening the LIBRARY concatenation. If any of these steps fails, those that had already succeeded are undone and the LIBRARY is installed as disabled. A message indicates the step that has failed.
Disabled
When you install or create a LIBRARY with an enabled status of disabled, CICS does not attempt to allocate or concatenate the data sets. When the data sets are available and the LIBRARY is ready for use, perform a SET LIBRARY ENABLED command to allocate and concatenate the data sets and open the LIBRARY.

If any of the enable steps in the SET LIBRARY ENABLED operation fails, those that had already succeeded are undone and the LIBRARY remains disabled. A message indicates the step that has failed.

You can use CICS Explorer® or IBM® Developer for z/OS to define dynamic LIBRARY concatenations in CICS bundles, for resource management and deployment in multiple CICS regions.

The following examples help you to use dynamic program LIBRARY concatenations.