IMS as a resource manager
A resource manager controls a protected resource.
- Provides an application programming interface (API) to allow application programs to access its resources
- Logs changes to data before making the changes permanent
- Logs unit of work status
- Participates in the commit or backout actions for updated resources
- Contains recovery mechanisms to restore data to a previous state
For its own resources, IMS is both the sync-point manager and the resource manager.
- Register with z/OS® Resource Recovery Services (RRS) as a resource manager
- Participate in the sync-point process
- Express interest in the unit of work
- Recover its unit of work status after an outage
Registration
A component of RRS provides registration services so that IMS can identify itself as a resource manager. By registering, IMS is provided a set of services to aid in maintaining resource consistency associated with the protected conversation.
IMS registers each time a control region is started for a DB/DC active system on a z/OS system with the recovery platform support. In an XRF environment, the active system registers during its restart. The alternate system registers at the time of takeover.
Expressing interest
In addition to registering and supplying resource manager exit routines for specific stages of the two-phase commit protocol, IMS must also express interest in participating in the two-phase commit process for a particular unit of recovery.
Resolution of incomplete interests
In the event of an IMS or z/OS outage, during the IMS restart, the incomplete UR expressions of interest must be resolved.
RRS maintains unit of recovery information (such as identifier, state, and resource manager private data), which RRS presents to the restarting resource managers that previously expressed interest.
Sync-point participation
After IMS successfully registers and restarts, it supplies addresses of its exit routines to RRS. Several exit routines (such as prepare, commit, and backout) represent specific points in the two-phase commit protocol, which IMS can call to participate in the process.