| Previous | Next |
| ERROR_TM_INITIALIZATION_FAILED | ERROR_TRANSACTION_NOT_JOINED |
ERROR_RESOURCEMANAGER_READ_ONLY
KTM determined that this resource manager is read-only for the transaction
ERROR_RESOURCEMANAGER_READ_ONLY belongs to the Windows Kernel Transaction Manager transaction-processing model. KTM enlistments can become read-only when a resource manager no longer needs to participate in the outcome. ReadOnlyEnlistment removes that enlistment from commit decision participation and Microsoft notes that a read-only enlistment is not durably recorded for recovery. This status therefore describes transaction participation, not file-system read-only permissions or an ACL failure.
Inspect the resource manager notification path and the point where it declares the enlistment read-only. If the RM really modified durable state, treating it as read-only is a protocol bug because the coordinator may complete without waiting for prepare or recovery work from that participant. If no state changed, the status can be expected information. Log the transaction ID, enlistment ID, notifications already received, and whether the RM called ReadOnlyEnlistment before closing its handle.
What to inspect
- Separate KTM read-only enlistment state from read-only media or access rights.
- Verify that the RM did not persist changes before declaring itself read-only.
- Record notification order and the ReadOnlyEnlistment call for the affected enlistment.
References
- Microsoft: read-only enlistment semantics
- Microsoft: KTM enlistment objects and notifications
- Microsoft: KTM transaction notifications
Looking for a different code? Search another status or error code.
