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.