3.4.7.7 Create Transaction Failure

The Create Transaction Failure event MUST be signaled with the following arguments:

  • A transaction object.

  • A value indicating the failure reason. The reason MUST be set to one of the following values:

    • Log Full

    • No Mem

    • Duplicate

If the Create Transaction Failure event is signaled, the transaction manager MUST perform the following actions:

  • If the transaction's connection list contains a connection of type CONNTYPE_TXUSER_BEGINNER (section 2.2.8.1.1):

    • Send the matching message for the following reason codes:

      • Log Full: TXUSER_BEGINNER_MTAG_BEGIN_LOG_FULL (section 2.2.8.1.1.3)

      • No Mem: TXUSER_BEGINNER_MTAG_BEGIN_NO_MEM (section 2.2.8.1.1.4)

    • Set the connection state to Ended.

  • Otherwise, if the transaction's connection list contains a connection of type CONNTYPE_TXUSER_BEGIN2 (section 2.2.8.1.2) or CONNTYPE_TXUSER_PROMOTE (section 2.2.8.1.3):

    • Send a TXUSER_BEGIN2_MTAG_SINK_ERROR (section 2.2.8.1.2.5) message:

      • The Error field MUST be set to the value matching the following reason codes:

        • Log Full: TRUN_TXBEGIN_ERROR_BEGIN_LOG_FULL

        • No Mem: TRUN_TXBEGIN_ERROR_NO_MEM

        • Duplicate: TRUN_TXBEGIN_ERROR_DUPLICATE_GUID

    • Set the connection state to Ended.