3.6.2.1 Reenlist Time-Out Timer

The timer MUST be set when the transaction manager communicating with a resource manager facet receives a TXUSER_REENLIST_MTAG_REENLIST (section 2.2.10.3.1.1) message on a CONNTYPE_TXUSER_REENLIST (section 2.2.10.3.1) connection. The timer MUST be canceled when the CONNTYPE_TXUSER_REENLIST connection is disconnected.

The timer has no default value. The initial value of the timer MUST be provided in the TXUSER_REENLIST_MTAG_REENLIST message. The minimum value of the timer MUST be zero, which means that the timer never generates a timer event. In this case, the Reenlist Time-Out Timer Event (section 3.6.6.1) is never signaled, and the timeout reply message triggered by this event is never sent.

When the timer is initialized, the transaction manager communicating with a resource manager facet MUST provide an Enlistment object to associate with the timer. When the timer expires, the same Enlistment object MUST be provided with the timer notification. The transaction manager communicating with a resource manager facet MUST provide a distinct Reenlist Timeout timer instance for each CONNTYPE_TXUSER_REENLIST connection.