Coordinating updates to local resources
The recoverable local resources managed by a CICS® region are files, temporary storage, and transient data, plus resource definitions for terminals, typeterms, connections, and sessions.
Each local resource manager can write UOW-related log records to the local system log, which the CICS recovery manager may subsequently be required to re-present to the resource manager during recovery from failure.
To enable the CICS recovery manager to deliver log records to each resource manager as required, the CICS recovery manager adds additional information when the log records are created. Therefore, all logging by resource managers to the system log is performed through the CICS recovery manager.
During syncpoint processing, the CICS recovery manager invokes each local resource manager that has updated recoverable resources within the UOW. The local resource managers then perform the required action. This provides the means of coordinating the actions performed by individual resource managers.
- If the failure occurs during commit processing, the UOW is marked as commit-failed and is shunted awaiting resolution of whatever caused the commit failure.
- If the failure occurs during backout processing, the UOW is marked as backout-failed, and is shunted awaiting resolution of whatever caused the backout to fail.
- One resource backs out successfully
- While committing this successful backout, the commit fails
- The other resource fails to back out
These events leave one data set commit-failed, and the other backout-failed. In this situation, the overall status of the UOW is logged as backout-failed.
During emergency restart following a CICS failure, each UOW and its state is reconstructed from the system log. If any UOW is in the backout-failed or commit-failed state, CICS automatically retries the UOW to complete the backout or commit.