| Previous | Next |
| STATUS_TM_VOLATILE | STATUS_TXF_ATTRIBUTE_CORRUPT |
STATUS_ROLLBACK_TIMER_EXPIRED
The rollback path has already been scheduled or executed
STATUS_ROLLBACK_TIMER_EXPIRED belongs to transaction rollback timing. It indicates that a new rollback could not be scheduled because the earlier rollback timer has already expired or the rollback work is already queued.
This can appear in code that tries to recover by repeatedly requesting rollback after timeout, cancellation, or resource exhaustion. The first rollback request may already have moved the transaction into a terminal or pending-terminal path.
What to check
- Repeated timeout handlers that call rollback more than once for the same transaction.
- Whether another thread already queued rollback or cleanup.
- Transaction state transitions around prepare, commit, rollback, and recovery.
- Whether the caller should wait for completion notification instead of scheduling another rollback.
Useful distinction
This status is not saying the file operation itself timed out. It is about rollback scheduling state inside the transaction system.
References
- Microsoft: Transactional NTFS overview
- Microsoft: How to use Transactional NTFS
- Microsoft: Kernel Transaction Manager
- Microsoft Open Specifications: NTSTATUS values
Looking for a different code? Search another status or error code.