Yesterday one of my users got this error, and this is how I resolved it.
ORA-01591: lock held by in-doubt distributed transaction 10.xx.xxxxx
To read more about Distributed Transaction errors go here
Following table shows the pending transactions, You can either commit or rollback them to resolve.
select *
from DBA_2PC_PENDING
where state='prepared';
To force rollback all, generate the statements, and run them all
select 'rollback force '''||local_tran_id||''';' sql_stmt
from DBA_2PC_PENDING
where state='prepared';
To force Commit all, generate the statements, and run them all
select 'commit force '''||local_tran_id||''';' sql_stmt
from DBA_2PC_PENDING
where state='prepared';
No comments:
Post a Comment