2012-10-19 29 views
2

我正在使用訪問oracle數據庫的應用程序。有時,該數據庫上的對象(行)會被我的應用程序外部的進程鎖定。JBoss arjuna TransactionReaper在超時時不會回滾

我遇到的問題是,當交易達到事務超時,阿朱協調員試圖回滾事務,但它

堆棧跟蹤沒有成功的以下

09:15:42,494 WARN [InterceptorsFactory] EJBTHREE-1246: Do not use InterceptorsF 
actory with a ManagedObjectAdvisor, InterceptorRegistry should be used via the b 
ean container 
09:16:12,287 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.Transactio 
nReaper_18] - TransactionReaper::check timeout for TX -7ffd9392:a9b:507ff0a4:97 
in state RUN 
09:16:12,292 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicActio 
n_58] - Abort of action id -7ffd9392:a9b:507ff0a4:97 invoked while multiple thre 
ads active within it. 
09:16:12,294 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.CheckedAct 
ion_2] - CheckedAction::check - atomic action -7ffd9392:a9b:507ff0a4:97 aborting 
with 1 threads active! 
09:16:12,789 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.Transactio 
nReaper_18] - TransactionReaper::check timeout for TX -7ffd9392:a9b:507ff0a4:97 
in state CANCEL 
09:16:13,291 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.Transactio 
nReaper_18] - TransactionReaper::check timeout for TX -7ffd9392:a9b:507ff0a4:97 
in state CANCEL_INTERRUPTED 
09:16:13,293 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.Transactio 
nReaper_6] - TransactionReaper::check worker Thread[Thread-11,5,jboss] not respo 
nding to interrupt when cancelling TX -7ffd9392:a9b:507ff0a4:97 -- worker marked 
as zombie and TX scheduled for mark-as-rollback 
09:16:13,297 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.Transactio 
nReaper_11] - TransactionReaper::check failed to mark TX -7ffd9392:a9b:507ff0a4: 
97 as rollback only 

我使用jboss-5.1.0.GA,Hibernate 3.3.1.GA和Oracle 9.2.08。

我已經做了幾個測試,而行被鎖定回滾不起作用。自事務超時後已經過去的時間無關緊要。 如果我在事務超時後解鎖行,那麼回滾將在那一刻開始。

我在網上做了一些研究,但沒有發現完全相同的錯誤。

謝謝。

迭戈。

回答

0

在這裏,我找到了如何在JBoss上啓用日誌記錄阿朱:

http://germanogiudici.wordpress.com/2011/09/02/how-to-log-transaction-informations-in-jboss-4-2-3-ga/

我希望這有助於獲得對正在發生的事情的詳細信息。

我到今天爲止發現的是,保存事務的workerThread在cancel()方法上沒有完成。但是,就目前的日誌水平而言,我看不到發生了什麼。

我會在調試後發佈更多新聞。

注意:jboss 5.1中事務的xml配置是jbossts-properties.xml而不是jbossjta-properties.xml。