1 Reply Latest reply on Aug 29, 2003 7:32 AM by adrian.brock

    After a while: Unable to commit

    lion78at

      Hello!

      We implemented an enterprise app running with JBoss using entity, session and message-driven beans.

      The app works fine for a while, but then the following exceptions are thrown:

      2003-08-28 21:41:51,167 WARN [org.jboss.tm.TransactionImpl] XAException: tx=TransactionImpl:XidImpl [FormatId=257, GlobalId=nb-lob//20123, BranchQual=] errorCode=XAER_RMERR
      javax.transaction.xa.XAException
      at org.jboss.mq.SpyXAResource.commit(SpyXAResource.java:105)
      at org.jboss.tm.TransactionImpl.commitResources(TransactionImpl.java:1420)
      at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:365)
      at org.jboss.jms.asf.StdServerSession.onMessage(StdServerSession.java:322)
      at org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:601)
      at org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:415)
      at org.jboss.mq.SpySession.run(SpySession.java:293)
      at org.jboss.jms.asf.StdServerSession.run(StdServerSession.java:177)
      at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:642)
      at java.lang.Thread.run(Thread.java:536)

      2003-08-28 21:41:51,347 ERROR [org.jboss.jms.asf.StdServerSession] failed to commit/rollback
      javax.transaction.RollbackException: Unable to commit, tx=TransactionImpl:XidImpl [FormatId=257, GlobalId=nb-lob//20157, BranchQual=] status=STATUS_NO_TRANSACTION
      at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:376)
      at org.jboss.jms.asf.StdServerSession.onMessage(StdServerSession.java:322)
      at org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:601)
      at org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:415)
      at org.jboss.mq.SpySession.run(SpySession.java:293)
      at org.jboss.jms.asf.StdServerSession.run(StdServerSession.java:177)
      at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:655)
      at java.lang.Thread.run(Thread.java:536)

      What can be the reason for the exceptions?

      We use JDK 1.4.1, JBoss 3.2.0RC1 and Oracle 8.1.7 with 9.2.x thin driver.
      For data sources we use Tx (but for XA the same exception is thrown after a while), for JMS the JmsXA adapter.
      Oracle is used as backend (JDBC persistence manager) for JMS.
      There must be processed ~250 object messages per minute.

      May be another JMS backend (file system) solve this problem?

      King regards,
      Bernhard