How the Integration Server Persists the State of a Transaction
At the beginning of a transaction, Integration Server creates a unique transaction ID called an XID. The Integration Server stores the XID and the global state of the transaction in a persistent store called the XA recovery store. At the beginning of each subsequent action taken for the transaction, Integration Server stores the global state of the transaction and the state of each resource that is participating in the transaction in the XA recovery store. If Integration Server ends abnormally, Integration Server can retrieve the state information from the XA recovery store and try to resolve uncompleted transactions, if there are any.
For Integration Server to store state information, the following conditions must be met:
The watt.server.transaction.xastore.performXALogging server configuration parameter must be set to true.
Integration Server writes transaction information to the XA recovery store only when this property is set to true, which is the default.
The transaction involves multiple resources and all the resources are XA-enabled (that is, the resources support the JTA and XA standards and keep persistent records of transactions that have been prepared or heuristically committed).
The transaction is defined as an XA transaction. For example, if the transaction involves the
webMethods Adapter for JDBC, the transaction would be defined as an XA transaction on the adapter's connections to the resources.
Note: | As with most features that improve reliability and recoverability, this feature may increase the overhead associated with processing XA transactions. |