CICS Resources

The following CICS resources are stored in the PAC Scale-Out Repository (PSOR) when configured and operating:

Although the DCT resources themselves are stored in the PSOR, the actual queue must be one of the following DCT types in order for it to be stored in a Performance and Availability Cluster (PAC) by a Scale-Out Repository (SOR) Model:
  • Non-recoverable.
  • Intra-partition - which includes triggers.
  • Indirect - model prefixes work only on the target DCT.
Note: Recoverable, internal reader, and extra-partition types cannot be stored in a SOR.

You can still have recoverable TD queues in a PAC by configuring the SIT to store the recoverable TDQ file in a database this is the same for recoverable TS queues.

When viewing information about TD queues in ESMAC, the following apply:

  • Information regarding SOR stored queues, such as number of items and depth, can be viewed by any enterprise server instance.
  • Information regarding queues stored on disk is only available to the local enterprise server instance.
An ENQMODEL is used to elect named resources for which ENQ/DEQ commands use a SYSTEMs wide scope (SYSTEMs vs SYSTEM).

By default, CICS ENQs in a PAC will be stored in the region database (scope SYSTEM).

ENQs are directed to the cross-region database if they match an ENQMODEL that has an ENQSCOPE value that is not equal to spaces (scope SYSTEMS). This enables ENQs to be shared outside of the PAC.

An ENQMODEL can be configured to send matching ENQs to shared memory. The purpose of this would be to gain a performance improvement over storing them in a database.

It should only be used if the resource in question is being accessed in a single region. If the ENQ is taken in multiple regions, then the resource will not be protected.
The VSAM file referred to by the resource of this type can be stored in an RDBMS. See the MFDBFH configuration for requirements. Whether or not in MFDBFH, issuing a file close command in any enterprise server instance results in the file being closed by all instances in the PAC.
Since the Active PCT is stored in the PSOR, changing the status (enabled/disabled) in any region will result in the status being changed for the entire PAC.
Each enterprise server instance will load user applications from the location specified in its configured transaction path.

If you need to modify a program while a PAC is active, you need to uploaded the new binary file to the PSOR and then issue a caspac New Copy command.

For example, the process to install a new version of the program myprog.dll is as follows:

  1. Load the new version of myprog.dll into the PSOR with the following command:
    caspac -aLoad="C:\new files\myprog.dll" -sredis,
  2. Issue the New Copy command via one of the following methods:
    • Using the CICS castran command:
      castran –rinstanceName  -nmyprog
    • Using the CICS CPMT transaction:
    • Using an EXEC CICS SET PROGRAM command:
  • Enterprise server instances will pick up all binaries that have been loaded into the PSOR at start time. If there are a large number of binaries in the PSOR it might take some time to acquire them all. This might result in programs not being immediately available at start up.
  • Binaries can get out of synchronization between enterprise server instances if a new instance joins the PAC after programs have been loaded into the PSOR and before a new copy command is issued. In this case, the new enterprise server instance will use the newer binary version. To synchronize the enterprise server instances in the PAC, issue a new copy command.
Both JCL and CICS use the RNLs list to determine which resource to ENQ/DEQ require SYSTEMS or SYSTEM scope:
  • JCL ENQ scope is determined by the RNLs definitions only.
  • CICS ENQ scope is derived from ENQMODELs. If scope is set in the ENQMODEL and NQRNL=YES is set in the SIT then the RNL LIST is checked.
This is used to determine generic properties to apply to a set of TS queues.
Only non recoverable queues can be stored in a SOR. If recoverable queues are required, the file that contains recoverable queues can be stored in a database.
  • MaxActive is supported.
  • Priority is NOT supported.