Uploaded image for project: 'JBoss A-MQ'
  1. JBoss A-MQ
  2. ENTMQ-441

Caught exception trying rollback() when putting session back into the pool, will invalidate. javax.jms.TransactionInProgressException: Cannot rollback() inside an XASession javax.jms.TransactionInProgressException: Cannot rollback() inside an XASession

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: 7.1.0.fuse-046
    • Fix Version/s: JBoss A-MQ 6.0
    • Component/s: broker
    • Labels:
      None
    • Environment:
      • tested in Fuse ESB 7.1 Rollup 1

      Description

      Following exception is continually logged in the fuse esb log.

       
      2013-10-17 21:09:33,494 | WARN  | Consumer[ESB_IN] | PooledSession                    | ?                                   ? | 122 - org.apache.activemq.activemq-pool - 5.7.0.fuse-71-112 | Caught exception trying rollback() when putting session back into the pool, will invalidate. javax.jms.TransactionInProgressException: Cannot rollback() inside an XASession
      javax.jms.TransactionInProgressException: Cannot rollback() inside an XASession
      	at org.apache.activemq.ActiveMQXASession.rollback(ActiveMQXASession.java:76)[125:org.apache.activemq.activemq-core:5.7.0.fuse-71-112]
      	at org.apache.activemq.pool.PooledSession.close(PooledSession.java:120)[122:org.apache.activemq.activemq-pool:5.7.0.fuse-71-112]
      	at org.springframework.jms.connection.JmsResourceHolder.closeAll(JmsResourceHolder.java:193)
      	at org.springframework.jms.connection.ConnectionFactoryUtils$JmsResourceSynchronization.releaseResource(ConnectionFactoryUtils.java:412)
      	at org.springframework.jms.connection.ConnectionFactoryUtils$JmsResourceSynchronization.releaseResource(ConnectionFactoryUtils.java:1)
      	at org.springframework.transaction.support.ResourceHolderSynchronization.beforeCompletion(ResourceHolderSynchronization.java:72)
      	at org.springframework.transaction.support.TransactionSynchronizationUtils.triggerBeforeCompletion(TransactionSynchronizationUtils.java:106)
      	at org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerBeforeCompletion(AbstractPlatformTransactionManager.java:940)
      	at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:738)
      	at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:723)
      	at org.apache.aries.transaction.GeronimoPlatformTransactionManager.commit(GeronimoPlatformTransactionManager.java:76)
      	at sun.reflect.GeneratedMethodAccessor21.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_37]
      	at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_37]
      	at org.apache.aries.proxy.impl.ProxyHandler$1.invoke(ProxyHandler.java:54)[13:org.apache.aries.proxy.impl:1.0.1.fuse-71-112]
      	at org.apache.aries.proxy.impl.ProxyHandler.invoke(ProxyHandler.java:119)[13:org.apache.aries.proxy.impl:1.0.1.fuse-71-112]
      	at $Proxy62.commit(Unknown Source)[148:org.springframework.transaction:3.0.7.RELEASE]
      	at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:257)[153:org.springframework.jms:3.0.7.RELEASE]
      	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1058)[153:org.springframework.jms:3.0.7.RELEASE]
      	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1050)[153:org.springframework.jms:3.0.7.RELEASE]
      	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:947)[153:org.springframework.jms:3.0.7.RELEASE]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)[:1.6.0_37]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)[:1.6.0_37]
      	at java.lang.Thread.run(Thread.java:680)[:1.6.0_37]
       

      the transaction does not appear to complete correctly.

        Gliffy Diagrams

          Activity

          Hide
          pfox Pat Fox added a comment -

          This issue has been fixed in JBoss Fuse 6.1

          Show
          pfox Pat Fox added a comment - This issue has been fixed in JBoss Fuse 6.1
          Hide
          pfox Pat Fox added a comment -

          Update:

          This fix is included in JBoss Fuse 6.0 GA (60024) . It was fixed at apache by AMQ-4019

          Show
          pfox Pat Fox added a comment - Update: This fix is included in JBoss Fuse 6.0 GA (60024) . It was fixed at apache by AMQ-4019

            People

            • Assignee:
              Unassigned
              Reporter:
              pfox Pat Fox
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: