日志報錯代碼 : [10-6-12 9:44:01:602 GMT+08:00] 0000004d LocalTranCoor W WLTC0033W: 清除 LocalTransactionContainment 時,資源 jdbc/DB2 Universal JDBC Driver DataSource 回滾。 [10-6-12 9:44:01:604 GMT+08:00] 0000004d LocalTranCoor W WLTC0032W: 清除 LocalTransactionContainment 期間回滾了一個或多個本地事務(wù)資源。
2、原因 1由于數(shù)據(jù)庫資源(預(yù)執(zhí)行的事務(wù))沒有顯示commit,connection沒有關(guān)閉,導(dǎo)致一直沒有釋放資源,等到超時的時候或者機制自動啟動回收資源的時候,會把數(shù)據(jù)庫緩沖的事務(wù)回滾。
2數(shù)據(jù)庫緩沖資源有限,如果數(shù)據(jù)庫操作或事務(wù)量很大,超過時間限制的也會回滾,或者還沒輪到執(zhí)行的事務(wù),也會回滾。
3、解決方法 對于本信貸系統(tǒng)原因,是底層代碼把數(shù)據(jù)庫的自動提交屬性設(shè)置為false,因此在頁面代碼必須顯示commit,否則就一直不會釋放資源。(直接原因,是頁面代碼漏了commit()方法)。 由于該事務(wù)是select語句,并沒有對數(shù)據(jù)庫進行修改,所以即使回滾了,也沒有引起生產(chǎn)上的故障。但是若是update、insert等事務(wù),就會執(zhí)行不了。
參考資料 http://bbs.csdn.net/topics/90165953 http://www.webspherechina.net/Question/14706
新聞熱點
疑難解答
圖片精選