RODM (RM)

You can use the Resource Object Data Manager to track the status of real resources used by HCL Workload Automation for Z operations. RODM is a data cache that contains information about real resources at your installation. Products such as AOC report actual resource status to RODM; RODM reflects the status by updating values of fields in classes or objects that represent the real resources. Subsystems on the same z/OS image as RODM can subscribe to RODM fields. When RODM updates a field, all subscribers to the field are notified.

HCL Workload Automation for Z support for RODM lets you subscribe to RODM fields for fields in special resources. When RODM notifies a change, HCL Workload Automation for Z updates resource fields that have a subscription to RODM. You can subscribe to RODM for these fields:
AVAILABLE
The Available field in the resource. This value overrides the default and interval values.
QUANTITY
The Quantity field in the resource. This value overrides the default and interval values.
DEVIATION
The Deviation field. You use this field to make a temporary adjustment to quantity. HCL Workload Automation for Z adds quantity and deviation together to decide the amount that operations can allocate. For example, if quantity is 10 and deviation is -3, operations can allocate up to 7 of the resource.
You specify these keywords to invoke monitoring through RODM:
RODMTASK
Is specified on the OPCOPTS statement for the controller and for each tracker that communicates with a RODM subsystem.
RODMPARM
Is specified on the OPCOPTS statement for the controller and identifies the member that contains RODMOPTS statements in the parameter library.
RODMOPTS
Is specified for a controller and contains destination and subscription information.

A RODMOPTS statement is required for each field in every resource that you want to monitor. Each statement is used to subscribe to a field in a RODM class or RODM object for a field in a special resource. The RODM field value is used to set the value of the resource field.

RODMOPTS statements are read when the controller is started. When a tracker that communicates with RODM is started, it requests parameters from the controller. The controller sends subscription information to the tracker, which then subscribes to RODM. An event is created when RODM returns a value, which is used to update the special resource field in the current plan. HCL Workload Automation for Z does not schedule operations that use a special resource until RODM has returned the current field value and HCL Workload Automation for Z has updated the resource.

To use RODM monitoring you must ensure that:
  • A tracker is started on the same z/OS image as the RODM subsystem that requests are sent to, and RODMTASK(YES) is specified for both the tracker and the controller.
  • An event writer is started in the HCL Workload Automation for Z address space that communicates with RODM. This address space creates resource events (type S) from RODM notifications, which HCL Workload Automation for Z uses to update the current plan.
  • The controller is connected to the tracker through XCF, NCF, TCP/IP, or a submit/release data set.
  • Each address space has a unique RACF® user ID if more than one HCL Workload Automation for Z address space communicates with a RODM subsystem, such as when you start production and test systems that subscribe to the same RODM subsystem.

HCL Workload Automation for Z does not load or maintain data models in the RODM cache, or require a specific data model. You need not write programs or methods to use RODM through HCL Workload Automation for Z, or define specific objects or fields in RODM. HCL Workload Automation for Z does not update RODM-defined data.

RODM fields have several subfields. The RODM field that HCL Workload Automation for Z subscribes to must have a notify subfield. Through a subscription to this subfield, RODM notifies the product of changes to the value subfield. HCL Workload Automation for Z uses changes to the value subfield to monitor special resources. But only these data types are valid for HCL Workload Automation for Z RODM support:

Table 1. Valid RODM data types for value subfields
Abstract data type Data type ID
CharVar (Char) 4
Integer (Bin 31) 10
Smallint (Bin 15) 21
HCL Workload Automation for Z maintains a RODM status for all special resources in the current plan. You can check the current status in the SPECIAL RESOURCE MONITOR dialog. Each special resource has one of these values:
N
Not monitored. The special resource is not monitored through RODM.
I
Inactive. Monitoring is not currently active. HCL Workload Automation for Z sets this status for all subscriptions to a RODM subsystem that the controller cannot communicate with. This can occur when communication is lost with RODM or with the tracker. The controller sets the value of each monitored field according to the RODMLOST keyword of RODMOPTS.
P
Pending. HCL Workload Automation for Z has sent a subscription request to RODM, but RODM has not returned a value.
A
Active. HCL Workload Automation for Z has received a value from RODM and the special resource field has been updated.

RODM support is implemented using the RODM USER API. HCL Workload Automation for Z loads RODM interface module EKGUAPI, which must be accessible via LINKLST or STEPLIB.

The RODM subtask is attached by the subsystem task. The subtask creates a new queue (RODQ) and a table with 1 entry for each active subscription. The table also contains 1 system entry for each connected RODM subsystem. Each subscription entry contains data received from RODM for the subscription and parameter list areas, including the ECB, used for all asynchronous requests.

RODM and HCL Workload Automation for Z interface in this way:
  • The queue server contains a work-to-do loop, which waits on an ECB list. Initially, this ECB list contains a stop ECB and a queue ECB. The RODM subtask connects and disconnects RODM.
  • Inbound subscription messages are placed on the RODM queue (RODQ) by the HCL Workload Automation for Z subsystem task. When a message is detected on the queue, a new subscription entry is added to the table. For the first subscription request to a RODM subsystem, a system entry is also created in the table and a system ECB and a RODM-stop ECB are added to the ECB list.
  • A query is issued to the RODM subsystem. The current value is translated and then passed to the writer queue (WTRQ).
  • A subscribe is performed and the program goes into WAIT on the ECB list.
  • When the subscribe ECB is posted by RODM, the RODM subtask retrieves information from the subscription queue and builds a resource event, which it puts on the WTRQ. All other entries in the table are checked for posted ECBs and the program then returns to a WAIT state.
  • The event manager analyzes the incoming resource event and updates the special resource field.

This processing continues until the subtask is stopped or the RODM subsystem ends. If RODM ends, entries in the table are reset. The entries are reprocessed when RODM returns. If the RODM subtask ends, requests outstanding are processed when the subtask is restarted. If HCL Workload Automation for Z is stopped, all subscriptions are deleted.