[jbossts-issues] [JBoss JIRA] Commented: (JBTM-81) Delay start of recovery manager

Howard Gao (JIRA) jira-events at lists.jboss.org
Mon Jul 12 00:54:46 EDT 2010


    [ https://jira.jboss.org/browse/JBTM-81?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12538718#action_12538718 ] 

Howard Gao commented on JBTM-81:
--------------------------------

Hi Kevin, Jonathan,

I'm having similar problems when configuring recovery manager with EAP 5.1. I think the problem relates to this issue. After the recovery manager is configured to recover JBM, starting the AS instance will get NameNotFoundException. The stack trace is:

12:45:41,585 ERROR [MessagingXAResourceWrapper] ********************************Failed to connect to server
javax.naming.NameNotFoundException: DefaultJMSProvider not bound
	at org.jnp.server.NamingServer.getBinding(NamingServer.java:771)
	at org.jnp.server.NamingServer.getBinding(NamingServer.java:779)
	at org.jnp.server.NamingServer.getObject(NamingServer.java:785)
	at org.jnp.server.NamingServer.lookup(NamingServer.java:443)
	at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:726)
	at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:686)
	at javax.naming.InitialContext.lookup(InitialContext.java:392)
	at org.jboss.jms.server.recovery.MessagingXAResourceWrapper.getConnectionFactory(MessagingXAResourceWrapper.java:381)
	at org.jboss.jms.server.recovery.MessagingXAResourceWrapper.connect(MessagingXAResourceWrapper.java:338)
	at org.jboss.jms.server.recovery.MessagingXAResourceWrapper.getDelegate(MessagingXAResourceWrapper.java:260)
	at org.jboss.jms.server.recovery.MessagingXAResourceWrapper.recover(MessagingXAResourceWrapper.java:108)
	at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.xaRecovery(XARecoveryModule.java:773)
	at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.resourceInitiatedRecovery(XARecoveryModule.java:665)
	at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkSecondPass(XARecoveryModule.java:200)
	at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:799)
	at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:412)


> Delay start of recovery manager
> -------------------------------
>
>                 Key: JBTM-81
>                 URL: https://jira.jboss.org/browse/JBTM-81
>             Project: JBoss Transaction Manager
>          Issue Type: Feature Request
>      Security Level: Public(Everyone can see) 
>          Components: JTA, JTS
>    Affects Versions: 4.2
>            Reporter: Mark Little
>            Assignee: Kevin Conner
>            Priority: Minor
>             Fix For: 4.2.2
>
>          Time Spent: 1 day
>  Remaining Estimate: 0 minutes
>
> Currently the Recovery Manager begins working as soon as JBossAS starts. When the local JTA implementation is used and there is a transaction to recover, we get the following stack trace:
> 10:52:35,529 WARN  [loggerI18N] [com.arjuna.ats.internal.jta.resources.arjunacore.restorestate] [com.arjuna.ats.interna\
> l.jta.resources.arjunacore.restorestate] Exception on attempting to restore XAResource
> java.io.StreamCorruptedException: unexpected end of block data
>         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1321)
>         at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1912)
>         at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1836)
>         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1713)
>         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299)
>         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339)
>         at com.arjuna.ats.internal.jta.resources.arjunacore.XAResourceRecord.restore_state(XAResourceRecord.java:879)
>         at com.arjuna.ats.arjuna.coordinator.BasicAction.restore_state(BasicAction.java:1410)
>         at com.arjuna.ats.arjuna.coordinator.BasicAction.activate(BasicAction.java:711)
>         at com.arjuna.ats.arjuna.coordinator.BasicAction.activate(BasicAction.java:673)
>         at com.arjuna.ats.arjuna.recovery.RecoverAtomicAction.<init>(RecoverAtomicAction.java:60)
>         at com.arjuna.ats.internal.arjuna.recovery.AtomicActionRecoveryModule.doRecoverTransaction(AtomicActionRecovery\
> Module.java:178)
> This is because the rest of the system isn't yet fully initialised. The next periodic run of recovery does not suffer this problem and recovery completes successfully. We should look at delaying the start of the Recovery Manager until JBossAS is fully initialised.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jbossts-issues mailing list