| Previous | Next |
| STATUS_CRM_PROTOCOL_ALREADY_EXISTS | STATUS_CRM_PROTOCOL_NOT_FOUND |
STATUS_TRANSACTION_PROPAGATION_FAILED
STATUS_TRANSACTION_PROPAGATION_FAILED means that a transaction could not be transferred to the component that needed to participate. It is not a commit result and does not prove that data has been rolled back; it says the handoff of transactional context failed before the intended participant could proceed.
In KTM, resource managers must be associated with a transaction manager and must explicitly enlist before they receive transaction notifications. Therefore diagnosis should preserve the transaction identifier, the intended resource manager or propagation protocol, and the point at which the handoff stopped.
The transaction context could not be propagated
- Capture the transaction ID, resource-manager identity, requested propagation mechanism, and any preceding registration error.
- Check whether the destination component is online and has recovered before repeating the operation.
- Do not report the business operation as committed merely because the originating component still has a live transaction handle.
References
- Microsoft: Kernel Transaction Manager overview
- Microsoft: understanding KTM transaction-processing components
- Microsoft Open Specifications: NTSTATUS values
Looking for a different code? Search another status or error code.