Looking at the first stack trace, it seems there is a bugsomewhere ;)
However, I don't know which component fails (jencks, geronimo tm,
activemq, servicemix). I don't think it prevents the transaction to
actually
roll back, as shown a few lines later.
The problem comes from the fact that the
org.apache.activemq.TransactionContext.end(TransactionContext.java:318)
method is called twice, and the second time throws this exception
(which seems fine because the xa resource has already been delisted).
If you could set a breakpoint or print the stack trace to know who is
calling this method the first time, it would help a lot.
The second and third exceptions can be safely ignored. The second one
catches the exception caused by the rollback, and the last one will
discard the endpoint as there was a failure. They will always be logged
at debug level when a rollback occur.
On 9/7/06, Terry Cox <[EMAIL PROTECTED]> wrote:
We had a message exchange conversation that wasn't being completed.
However, despite this, if we do choose to setRollbackOnly(), we get
"Error ending association for XAResource
[EMAIL PROTECTED]; transaction will
roll back. XA error code: -6"
Full stack trace follows:
11:08:02,164 | DEBUG | Thread-6 | DeliveryChannelImpl
| bi.messaging.DeliveryChannelImpl 344 | Sent: InOut[
id: ID:workstation22155.uk.x.com-33371-1157623660369-10:0
status: Active
role: provider
service: {http://uk.x.com/ott/1.1}sgmbHttpOut
endpoint: sgmbHttpOut
in: <?xml version="1.0"
encoding="UTF-8"?><SUBMIT-REQUEST></SUBMIT-REQUEST>
out: <?xml version="1.0" encoding="UTF-8"?><SUBMIT-RESPONSE
status="FAIL"></SUBMIT-RESPONSE>
]
11:08:02,165 | DEBUG | Thread-6 | SedaFlow
| icemix.jbi.nmr.flow.AbstractFlow 116 | Called Flow send
11:08:02,166 | DEBUG | Thread-6 | SedaFlow
| cemix.jbi.nmr.flow.seda.SedaFlow 301 | Suspending transaction for
ID:workstation22155.uk.x.com-33371-1157623660369-10:0 in
[EMAIL PROTECTED]
11:08:02,173 | DEBUG | Thread-10 | SedaQueue
| ix.jbi.nmr.flow.seda.SedaQueue$1 225 |
[EMAIL PROTECTED] dequeued
exchange: InOut[
id: ID:workstation22155.uk.x.com-33371-1157623660369-10:0
status: Active
role: consumer
service: {http://uk.x.com/ott/1.1}sgmbHttpOut
endpoint: sgmbHttpOut
in: <?xml version="1.0"
encoding="UTF-8"?><SUBMIT-REQUEST></SUBMIT-REQUEST>
out: <?xml version="1.0" encoding="UTF-8"?><SUBMIT-RESPONSE
status="FAIL">
</SUBMIT-RESPONSE>
]
11:08:02,174 | DEBUG | Thread-10 | SedaFlow
| cemix.jbi.nmr.flow.seda.SedaFlow 321 | Resuming transaction for
ID:workstation22155.uk.x.com-33371-1157623660369-10:0 in
[EMAIL PROTECTED]
11:08:02,179 | DEBUG | Thread-10 | DeliveryChannelImpl
| bi.messaging.DeliveryChannelImpl 578 | Processing inbound
exchange: InOut[
id: ID:workstation22155.uk.x.com-33371-1157623660369-10:0
status: Active
role: consumer
service: {http://uk.x.com/ott/1.1}sgmbHttpOut
endpoint: sgmbHttpOut
in: <?xml version="1.0"
encoding="UTF-8"?><SUBMIT-REQUEST></SUBMIT-REQUEST>
out: <?xml version="1.0" encoding="UTF-8"?><SUBMIT-RESPONSE
status="FAIL"></SUBMIT-RESPONSE>
]
11:08:02,180 | DEBUG | Thread-10 | DeliveryChannelImpl
| bi.messaging.DeliveryChannelImpl 746 | Suspending transaction for
ID:workstation22155.uk.x.com-33371-1157623660369-10:0 in
DeliveryChannel{sgmbOutMessageHandler}
11:08:02,180 | DEBUG | Thread-10 | DeliveryChannelImpl
| bi.messaging.DeliveryChannelImpl 720 | Notifying exchange
ID:workstation22155.uk.x.com-33371-1157623660369-10:0(d1a1ab) in
DeliveryChannel{sgmbOutMessageHandler} from
processInboundSynchronousExchange
11:08:02,182 | DEBUG | Thread-7 | DeliveryChannelImpl
| bi.messaging.DeliveryChannelImpl 714 | Notified:
ID:workstation22155.uk.x.com-33371-1157623660369-10:0(d1a1ab) in
DeliveryChannel{sgmbOutMessageHandler} from sendSync
11:08:02,183 | DEBUG | Thread-7 | DeliveryChannelImpl
| bi.messaging.DeliveryChannelImpl 767 | Resuming transaction for
ID:workstation22155.k.x.com-33371-1157623660369-10:0 in
DeliveryChannel{sgmbOutMessageHandler}
INFO:[SGMBMessageHandler] - Printing acknowledgement : true
11:08:02,185 | DEBUG | Thread-7 | DeliveryChannelImpl
| bi.messaging.DeliveryChannelImpl 405 | Send
ID:workstation22155.uk.x.com-33371-1157623660369-10:0 in
DeliveryChannel{sgmbOutMessageHandler}
11:08:02,189 | DEBUG | Thread-7 | DeliveryChannelImpl
| bi.messaging.DeliveryChannelImpl 344 | Sent: InOut[
id: ID:workstation22155.uk.x.com-33371-1157623660369-10:0
status: Done
role: consumer
service: {http://uk.x.com/ott/1.1}sgmbHttpOut
endpoint: sgmbHttpOut
in: <?xml version="1.0"
encoding="UTF-8"?><SUBMIT-REQUEST></SUBMIT-REQUEST>
out: <?xml version="1.0" encoding="UTF-8"?><SUBMIT-RESPONSE
status="FAIL"></SUBMIT-RESPONSE>
]
11:08:02,191 | DEBUG | Thread-7 | SedaFlow
| icemix.jbi.nmr.flow.AbstractFlow 116 | Called Flow send
INFO:[SGMBMessageHandler] - Message sent successfully. Acknowledgement
received.
INFO:[SGMBMessageHandler] - Printing acknowledgement below :
<?xml version="1.0" encoding="UTF-8"?><SUBMIT-RESPONSE
status="FAIL"></SUBMIT-RESPONSE>
INFO:[SGMBMessageHandler] - Rolling the transaction back.
11:08:02,197 | DEBUG | Thread-7 | TransactionContext
| ache.activemq.TransactionContext 310 | End:
[globalId=200000005555ffffffbf0a416ffffff9b000000000000000000000000000000000000000000000000,branchId=100000005555ffffffbf0a416ffffff9b000000000000000000000000000000000000000000000000]
11:08:02,199 | DEBUG | Thread-7 | TransactionContext
| ache.activemq.TransactionContext 552 | Ended XA transaction:
XID:1197822575:02000000000000005555bf000a04169b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000:01000000000000005555bf000a04169b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
11:08:02,201 | DEBUG | Thread-7 | TransactionContext
| ache.activemq.TransactionContext 310 | End:
[globalId=200000005555ffffffbf0a416ffffff9b000000000000000000000000000000000000000000000000,branchId=100000005555ffffffbf0a416ffffff9b000000000000000000000000000000000000000000000000]
11:08:02,203 | WARN | Thread-7 | Transaction
| nsaction.manager.TransactionImpl 526 | Error ending association
for XAResource [EMAIL PROTECTED];
transaction will roll back. XA error code: -6
javax.transaction.xa.XAException
at
org.apache.activemq.TransactionContext.end(TransactionContext.java:318)
at
org.apache.activemq.ra.LocalAndXATransaction.end(
LocalAndXATransaction.java:89)
at
org.apache.geronimo.transaction.manager.TransactionImpl.endResources(
TransactionImpl.java:524)
at
org.apache.geronimo.transaction.manager.TransactionImpl.endResources(
TransactionImpl.java:504)
at
org.apache.geronimo.transaction.manager.TransactionImpl.rollback(
TransactionImpl.java:444)
at
org.apache.geronimo.transaction.manager.TransactionManagerImpl.rollback(
TransactionManagerImpl.java:155)
at
org.apache.geronimo.transaction.context.InheritableTransactionContext.isRolledback
(InheritableTransactionContext.java:283)
at
org.apache.geronimo.transaction.context.InheritableTransactionContext.complete
(InheritableTransactionContext.java:171)
at
org.apache.geronimo.transaction.context.InheritableTransactionContext.commit
(InheritableTransactionContext.java:146)
at
org.apache.geronimo.transaction.context.GeronimoTransactionManager.commit(
GeronimoTransactionManager.java:81)
at
org.apache.geronimo.transaction.context.GeronimoTransactionDelegate.commit
(GeronimoTransactionDelegate.java:51)
at org.jencks.XAEndpoint.afterDelivery(XAEndpoint.java:103)
at
org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.afterDelivery
(MessageEndpointProxy.java:125)
at
org.apache.activemq.ra.MessageEndpointProxy.afterDelivery(
MessageEndpointProxy.java:64)
at
org.apache.activemq.ra.ServerSessionImpl.afterDelivery(
ServerSessionImpl.java:214)
at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:723)
at
org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:163)
at
org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java
:291)
at
EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Thread.java:595)
11:08:02,214 | DEBUG | Thread-7 | TransactionContext
| ache.activemq.TransactionContext 384 | Rollback:
[globalId=200000005555ffffffbf0a416ffffff9b000000000000000000000000000000000000000000000000,branchId=100000005555ffffffbf0a416ffffff9b000000000000000000000000000000000000000000000000]
11:08:02,218 | DEBUG | /127.0.0.1:33397 | XATransaction
| tivemq.transaction.XATransaction 125 | XA Transaction rollback:
XID:1197822575:02000000000000005555bf000a04169b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000:01000000000000005555bf000a04169b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
11:08:02,221 | DEBUG | Thread-7 | ServerSessionImpl:2
| he.activemq.ra.ServerSessionImpl 167 | Endpoint failed to process
message.
java.lang.RuntimeException: Endpoint after delivery notification failure
at
org.apache.activemq.ra.ServerSessionImpl.afterDelivery(
ServerSessionImpl.java:216)
at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:723)
at
org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:163)
at
org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java
:291)
at
EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Thread.java:595)
Caused by: javax.transaction.RollbackException
at org.jencks.XAEndpoint.afterDelivery(XAEndpoint.java:107)
at
org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.afterDelivery
(MessageEndpointProxy.java:125)
at
org.apache.activemq.ra.MessageEndpointProxy.afterDelivery(
MessageEndpointProxy.java:64)
at
org.apache.activemq.ra.ServerSessionImpl.afterDelivery(
ServerSessionImpl.java:214)
... 5 more
Caused by: javax.transaction.RollbackException
at
org.apache.geronimo.transaction.context.GeronimoTransactionManager.commit(
GeronimoTransactionManager.java:82)
at
org.apache.geronimo.transaction.context.GeronimoTransactionDelegate.commit
(GeronimoTransactionDelegate.java:51)
at org.jencks.XAEndpoint.afterDelivery(XAEndpoint.java:103)
... 8 more
11:08:02,222 | INFO | Thread-7 | ServerSessionImpl:2
| he.activemq.ra.ServerSessionImpl 168 | Endpoint failed to process
message. Reason: java.lang.RuntimeException: Endpoint after delivery
notification failure
11:08:02,223 | DEBUG | Thread-7 | ServerSessionImpl:2
| he.activemq.ra.ServerSessionImpl 172 | run loop end
11:08:02,223 | DEBUG | Thread-7 | ServerSessionImpl:2
| he.activemq.ra.ServerSessionImpl 252 | Endpoint did not release
properly: org.apache.activemq.ra.InvalidMessageEndpointException
org.apache.activemq.ra.InvalidMessageEndpointException
at
org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointDead.release(
MessageEndpointProxy.java:156)
at
org.apache.activemq.ra.MessageEndpointProxy.release(
MessageEndpointProxy.java:68)
at
org.apache.activemq.ra.ServerSessionImpl.close(ServerSessionImpl.java:250)
at
org.apache.activemq.ra.ServerSessionPoolImpl.removeFromPool(
ServerSessionPoolImpl.java:180)
at
org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:177)
at
org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java
:291)
at
EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Thread.java:595)
11:08:02,224 | DEBUG | Thread-7 | ServerSessionImpl:2
| he.activemq.ra.ServerSessionImpl 188 | Run finished
--
Cheers,
Guillaume Nodet