计算机报名显示事务已被锁死,ORA-01591错误处理: 锁定已被有问题的分配事务处理20.18.156406挂起(转载)...
現象:dms中幾乎所有的入庫出庫都報錯
2005-12-10 09:12:53 [ERROR] com.topup.ent.kroraina.model.sysmgmt.usersqlquery.USqlQueryDAO (USqlQueryDAO.java???????????? :4255) - error=java.sql.SQLException: ORA-01591: 鎖定已被有問題的分配事務處理20.18.156406掛起
ORA-01591: 鎖定已被有問題的分配事務處理20.18.156406掛起 ORA-06512: 在"XXDMS.P_UPDATEITEMCOST", line 45 ORA-06512: 在"XXDMS.P_ORDCREATE_AF_10191", line 15 ORA-06512: 在"XXDMS.P_ORDCREATE_AF_10170", line 115 ORA-06512: 在line 1
查到XXDMS.P_UPDATEITEMCOST", line 45? 是查詢t_order_trans表,到OEM里看
進入鎖,根本沒發現相關的對象被鎖定,
重啟數據庫之后做入庫單還是不行 報同樣的錯誤
查看視圖DBA_2PC_PENDING,發現該事務的痕跡
看來出錯原因:遠程事務失敗,但是又沒有返回造成分布式事務掛死,從而鎖定了行,數據庫中有操作
,遠程操作
于是登陸數據庫
COMMIT FORCE '20.18.156406';
然后查看DBA_2PC_PENDING發現狀態已經改為'COMMIT FORCE',SELECT該表相關行,一切正常。至此,故障解決。
總體來看,直接INSERT ...?還是很危險的,遇上不能正常返回就出問題了。Oracle的文檔是推薦使用包或者存儲過程來解決,此后建議同事改用此方法,目前已經測試通過。
Trackback:
總結
以上是生活随笔為你收集整理的计算机报名显示事务已被锁死,ORA-01591错误处理: 锁定已被有问题的分配事务处理20.18.156406挂起(转载)...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据库计算机报告,外文数据库计算机检索报
- 下一篇: 计算机病毒与恶意代码期末总结