JBoss Community

Failed to replay transaction

created by John Heijm in JBoss Messaging - View the full discussion

JBoss is attempting to recover existing prepared transactions by redelivering unhandled messages and acknowledgements on the appropriate channels (from TransactionRepository#recoverPreparedTransactions javadocs). The queue that was bound to the channel id specified is no longer defined.

 

I have two questions:

 

1) How can this happen? There are three nodes in this cluster.

2) How can I remove these transactions or force them to recover? This same message keeps repeating for the same 3 ids over and over and over again).

 

Thanks a lot.

 

Here is my stack trace:

 

2011-03-21 11:23:47,285 WARN -> (Thread-6) [TransactionRepository] Failed to replay transaction (XID: MessagingXid (24348582 bq:45.55.52.99.102.55.49.52.57.58.99.52.53.51.58.52.100.55.54.56.55.52.98.58.51.51.48.101.57.49 fo
rmatID:131075 gtxid:49.45.45.55.52.99.102.55.49.52.57.58.99.52.53.51.58.52.100.55.54.56.55.52.98.58.51.51.48.101.57.48, LocalID: 21293346538722831) during recovery.
java.lang.IllegalStateException: Cannot find binding for channel id 751
at org.jboss.messaging.core.impl.tx.TransactionRepository.handleAcks(TransactionRepository.java:377)
at org.jboss.messaging.core.impl.tx.Transaction.loadState(Transaction.java:357)
at org.jboss.messaging.core.impl.tx.TransactionRepository.recoverPreparedTransactions(TransactionRepository.java:149)
at org.jboss.jms.server.endpoint.ServerConnectionEndpoint.getPreparedTransactions(ServerConnectionEndpoint.java:539)
at org.jboss.jms.server.endpoint.advised.ConnectionAdvised.org$jboss$jms$server$endpoint$advised$ConnectionAdvised$getPreparedTransactions$aop(ConnectionAdvised.java:106)
at org.jboss.jms.server.endpoint.advised.ConnectionAdvised$getPreparedTransactions_8083036720366990761.invokeNext(ConnectionAdvised$getPreparedTransactions_8083036720366990761.java)
at org.jboss.jms.server.container.ServerLogInterceptor.invoke(ServerLogInterceptor.java:105)
at org.jboss.jms.server.endpoint.advised.ConnectionAdvised$getPreparedTransactions_8083036720366990761.invokeNext(ConnectionAdvised$getPreparedTransactions_8083036720366990761.java)
at org.jboss.jms.server.endpoint.advised.ConnectionAdvised.getPreparedTransactions(ConnectionAdvised.java)
at org.jboss.jms.wireformat.ConnectionGetPreparedTransactionsRequest.serverInvoke(ConnectionGetPreparedTransactionsRequest.java:67)
at org.jboss.jms.server.remoting.JMSServerInvocationHandler.invoke(JMSServerInvocationHandler.java:143)
at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:866)
at org.jboss.remoting.transport.local.LocalClientInvoker.invoke(LocalClientInvoker.java:101)
at org.jboss.remoting.Client.invoke(Client.java:1640)
at org.jboss.remoting.Client.invoke(Client.java:554)
at org.jboss.remoting.Client.invoke(Client.java:542)
at org.jboss.jms.client.delegate.DelegateSupport.doInvoke(DelegateSupport.java:189)
at org.jboss.jms.client.delegate.DelegateSupport.doInvoke(DelegateSupport.java:160)
at org.jboss.jms.client.delegate.ClientConnectionDelegate.org$jboss$jms$client$delegate$ClientConnectionDelegate$getPreparedTransactions$aop(ClientConnectionDelegate.java:265)
at org.jboss.jms.client.delegate.ClientConnectionDelegate$getPreparedTransactions_8083036720366990761.invokeNext(ClientConnectionDelegate$getPreparedTransactions_8083036720366990761.java)
at org.jboss.jms.client.container.FailoverValveInterceptor.invoke(FailoverValveInterceptor.java:92)
at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
at org.jboss.jms.client.delegate.ClientConnectionDelegate$getPreparedTransactions_8083036720366990761.invokeNext(ClientConnectionDelegate$getPreparedTransactions_8083036720366990761.java)
at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)
at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
at org.jboss.jms.client.delegate.ClientConnectionDelegate$getPreparedTransactions_8083036720366990761.invokeNext(ClientConnectionDelegate$getPreparedTransactions_8083036720366990761.java)
at org.jboss.jms.client.delegate.ClientConnectionDelegate.getPreparedTransactions(ClientConnectionDelegate.java)
at org.jboss.jms.tx.ResourceManager.recover(ResourceManager.java:575)
at org.jboss.jms.tx.MessagingXAResource.recover(MessagingXAResource.java:281)
at org.jboss.jms.server.recovery.MessagingXAResourceWrapper.recover(MessagingXAResourceWrapper.java:110)
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.xaRecovery(XARecoveryModule.java:746)
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.resourceInitiatedRecovery(XARecoveryModule.java:685)
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkSecondPass(XARecoveryModule.java:179)
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWork(PeriodicRecovery.java:237)
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:163)

Reply to this message by going to Community

Start a new discussion in JBoss Messaging at Community