Commit or Rollback within a Flow (com.ibi.agents.XDCommitAgent)

Syntax:

com.ibi.agents.XDCommittAgent

iIT Service Object:

operations: Commit/Rollback during flow

Description:

Like the XDCatchAgent, this service serves as a placeholder for a process flow function. Unless the Supports Local Transaction attribute is set in the listener of the channel, this node is a functional NOP.

When operating in Local Transaction mode, database and other operations begun by nodes within the flow are committed or rolled back based on the final status of the flow itself. The commit or rollback is performed within the constraints of the local transaction capability of the server.

The XDCommitAgent, when encountered in a flow, causes a commit or a rollback operation to take place immediately. This allows two or more transactions in a single flow. Use of this capability is dependent on application design.

The agent is configured for commit or rollback. This is not possible using iFL.

When encountered, the commit handler awaits completion of all other threads in the flow, if any. It then calls the commit manager to commit or roll back work established to date. This in turn causes all open connections to be released. The specific action on a commit or roll back is dependent on the resource being affected. Note that mis-specification of set or synch waits can cause the flow to enter a deadlock condition.

Once committed, the data cannot be rolled back, regardless of the manner in which the flow actually ends. The node is a punctuation within the flow, and users should consider actions subsequent to the commit or rollback as a separate flow.

A common use of such a capability is with a Catch node. If catch traps an error, the error edge might issue a roll back and then proceed to take other action to record or recover from the error.

Edges:

The following table lists the available line edges for the Channel Information Service (com.ibi.agents.XDChanInfoAgent).

Line Edge

Description

OnError

Error

OnSuccess

Success

OnFailure

Failure

OnCustom

  • OnError
  • OnSuccess
  • OnFailure
  • fail_operations