3.2.7.15 Enlistment Commit Complete

The Enlistment Commit Complete event MUST be signaled with an Enlistment object.

If the Enlistment Commit Complete event is signaled, the Core Transaction Manager Facet (section 1.3.3.3.1) MUST perform the following actions:

  • Remove the enlistment from the transaction's Phase Two Enlistment list.

  • If the Phase Two Enlistment list of the transaction object referenced by the provided Enlistment object is now empty:

    • If the transaction's Single Phase Commit flag (defined in section 3.2.1) is FALSE and the transaction state is not Failed to Notify (section 3.2.1.3.13):

      • Signal the Commit Complete (section 3.8.7.3) event on the transaction's Superior Enlistment's Transaction Manager facet with the transaction's Superior Enlistment object.

    • Signal the Forget Transaction (section 3.2.7.22) event on the Core Transaction Manager Facet with the transaction object of the Enlistment.