| Previous | Next |
| ERROR_TXF_METADATA_ALREADY_PRESENT | ERROR_TRANSACTION_REQUIRED_PROMOTION |
ERROR_TRANSACTION_SCOPE_CALLBACKS_NOT_SET
Transaction-scope infrastructure was used before its callback handler was initialized
ERROR_TRANSACTION_SCOPE_CALLBACKS_NOT_SET belongs to the Windows Kernel Transaction Manager transaction-processing model. This condition belongs to transaction-scope integration rather than the basic CreateTransaction, CommitTransaction, and RollbackTransaction path. The scope mechanism expects a handler to provide callbacks before code enters the scope. Without those callbacks, the runtime cannot perform the context transitions associated with entering and leaving transactional work.
Inspect library initialization order and per-process registration of the transaction scope handler. A plugin can invoke transaction-aware code before the host has initialized the scope layer, or shutdown can tear down callbacks while workers still enter scopes. Record which module installs the callbacks and which thread first encounters the error. Avoid masking the failure by creating a standalone KTM transaction because that bypasses the framework scope semantics the caller expected.
What to inspect
- Find the transaction-scope callback registration point in the host or framework.
- Check startup and shutdown races with worker threads entering scopes.
- Keep basic KTM transaction creation separate from framework-specific scope initialization.
References
- Microsoft: KTM programming model and transaction handles
- Microsoft: Kernel Transaction Manager overview
- Microsoft: KTM transaction, TM, RM, and enlistment functions
Looking for a different code? Search another status or error code.