| Previous | Next |
| ERROR_CANNOT_ACCEPT_TRANSACTED_WORK | ERROR_BAD_CLUSTERS |
ERROR_CANNOT_ABORT_TRANSACTIONS
The RM failed to drain transactional work and terminated its transactional service
ERROR_CANNOT_ABORT_TRANSACTIONS belongs to the Windows Kernel Transaction Manager transaction-processing model. A resource manager may need to abort outstanding transactions during a fatal condition or shutdown. This error states that too many transactions could not be aborted and the RM has shut down. It is therefore a terminal RM state transition, not merely one failed RollbackTransaction call.
Preserve the transaction and RM logs and collect the events immediately before shutdown. Identify transactions stuck in prepare, in-doubt, or superior-coordinator communication and check whether notification completions were missing. After restart, follow KTM recovery processing and reconcile every durable enlistment before accepting new work. Repeatedly restarting the RM without resolving the blocked transaction set can reproduce the shutdown and can make application retries ambiguous because some original transactions may have durable outcomes.
What to inspect
- Collect IDs and states of outstanding transactions that resisted abort.
- Check coordinator connectivity and missing RM completion notifications.
- Complete RM and enlistment recovery before reopening the service to transactional clients.
References
- Microsoft: KTM recovery processing and presumed abort
- Microsoft: KTM transaction notifications
- Microsoft: creating and recovering a KTM resource manager
- MS-DTCO: superior and subordinate transaction-manager roles
Looking for a different code? Search another status or error code.