CICS Distributed Program Link (DPL) lets CICS programs run programs in other CICS regions by shipping program control LINK requests to target regions. The benefit is that you can write an application without knowing the location of the requested programs. The CICS program resource definition specifies that the program is in a remote rather than local region (see Figure 7).
The program running on region CICA issues a program control LINK command for program PGA. From the installed program definitions, CICS discovers that program PGA is owned by region CICB. CICS changes the LINK request into a suitable transmission format and ships it to CICB. In CICB, a mirror transaction is attached. The mirror program DFHMIRS associated with the mirror transaction re-creates the original request and issues the request on CICB to link to program PGA. So CICS has performed a DPL request.
CICSPlex SM WLM optimizes processor capacity by dynamically routing transactions and programs to the region that’s the most appropriate to execute them. However, when using dynamic WLM, problems can occur during use of multiple DPL requests in a single UOW.
For example, if multiple invocations of the same dynamically routed program access a common resource in the same UOW, one DPL request could be routed to one region where a resource may be locked, while a subsequent DPL request may be routed to a different region where the state associated with the outstanding UOW isn’t available. So, it wouldn’t be possible to run the second DPL request in the same UOW (see Figure 8).
Dynamic WLM now resolves problems associated with the use of multiple DPL requests in a single UOW. A new type of CICS affinity, associated with a UOW and restricted to dynamically linked programs, was introduced. CICSPlex SM WLM has been extended to manage these UOW affinities for DPL requests. The affinity is defined with an affinity relation of LOCKED, meaning a called program retains state data that’s to be preserved after it returns to its caller, and an affinity lifetime of UOW so that programs with this type of affinity are routed to the same target region for the duration of the UOW (see Figure 9).
CICSPlex SM WLM administration views were updated with new fields and field values to configure UOW affinities. Using the TRANGRP and WLMSPEC resource tables, you can now create transaction groups and WLM specifications that incorporate this new type of affinity. The Active workloads view has been updated to display the number of active transaction group affinities. Figure 10 shows an example of the affinity relationship and the affinity lifetime specified on a WLM specification. To use the new UOW affinity with existing workloads, you must restart the workloads with CICS TS 4.2.
We’ve shown you how:
- CICSPlex SM WLM algorithms can be used to isolate the connection factor from the routing weight calculation.
- CICSPlex SM WLM dynamic routing algorithms can be specified at the WLMSPEC level and overridden at the TRANGRP levels.
- UOW affinities are taken into account with DPL.
CICS systems administrators should realize the value of the new features of CICS Transaction Server for z/OS V4.2 and consider exploiting them.