2009-02-28 94 views
1

我們在我們的WL服務器上隨機獲取如下警告。我們希望更好地瞭解這些警告是什麼,以及我們應該怎樣做以避免它們。 86606 Weblogic「放棄交易」警告

放棄事務之後秒: 的Xid = BEA1-52CE4A8A9B5CD2587CA9(14534444), 狀態=犯下,numRepliesOwedMe = 0,numRepliesOwedOthers = 0,秒 因爲開始= 86605,秒 左= 0,XAServerResourceInfo [JMS_goJDBCStore] =(ServerResourceInfo [JMS_goJDBCStore] =(state = committed,assigned = go_server),xar = JMS_goJDBCStore,re-Registered = true),XAServerResourceInfo [weblogic.jdbc.wrapper.JTSXAResourceImpl] = (ServerResourceInfo [weblogic.jdbc .wrapper.JTSXAResourceImpl] =(state = new,assigned = none),xar = weblogic.jdbc.wrapper.JTSXAResourceImpl @ 1a8fb80,re-Registered(weblogic.jdbc = t3://10.6.202.37:18080}),本地 屬性= ({weblogic.transaction.recoveredTransaction =真}),OwnerTransactionManager = ServerTM [ServerCoordinatorDescriptor =(CoordinatorURL = go_server + 10.6.202.37:18080 +去+ T3 +, XAResources = {JMS_goJDBCStore, weblogic.jdbc.wrapper.JTSXAResourceImpl},NonXAResources = {})] ,CoordinatorURL = go_server + 10.6.202.37:18080 + 90 + T3 +)

我明白了BEA explanation

錯誤:秒秒後放棄交易:TX

說明:當交易被放棄,交易 知識 從事務管理 這是試圖推動 交易完成後刪除。 JTA 配置屬性 AbandonTimeoutSeconds確定事務管理器應該如何長 持久嘗試提交或 回滾事務。

原因:資源或參與的服務器可能 一直在爲 AbandonTimeoutSeconds週期的持續時間不可用。

操作:檢查參與資源的啓發式 完成並更正任何數據不一致。

我們觀察到,您可以通過刪除* .tlog文件來擺脫這些警告,但這似乎不是處理警告的正確策略。

該警告提及JMS和我們的JMS商店。我們確實使用JMS。我們只是不明白爲什麼交易掛在那裏,爲什麼他們會被「拋棄」?

回答

2

我知道這不是很滿意,但我們確實在託管在WLS 7

我們的應用程序是一個事件處理後端,主要由JMS帶動我們的應用程序啓動之前刪除* .tlog文件。我們對保留WLS重啓過程中的事務不感興趣。如果在關機前沒有完成,重啓後往往不會完成。所以這樣做* .tlog清理只是消除了一些警告和潛在的片狀行爲。

順便說一下,我不認爲JMS是任何這些的基礎。至少不是我所知道的。

順便說一句,我們從JDBC JMS存儲移動到本地文件。據說這是更好的表現,我們不需要使用JDBC獲得的位置獨立性。如果這也描述你的情況,也許移動到本地文件將消除你的根本原因?

+0

你知道爲什麼一個標準的網絡應用程序會有應用程序關閉時沒有完成的事務嗎?我們的大部分交易都非常快速且不經常發生。這只是隨機的情況,在交易正在進行的同時,這個過程被殺死了嗎? – 2009-03-08 13:55:10