Oracle: lock held by in-doubt distributed transaction
Oracle: lock held by in-doubt distributed transaction
Summary
This article describes the error message triggered as a result of a locked resource in a pending transaction as well as the solution.
Error message:
"ORA-01591: lock held by in-doubt distributed transaction"
Information
An attempt was made to access resource that is locked by a dead two-phase commit transaction that is in prepared state.
Solution
Warning: Please consider that the solution provided below requires a complete domain restart!
- Stop all COO-services of the affected domain.
Note: Before stopping the COO-services ensure that all kernel instances have been stopped. - Check if there are any pending transactions left on the Oracle database.
select * from sys.dba_pending_transactions select * from dba_2pc_pending
- If there are any transactions left, execute a rollback according to http://docs.oracle.com/cd/B28359_01/server.111/b28310/ds_txnman005.htm#A...
- Restart all stopped COO-services
- Restart the stopped kernel instances and thoroughly test the domain
Applies to
- Fabasoft Folio (all versions)
- Fabasoft eGov-suite (all versions)
while using an Oracle database