日志報錯代碼 : [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 期間回滾了一個或多個本地事務資源。
2、原因 1由于數據庫資源(預執行的事務)沒有顯示commit,connection沒有關閉,導致一直沒有釋放資源,等到超時的時候或者機制自動啟動回收資源的時候,會把數據庫緩沖的事務回滾。
2數據庫緩沖資源有限,如果數據庫操作或事務量很大,超過時間限制的也會回滾,或者還沒輪到執行的事務,也會回滾。
3、解決方法 對于本信貸系統原因,是底層代碼把數據庫的自動提交屬性設置為false,因此在頁面代碼必須顯示commit,否則就一直不會釋放資源。(直接原因,是頁面代碼漏了commit()方法)。 由于該事務是select語句,并沒有對數據庫進行修改,所以即使回滾了,也沒有引起生產上的故障。但是若是update、insert等事務,就會執行不了。
參考資料 http://bbs.csdn.net/topics/90165953 http://www.webspherechina.net/Question/14706
新聞熱點
疑難解答