Quantcast

XA connection eventually results in a errorCode: -7

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
ken
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

XA connection eventually results in a errorCode: -7

ken
I'm getting the following error in my system that is talking to ActiveMq 5.10.  Using tomEE 1.7.1 java 1.8 and spring 3.2.  We use a tomEE provided javax.jms.ConnectionFactory with XA support turned on to create the connections.

Feb 08, 2017 12:04:29 AM org.apache.geronimo.transaction.manager.TransactionImpl enlistResource
WARNING: Unable to enlist XAResource org.apache.geronimo.transaction.manager.WrapperNamedXAResource@340f30c7, errorCode: -7
javax.transaction.xa.XAException: The connection is already closed
        at org.apache.activemq.TransactionContext.toXAException(TransactionContext.java:805)
        at org.apache.activemq.TransactionContext.setXid(TransactionContext.java:702)
        at org.apache.activemq.TransactionContext.start(TransactionContext.java:374)
        at org.apache.activemq.ra.LocalAndXATransaction.start(LocalAndXATransaction.java:150)
        at org.apache.geronimo.transaction.manager.WrapperNamedXAResource.start(WrapperNamedXAResource.java:111)
        at org.apache.geronimo.transaction.manager.TransactionImpl.enlistResource(TransactionImpl.java:209)
        at org.apache.geronimo.connector.outbound.TransactionEnlistingInterceptor.getConnection(TransactionEnlistingInterceptor.java:60)
        at org.apache.geronimo.connector.outbound.TransactionCachingInterceptor.getConnection(TransactionCachingInterceptor.java:101)
        at org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.getConnection(ConnectionHandleInterceptor.java:43)
        at org.apache.geronimo.connector.outbound.TCCLInterceptor.getConnection(TCCLInterceptor.java:39)
        at org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor.getConnection(ConnectionTrackingInterceptor.java:66)
        at org.apache.geronimo.connector.outbound.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:81)
        at org.apache.activemq.ra.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:94)
        at org.apache.activemq.ra.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:67)
        at org.springframework.jms.support.JmsAccessor.createConnection(JmsAccessor.java:184)
        at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.access$100(AbstractPollingMessageListenerContainer.java:77)
        at org.springframework.jms.listener.AbstractPollingMessageListenerContainer$MessageListenerContainerResourceFactory.createConnection(AbstractPollingMessageListenerContainer.java:526)
        at org.springframework.jms.connection.ConnectionFactoryUtils.doGetTransactionalSession(ConnectionFactoryUtils.java:297)
        at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:288)
        at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:243)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1101)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1093)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:990)
        at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.activemq.ConnectionClosedException: The connection is already closed
        at org.apache.activemq.ActiveMQConnection.checkClosed(ActiveMQConnection.java:1512)
        at org.apache.activemq.ActiveMQConnection.checkClosedOrFailed(ActiveMQConnection.java:1499)
        at org.apache.activemq.TransactionContext.setXid(TransactionContext.java:698)
        ... 22 more

It happens after the ActiveMQConnection closes but not every time it closes the connection.  
Loading...