OTMA commit processing

OTMA can control how IMS commits transactions: they can be either commit-then-send or send-then-commit.

Definitions:
  • For commit-then-send transactions (the IMS standard flow), IMS processes the transaction and commits the data before sending a response to the OTMA client.
  • For send-then-commit transactions, IMS processes the transaction and sends a response to the OTMA client before committing the data.

Q:  What is the major difference between the commit-then-send processing option and the send-then-commit processing option?

A:  The commit-then-send processing option commits the transaction output as part of sync-point processing, and then delivers the output to the client later.

The send-then-commit processing option delivers the transaction output first, receives an acknowledgment from the client, and then completes the sync-point processing.

Q:  What happened to the commit mode 0 and commit mode 1 processing options?

A:  Commit mode 0 is now called commit-then-send, and commit mode 1 is called send-then-commit. Because the terms commit-then-send and send-then-commit are more intuitive when referring to these processing options, the terms commit mode 0 and commit mode 1 are no longer used.

For an OTMA transaction, a client can receive one of the following from IMS:
  • An ACK message for the input, followed by any output messages.

    In addition send-then-commit transactions will also receive an ACK message followed by a deallocate flow (indicated when the commit-confirmation flag in the message-control information section of the message prefix is set to either Committed or Aborted).

  • A NAK message with a sense code.
  • A NAK message with the processing flag set to Error Message Follows in the message-control information section of the message prefix. The subsequent message has the same message prefix as the NAK message and has the IMS error message in the application-data section of the message prefix.