| Previous | Next |
| XACT_E_NOASYNC | XACT_E_NOISORETAIN |
XACT_E_NOENLIST
Resource access is not transactional until enlistment succeeds
XACT_E_NOENLIST means a resource manager was unable to create the enlistment that connects its local work to the distributed transaction. Opening a database, queue, or custom durable store is not enough: the resource manager must register with the transaction manager and agree to receive prepare, commit, abort, and recovery notifications.
Capture the resource-manager identifier, transaction identity, and the exact enlist call rather than diagnosing only the later business operation. Common categories include stale resource-manager registration, an invalid transaction object, service or proxy failure, and provider configuration that disables distributed enlistment. Any local work performed after enlistment failed must be rolled back or treated as nontransactional.
Enlistment boundary to verify
- Resource-manager registration and persistent identifier.
- Transaction object or propagation cookie supplied to the provider.
- Whether local work started before enlistment returned success.
- MSDTC and provider events emitted at the enlist call.
References
- Microsoft: IResourceManager enlistment behavior
- Microsoft MS-DTCO: resource-manager responsibilities
- The Open Group: XA resource-manager participation
Looking for a different code? Search another status or error code.
