What does NTSTATUS 0xC0190055 (STATUS_TRANSACTION_OBJECT_EXPIRED) mean?

 
Previous Next
STATUS_TRANSACTION_NOT_ROOT STATUS_COMPRESSION_NOT_ALLOWED_IN_TRANSACTION

STATUS_TRANSACTION_OBJECT_EXPIRED

STATUS_TRANSACTION_OBJECT_EXPIRED means that the associated transaction manager or resource manager was closed, leaving a previously obtained handle unusable. It is a lifetime failure: retaining the handle across manager shutdown, unload, or recovery boundaries is not valid.

Unlike STATUS_TRANSACTION_NOT_FOUND, this status commonly follows a handle that did exist. Unlike STATUS_TRANSACTION_NOT_ACTIVE, it points to the closure of the manager relationship rather than only a terminal transaction state.

A once-valid transaction object handle has expired

  • Track ownership of TM, RM, enlistment, and transaction handles, including the teardown path that closed the manager.
  • Close stale handles and reopen the required objects only after the transaction manager is online and the resource manager has recovered.
  • Avoid caching KTM handles in long-lived workers without a lifecycle and cancellation strategy.

References


Looking for a different code? Search another status or error code.