Cleaning Up After Heuristic Completion
If a heuristic decision is made for a MarkLogic Server branch of an XA transaction and the Transaction Manager subsequently completes the transaction, there are two possible outcomes:
The global transaction completes with an outcome that matches the heuristic decision. No further action is required.
The global transaction completes with an outcome that does not match the heuristic decision. Take the clean up steps listed below.
If the global transaction outcome does not agree with the heuristic decision, you may need to do the following to clean up the heuristic decision:
Take whatever manual steps are necessary to restore data integrity for the heuristically completed branch.
If the heuristic decision was remembered by setting the
remember
parameter ofxdmp:xa-complete()
to true, callxdmp:xa-forget()
to clean up the remaining transaction state information.