The SYNCPOINT command

The SYNCPOINT command is used to commit recoverable resources. In a DTP environment, the effect of the SYNCPOINT command is propagated across all conversations using sync level 2 or MRO. So, no matter how many DTP transactions are connected by conversations at sync level 2, the distributed process should be designed such that only one of the transactions initiates syncpoint activity for the distributed unit of work. When issuing the SYNCPOINT command, this transaction, known as the syncpoint initiator must be in send state (state 2), pendreceive state (state 3), or pendfree state (state 4) on all its conversations at sync level 2. Any transaction that receives the syncpoint request becomes a syncpoint agent.

A syncpoint agent is in receive state on its conversation with the syncpoint initiator and becomes aware of the syncpoint request by testing EIBSYNC (CDBSYNC in the APPC basic interface) after issuing a RECEIVE command. If it decides to respond positively by issuing SYNCPOINT, it must be in an appropriate state on all the conversations with its own agents, for which it has become syncpoint initiator. If an agent transaction responds negatively to a syncpoint request by issuing SYNCPOINT ROLLBACK, the initiator sees EIBRLDBK set (X'FF'), which must be tested on return from the SYNCPOINT command. (This is also true for APPC basic conversations.)

Your transaction design should ensure that all participating transactions are in the correct conversation state before a SYNCPOINT command is issued.

When a syncpoint agent receives the syncpoint request, it is given the opportunity to respond positively (to commit recoverable resources) with a SYNCPOINT command or negatively (to back out recoverable resources) with a SYNCPOINT ROLLBACK command. For information on backing out recoverable resources, see The SYNCPOINT ROLLBACK command .

Examples of these commands are given in Synchronizing two CICS systems and Synchronizing three or more CICS systems.

[[ Contents Previous Page | Next Page Index ]]