| Previous | Next |
| STATUS_INDOUBT_TRANSACTIONS_EXIST | STATUS_ROLLBACK_TIMER_EXPIRED |
STATUS_TM_VOLATILE
A volatile transaction manager cannot provide durable recovery semantics
KTM supports volatile transaction managers for work that does not need recovery after process or system failure. Operations that depend on reopening objects, replaying records, or preserving identity across restart require a durable transaction manager backed by a log.
The fix is architectural: use a durable TM when the resource manager promises durable outcome or recovery. Creating another volatile transaction manager or retrying the same operation does not add persistence.
What to inspect
- Confirm how the transaction manager was created and whether a log path was supplied.
- Identify which requested operation requires persistence or recovery.
- Ensure durable resource managers are not attached to a volatile-only design.
- Document failure semantics for process or machine restart before changing TM type.
References
- Microsoft Open Specifications: NTSTATUS values
- Microsoft: transaction manager objects
- Microsoft: writing a resource manager
- Microsoft: KTM objects and their relationships
Looking for a different code? Search another status or error code.