JBossTS 4.2.3_SP7 ActiveMQ 4.1.2 XAER_PROTO Error

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

JBossTS 4.2.3_SP7 ActiveMQ 4.1.2 XAER_PROTO Error

urciolo
I am attempting to integrate JBossTS 4.2.3_SP7 into JBoss 4.0.5.GA.  I am getting XAER_PROTO Errors From ActiveMQ during its enlistment in a XA transaction.  The line of code from ActiveMQ shows:

       // Are we already associated?
        if (associatedXid != null) {
            throw new XAException(XAException.XAER_PROTO);
        }

Is there a way to correct this issue?

Exception:
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0) javax.transaction.xa.XAException
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at org.apache.activemq.TransactionContext.start(TransactionContext.java:286)
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.enlistResource(TransactionImple.java:865)
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.enlistResource(TransactionImple.java:499)
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at org.jencks.pool.PooledSpringXAConnection.createXASession(PooledSpringXAConnection.java:199)
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at org.jencks.pool.PooledSpringXAConnection.createSession(PooledSpringXAConnection.java:277)
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at org.springframework.jms.support.JmsAccessor.createSession(JmsAccessor.java:196)
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at org.springframework.jms.core.JmsTemplate.access$500(JmsTemplate.java:90)
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at org.springframework.jms.core.JmsTemplate$JmsTemplateResourceFactory.createSession(JmsTemplate.java:1039)
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at org.springframework.jms.connection.ConnectionFactoryUtils.doGetTransactionalSession(ConnectionFactoryUtils.java:282)
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:446)
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:526)
2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at org.springframework.jms.core.JmsTemplate.convertAndSend(JmsTemplate.java:636)
Reply | Threaded
Open this post in threaded view
|

Re: JBossTS 4.2.3_SP7 ActiveMQ 4.1.2 XAER_PROTO Error

djencks
Is this the first or second (or later) time your app requests a  
connection in this particular xa transaction?

Does the jencks pooling do transaction caching, i.e. make sure the  
same connection is always supplied when you request a connection  
within an xa tx?

thanks
david jencks

On Jan 20, 2009, at 11:43 AM, greenbean wrote:

>
> I am attempting to integrate JBossTS 4.2.3_SP7 into JBoss 4.0.5.GA.  
> I am
> getting XAER_PROTO Errors From ActiveMQ during its enlistment in a XA
> transaction.  The line of code from ActiveMQ shows:
>
>       // Are we already associated?
>        if (associatedXid != null) {
>            throw new XAException(XAException.XAER_PROTO);
>        }
>
> Is there a way to correct this issue?
>
> Exception:
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)
> javax.transaction.xa.XAException
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.apache.activemq.TransactionContext.start(TransactionContext.java:
> 286)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> com
> .arjuna
> .ats
> .internal
> .jta
> .transaction
> .arjunacore.TransactionImple.enlistResource(TransactionImple.java:865)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> com
> .arjuna
> .ats
> .internal
> .jta
> .transaction
> .arjunacore.TransactionImple.enlistResource(TransactionImple.java:499)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .jencks
> .pool
> .PooledSpringXAConnection
> .createXASession(PooledSpringXAConnection.java:199)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .jencks
> .pool
> .PooledSpringXAConnection
> .createSession(PooledSpringXAConnection.java:277)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .springframework
> .jms.support.JmsAccessor.createSession(JmsAccessor.java:196)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.springframework.jms.core.JmsTemplate.access$500(JmsTemplate.java:
> 90)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.springframework.jms.core.JmsTemplate
> $JmsTemplateResourceFactory.createSession(JmsTemplate.java:1039)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .springframework
> .jms
> .connection
> .ConnectionFactoryUtils
> .doGetTransactionalSession(ConnectionFactoryUtils.java:282)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:446)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:526)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .springframework
> .jms.core.JmsTemplate.convertAndSend(JmsTemplate.java:636)
>
> --
> View this message in context: http://www.nabble.com/JBossTS-4.2.3_SP7-ActiveMQ-4.1.2-XAER_PROTO-Error-tp21570184p21570184.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>

Reply | Threaded
Open this post in threaded view
|

Re: JBossTS 4.2.3_SP7 ActiveMQ 4.1.2 XAER_PROTO Error

urciolo
I am using the ActiveMQ with Jencks to carry out asynchronous message consumption.  It looks like activemq does a start when the message is delivered to the message consumer.  Then internally I attempt to send a JMS message to another queue.  The second start is triggered and ActiveMQ throws the XAER_PROTO error.

I wonder if this is related to using JCA connectors for the consumption of messages and separate JMS factories for sending messages.

---------------------------------------------------------------------------------------
2009-01-20 19:51:48,932 DEBUG [org.apache.activemq.TransactionContext] (Executor-0) Start: < 131075, 28, 26, 1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------
2009-01-20 19:52:07,780 DEBUG [org.apache.activemq.TransactionContext] (Executor-0) Start: < 131075, 28, 26, 1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------
2009-01-20 19:52:07,781 WARN  [com.arjuna.ats.jta.logging.loggerI18N] (Executor-0) [com.arjuna.ats.internal.jta.transaction.arjunacore.xastart] [com.arjuna.ats.internal.jta.transaction.arjunacore.xastart] TransactionImple.enlistResource - xa_start  - caught: XAException.XAER_PROTO for < 131075, 28, 26, 1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------
2009-01-20 19:52:08,164 DEBUG [org.apache.activemq.TransactionContext] (Executor-0) End: < 131075, 28, 26, 1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------
2009-01-20 19:52:08,168 DEBUG [org.apache.activemq.TransactionContext] (Executor-0) Rollback: < 131075, 28, 26, 1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------


djencks wrote
Is this the first or second (or later) time your app requests a  
connection in this particular xa transaction?

Does the jencks pooling do transaction caching, i.e. make sure the  
same connection is always supplied when you request a connection  
within an xa tx?

thanks
david jencks

On Jan 20, 2009, at 11:43 AM, greenbean wrote:

>
> I am attempting to integrate JBossTS 4.2.3_SP7 into JBoss 4.0.5.GA.  
> I am
> getting XAER_PROTO Errors From ActiveMQ during its enlistment in a XA
> transaction.  The line of code from ActiveMQ shows:
>
>       // Are we already associated?
>        if (associatedXid != null) {
>            throw new XAException(XAException.XAER_PROTO);
>        }
>
> Is there a way to correct this issue?
>
> Exception:
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)
> javax.transaction.xa.XAException
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.apache.activemq.TransactionContext.start(TransactionContext.java:
> 286)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> com
> .arjuna
> .ats
> .internal
> .jta
> .transaction
> .arjunacore.TransactionImple.enlistResource(TransactionImple.java:865)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> com
> .arjuna
> .ats
> .internal
> .jta
> .transaction
> .arjunacore.TransactionImple.enlistResource(TransactionImple.java:499)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .jencks
> .pool
> .PooledSpringXAConnection
> .createXASession(PooledSpringXAConnection.java:199)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .jencks
> .pool
> .PooledSpringXAConnection
> .createSession(PooledSpringXAConnection.java:277)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .springframework
> .jms.support.JmsAccessor.createSession(JmsAccessor.java:196)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.springframework.jms.core.JmsTemplate.access$500(JmsTemplate.java:
> 90)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.springframework.jms.core.JmsTemplate
> $JmsTemplateResourceFactory.createSession(JmsTemplate.java:1039)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .springframework
> .jms
> .connection
> .ConnectionFactoryUtils
> .doGetTransactionalSession(ConnectionFactoryUtils.java:282)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:446)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:526)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .springframework
> .jms.core.JmsTemplate.convertAndSend(JmsTemplate.java:636)
>
> --
> View this message in context: http://www.nabble.com/JBossTS-4.2.3_SP7-ActiveMQ-4.1.2-XAER_PROTO-Error-tp21570184p21570184.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
Reply | Threaded
Open this post in threaded view
|

Re: JBossTS 4.2.3_SP7 ActiveMQ 4.1.2 XAER_PROTO Error

urciolo
I have found that it works in one component when I first restart the JVM with ActiveMQ.  I see the ServerSessionPoolImpl says it "Created a new session" to do the work.  Then if I run again, it says it is "Using idle session" to do the work.  The second time it fails.  Could this be contributing to the problem?

---------------------------------------------------------------------------------------------------
2009-01-20 22:48:16,830 DEBUG [org.apache.activemq.ra.ServerSessionPoolImpl] (ActiveMQ Transport: tcp://localhost/127.0.0.1:61616) ServerSession requested.
2009-01-20 22:48:16,845 DEBUG [org.apache.activemq.ra.ServerSessionPoolImpl] (ActiveMQ Transport: tcp://localhost/127.0.0.1:61616) Created a new session: ServerSessionImpl:11
2009-01-20 22:48:16,845 DEBUG [org.apache.activemq.ra.ServerSessionImpl:11] (ActiveMQ Transport: tcp://localhost/127.0.0.1:61616) Starting run.
2009-01-20 22:48:16,845 DEBUG [org.apache.activemq.ra.ServerSessionImpl:11] (ActiveMQ Transport: tcp://localhost/127.0.0.1:61616) Work accepted: javax.resource.spi.work.WorkEvent[source=org.apache.geronimo.connector.work.GeronimoWorkManager@1e86299]


---------------------------------------------------------------------------------------------------
2009-01-20 22:54:24,145 DEBUG [org.apache.activemq.ra.ServerSessionPoolImpl] (ActiveMQ Transport: tcp://localhost/127.0.0.1:61616) ServerSession requested.
2009-01-20 22:54:24,148 DEBUG [org.apache.activemq.ra.ServerSessionPoolImpl] (ActiveMQ Transport: tcp://localhost/127.0.0.1:61616) Using idle session: Serv
erSessionImpl:10
2009-01-20 22:54:24,148 DEBUG [org.apache.activemq.ra.ServerSessionImpl:10] (ActiveMQ Transport: tcp://localhost/127.0.0.1:61616) Starting run.
2009-01-20 22:54:24,148 DEBUG [org.apache.activemq.ra.ServerSessionImpl:10] (ActiveMQ Transport: tcp://localhost/127.0.0.1:61616) Work accepted: javax.reso
urce.spi.wo


greenbean wrote
I am using the ActiveMQ with Jencks to carry out asynchronous message consumption.  It looks like activemq does a start when the message is delivered to the message consumer.  Then internally I attempt to send a JMS message to another queue.  The second start is triggered and ActiveMQ throws the XAER_PROTO error.

I wonder if this is related to using JCA connectors for the consumption of messages and separate JMS factories for sending messages.

---------------------------------------------------------------------------------------
2009-01-20 19:51:48,932 DEBUG [org.apache.activemq.TransactionContext] (Executor-0) Start: < 131075, 28, 26, 1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------
2009-01-20 19:52:07,780 DEBUG [org.apache.activemq.TransactionContext] (Executor-0) Start: < 131075, 28, 26, 1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------
2009-01-20 19:52:07,781 WARN  [com.arjuna.ats.jta.logging.loggerI18N] (Executor-0) [com.arjuna.ats.internal.jta.transaction.arjunacore.xastart] [com.arjuna.ats.internal.jta.transaction.arjunacore.xastart] TransactionImple.enlistResource - xa_start  - caught: XAException.XAER_PROTO for < 131075, 28, 26, 1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------
2009-01-20 19:52:08,164 DEBUG [org.apache.activemq.TransactionContext] (Executor-0) End: < 131075, 28, 26, 1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------
2009-01-20 19:52:08,168 DEBUG [org.apache.activemq.TransactionContext] (Executor-0) Rollback: < 131075, 28, 26, 1--3fd23d49:b163:49762aeb:99-3fd23d49:b163:49762aeb:9a >
---------------------------------------------------------------------------------------


djencks wrote
Is this the first or second (or later) time your app requests a  
connection in this particular xa transaction?

Does the jencks pooling do transaction caching, i.e. make sure the  
same connection is always supplied when you request a connection  
within an xa tx?

thanks
david jencks

On Jan 20, 2009, at 11:43 AM, greenbean wrote:

>
> I am attempting to integrate JBossTS 4.2.3_SP7 into JBoss 4.0.5.GA.  
> I am
> getting XAER_PROTO Errors From ActiveMQ during its enlistment in a XA
> transaction.  The line of code from ActiveMQ shows:
>
>       // Are we already associated?
>        if (associatedXid != null) {
>            throw new XAException(XAException.XAER_PROTO);
>        }
>
> Is there a way to correct this issue?
>
> Exception:
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)
> javax.transaction.xa.XAException
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.apache.activemq.TransactionContext.start(TransactionContext.java:
> 286)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> com
> .arjuna
> .ats
> .internal
> .jta
> .transaction
> .arjunacore.TransactionImple.enlistResource(TransactionImple.java:865)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> com
> .arjuna
> .ats
> .internal
> .jta
> .transaction
> .arjunacore.TransactionImple.enlistResource(TransactionImple.java:499)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .jencks
> .pool
> .PooledSpringXAConnection
> .createXASession(PooledSpringXAConnection.java:199)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .jencks
> .pool
> .PooledSpringXAConnection
> .createSession(PooledSpringXAConnection.java:277)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .springframework
> .jms.support.JmsAccessor.createSession(JmsAccessor.java:196)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.springframework.jms.core.JmsTemplate.access$500(JmsTemplate.java:
> 90)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.springframework.jms.core.JmsTemplate
> $JmsTemplateResourceFactory.createSession(JmsTemplate.java:1039)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .springframework
> .jms
> .connection
> .ConnectionFactoryUtils
> .doGetTransactionalSession(ConnectionFactoryUtils.java:282)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:446)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:526)
> 2009-01-20 19:14:30,271 ERROR [STDERR] (Executor-0)     at
> org
> .springframework
> .jms.core.JmsTemplate.convertAndSend(JmsTemplate.java:636)
>
> --
> View this message in context: http://www.nabble.com/JBossTS-4.2.3_SP7-ActiveMQ-4.1.2-XAER_PROTO-Error-tp21570184p21570184.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>