Send-then-commit flow
The send-then-commit (commit-mode 1 or CM1) flow sends IMS output before IMS completes synchronization-point (hereafter referred to as sync-point) processing.
- The transaction pipe is not synchronized.
- The synchronization level is specified as
None
in the state-data section. Therefore, IMS does not request a response (an ACK) when sending output.
The flow is illustrated in the following figure. Following the figure is a sequential list that provides more details on the flow.
The sequence of flow shown in the above figure is:
- Transaction initiated
- Transaction inserted to SMB
- GU call followed by ISRT to IOPCB
- Sync point started
- Output is sent. No response is requested; response is requested only when sync=confirm is specified.
- Commit confirmed; IMS completed sync point
- Transaction completes
An example of the flow of the message activity for a single transaction pipe is illustrated in the following figure. Following the figure is a sequential list that provides more details on the flow.
The sequence of flow shown in the above figure is:
- Tran1
- Tran2 request/response
- Tran3 request/response
- ACK to Tran3
- Output of Tran1
- ACK to Tran2
- Tran4
- Output of Tran4
- Confirm of Tran4
- Output of Tran2
- Output of Tran3
- Confirm of Tran1
- Confirm of Tran3
- Confirm of Tran2
As shown in the preceding figure, the client can receive a confirmation for output before receiving the actual output, because z/OS® cross-system coupling facility (XCF) does not guarantee that all messages are sent in sequential order. The client must be able to handle this situation during message-receipt processing or by using the XCF Message exit routine.
If a send-then-commit transaction does not run
successfully, OTMA sends message DFS2082
to the client
and does not perform an insert to the IOPCB.