6 Replies Latest reply on May 24, 2006 2:08 PM by Ovidiu Feodorov

    Messaging XARecovery with JBossTS

    mskonda Apprentice

      After the pretry heavy discussions on the designer forum, I have implemented the XARecovery module for the above (XAResource is not a serialzable implementor).

      The recovery manager is trying to recover the failed transactions as expected. Howerver, the following exceptions are raised. Any idea what they mean? Is it something to do with Serialization of XAResource?

      Thanks
      Madhu

      [java] 10:30:31,810 INFO @Thread-2 [MessagingRecoveryModule] ========> Periodic second pass <=========
      
       [java] 10:30:31,811 INFO @Thread-2 [MessagingRecoveryModule] resourceInitiatedRecovery..1
      
       [java] 10:30:31,811 INFO @Thread-2 [MessagingRecoveryModule] XX hasMoreResoruces
      
       [java] 10:30:31,811 INFO @Thread-2 [MessagingXAResourceRecovery] ***** GETXAResource *****
      
       [java] 10:30:34,986 ERROR @main [SocketClientInvoker] Got marshalling exception, exiting
      
       [java] java.io.IOException: Can not read data for version -1. Supported versions: 1, 2
      
       [java] at org.jboss.remoting.transport.socket.SocketClientInvoker.versionedRead(SocketClientInvoker.java:371)
      
       [java] at org.jboss.remoting.transport.socket.SocketClientInvoker.transport(SocketClientInvoker.java:296)
      
       [java] at org.jboss.remoting.RemoteClientInvoker.invoke(RemoteClientInvoker.java:143)
      
       [java] at org.jboss.remoting.Client.invoke(Client.java:527)
      
       [java] at org.jboss.remoting.Client.invoke(Client.java:490)
      
       [java] at org.jboss.jms.client.delegate.DelegateSupport.invoke(DelegateSupport.java:112)
      
       [java] at org.jboss.jms.client.delegate.ClientConnectionDelegate$createSessionDelegate_6052335267724906805.invokeNext(ClientConnectionDelegate$createSessionDelegate_6052335267724906805.java)
      
       [java] at org.jboss.jms.client.container.StateCreationAspect.handleCreateSessionDelegate(StateCreationAspect.java:97)
      
       [java] at org.jboss.aop.advice.org.jboss.jms.client.container.StateCreationAspect1.invoke(StateCreationAspect1.java)
      
       [java] at org.jboss.jms.client.delegate.ClientConnectionDelegate$createSessionDelegate_6052335267724906805.invokeNext(ClientConnectionDelegate$createSessionDelegate_6052335267724906805.java)
      
       [java] at org.jboss.jms.client.container.ConnectionAspect.handleCreateSessionDelegate(ConnectionAspect.java:165)
      
       [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      
       [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      
       [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      
       [java] at java.lang.reflect.Method.invoke(Method.java:585)
      
       [java] at org.jboss.aop.advice.PerInstanceAdvice.invoke(PerInstanceAdvice.java:130)
      
       [java] at org.jboss.jms.client.delegate.ClientConnectionDelegate$createSessionDelegate_6052335267724906805.invokeNext(ClientConnectionDelegate$createSessionDelegate_6052335267724906805.java)
      
       [java] at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:130)
      
       [java] at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:117)
      
       [java] at org.jboss.jms.client.delegate.ClientConnectionDelegate$createSessionDelegate_6052335267724906805.invokeNext(ClientConnectionDelegate$createSessionDelegate_6052335267724906805.java)
      
       [java] at org.jboss.jms.client.container.ExceptionInterceptor.invoke(ExceptionInterceptor.java:69)
      
       [java] at org.jboss.jms.client.delegate.ClientConnectionDelegate$createSessionDelegate_6052335267724906805.invokeNext(ClientConnectionDelegate$createSessionDelegate_6052335267724906805.java)
      
       [java] at org.jboss.jms.client.container.ClientLogInterceptor.invoke(ClientLogInterceptor.java:107)
      
       [java] at org.jboss.jms.client.delegate.ClientConnectionDelegate$createSessionDelegate_6052335267724906805.invokeNext(ClientConnectionDelegate$createSessionDelegate_6052335267724906805.java)
      
       [java] at org.jboss.jms.client.delegate.ClientConnectionDelegate.createSessionDelegate(ClientConnectionDelegate.java)
      
       [java] at org.jboss.jms.client.JBossConnection.createSessionInternal(JBossConnection.java:255)
      
       [java] at org.jboss.jms.client.JBossConnection.createXASession(JBossConnection.java:196)
      
       [java] at com.mizuho.london.cmi2.recovery.MessagingXAResourceRecovery.getXAResource(Unknown Source)
      
       [java] at com.mizuho.london.cmi2.recovery.MessagingRecoveryModule.resourceInitiatedRecovery(Unknown Source)
      
       [java] at com.mizuho.london.cmi2.recovery.MessagingRecoveryModule.periodicWorkSecondPass(Unknown Source)
      
       [java] at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWork(PeriodicRecovery.java:237)
      
       [java] at com.arjuna.ats.internal.arjuna.recovery.RecoveryManagerImple.scan(RecoveryManagerImple.java:149)
      
       [java] at com.arjuna.ats.arjuna.recovery.RecoveryManager.scan(RecoveryManager.java:138)
      
       [java] at com.mizuho.cmi2.jms.xa.XATestStandaloneRecovery.recover(XATestStandaloneRecovery.java:51)
      
       [java] at com.mizuho.cmi2.jms.xa.XATestStandaloneRecovery.main(XATestStandaloneRecovery.java:60)
      
       [java] 10:30:34,986 ERROR @Thread-2 [SocketClientInvoker] Got marshalling exception, exiting
      
       [java] java.io.IOException: Can not read data for version -1. Supported versions: 1, 2
      
       [java] at org.jboss.remoting.transport.socket.SocketClientInvoker.versionedRead(SocketClientInvoker.java:371)
      
       [java] at org.jboss.remoting.transport.socket.SocketClientInvoker.transport(SocketClientInvoker.java:296)
      
       [java] at org.jboss.remoting.RemoteClientInvoker.invoke(RemoteClientInvoker.java:143)
      
       [java] at org.jboss.remoting.Client.invoke(Client.java:527)
      
       [java] at org.jboss.remoting.Client.invoke(Client.java:490)
      
       [java] at org.jboss.jms.client.delegate.DelegateSupport.invoke(DelegateSupport.java:112)
      
       [java] at org.jboss.jms.client.delegate.ClientConnectionDelegate$createSessionDelegate_6052335267724906805.invokeNext(ClientConnectionDelegate$createSessionDelegate_6052335267724906805.java)
      
       [java] at org.jboss.jms.client.container.StateCreationAspect.handleCreateSessio
      


      Any pointers please?

        • 1. Re: Messaging XARecovery with JBossTS
          mskonda Apprentice

          I changed the XAResource to implement Serializable but has got another kind of exception (this error casues as I replaced original (that comes with JBoss 4.0.x) jboss-remoting.jar with 1.4.1 version):

          ava.io.IOException: No ClassLoaders found for: sletdlgat.letoncinDeeaeceatSsineeae_ConnectionDelegaorg.jboss.jm.cin.eeaeCinCnetoDlgt$raeesoDlgt
           at org.jboss.serial.classmetamodel.ClassMetamodelFactory.getClassMetaData(ClassMetamodelFactory.java:295)
           at org.jboss.serial.classmetamodel.StreamingClass.readStream(StreamingClass.java:72)
           at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.readObjectDescriptionFromStreaming(ObjectDescriptorFactory.java:376)
           at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.objectFromDescription(ObjectDescriptorFactory.java:76)
           at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectInput.readObject(DataContainer.java:634)
           at org.jboss.serial.persister.RegularObjectPersister.readSlotWithFields(RegularObjectPersister.java:352)
           at org.jboss.serial.persister.RegularObjectPersister.defaultRead(RegularObjectPersister.java:272)
           at org.jboss.serial.persister.RegularObjectPersister.readData(RegularObjectPersister.java:240)
           at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.readObjectDescriptionFromStreaming(ObjectDescriptorFactory.java:407)
           at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.objectFromDescription(ObjectDescriptorFactory.java:76)
           at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectInput.readObject(DataContainer.java:634)
           at org.jboss.serial.persister.RegularObjectPersister.readSlotWithFields(RegularObjectPersister.java:352)
           at org.jboss.serial.persister.RegularObjectPersister.defaultRead(RegularObjectPersister.java:272)
           at org.jboss.serial.persister.RegularObjectPersister.readData(RegularObjectPersister.java:240)
           at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.readObjectDescriptionFromStreaming(ObjectDescriptorFactory.java:407)
           at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.objectFromDescription(ObjectDescriptorFactory.java:76)
           at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectInput.readObject(DataContainer.java:634)
           at org.jboss.serial.io.JBossObjectInputStream.readObjectOverride(JBossObjectInputStream.java:110)
           at java.io.ObjectInputStream.readObject(ObjectInputStream.java:333)
           at org.jboss.remoting.serialization.impl.java.JavaSerializationManager.receiveObject(JavaSerializationManager.java:128)
           at org.jboss.remoting.marshal.serializable.SerializableUnMarshaller.read(SerializableUnMarshaller.java:66)
           at org.jboss.jms.server.remoting.JMSWireFormat.read(JMSWireFormat.java:521)
           at org.jboss.remoting.transport.socket.ServerThread.versionedRead(ServerThread.java:354)
           at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:406)
           at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:498)
           at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:240)
          Caused by: java.lang.ClassNotFoundException: No ClassLoaders found for: sletdlgat.letoncinDeeaeceatSsineeae_ConnectionDelegaorg.jboss.jm.cin.eeaeCinCnetoDlgt$raeesoDlgt
           at org.jboss.mx.loading.LoadMgr3.beginLoadTask(LoadMgr3.java:292)
           at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:475)
           at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:377)
           at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
           at org.jboss.serial.classmetamodel.ClassMetamodelFactory.getClassMetaData(ClassMetamodelFactory.java:245)
           ... 25 more
          16:00:09,608 ERROR [ServerThread] failed
          java.io.IOException: No ClassLoaders found for: sletdlgat.letoncinDeeaeceatSsineeae_6052335267724906805"?Q?/4'?4Ta,v0
           ?eJ?A
           at org.jboss.serial.classmetamodel.ClassMetamodelFactory.getClassMetaData(ClassMetamodelFactory.java:295)
           at org.jboss.serial.classmetamodel.StreamingClass.readStream(StreamingClass.java:72)
           at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.readObjectDescriptionFromStreaming(ObjectDescriptorFactory.java:376)
           at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.objectFromDescription(ObjectDescriptorFactory.java:76)
           at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectInput.readObject(DataContainer.java:634)
           at org.jboss.serial.persister.RegularObjectPersister.readSlotWithFields(RegularObjectPersister.java:352)
           at org.jboss.serial.persister.RegularObjectPersister.defaultRead(RegularObjectPersister.java:272)
           at org.jboss.serial.persister.RegularObjectPersister.readData(RegularObjectPersister.java:240)
           at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.readObjectDescriptionFromStreaming(ObjectDescriptorFactory.java:407)
           at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.objectFromDescription(ObjectDescriptorFactory.java:76)
           at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectInput.readObject(DataContainer.java:634)
           at org.jboss.serial.persister.RegularObjectPersister.readSlotWithFields(RegularObjectPersister.java:352)
           at org.jboss.serial.persister.RegularObjectPersister.defaultRead(RegularObjectPersister.java:272)
           at org.jboss.serial.persister.RegularObjectPersister.readData(RegularObjectPersister.java:240)
           at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.readObjectDescriptionFromStreaming(ObjectDescriptorFactory.java:407)
           at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.objectFromDescription(ObjectDescriptorFactory.java:76)
           at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectInput.readObject(DataContainer.java:634)
           at org.jboss.serial.io.JBossObjectInputStream.readObjectOverride(JBossObjectInputStream.java:110)
           at java.io.ObjectInputStream.readObject(ObjectInputStream.java:333)
           at org.jboss.remoting.serialization.impl.java.JavaSerializationManager.receiveObject(JavaSerializationManager.java:128)
           at org.jboss.remoting.marshal.serializable.SerializableUnMarshaller.read(SerializableUnMarshaller.java:66)
           at org.jboss.jms.server.remoting.JMSWireFormat.read(JMSWireFormat.java:521)
           at org.jboss.remoting.transport.socket.ServerThread.versionedRead(ServerThread.java:354)
           at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:406)
           at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:498)
           at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:240)
          Caused by: java.lang.ClassNotFoundException: No ClassLoaders found for: sletdlgat.letoncinDeeaeceatSsineeae_6052335267724906805"?Q?/4'?4Ta,v0
           ?eJ?A
           at org.jboss.mx.loading.LoadMgr3.beginLoadTask(LoadMgr3.java:292)
           at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:475)
           at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:377)
           at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
           at org.jboss.serial.classmetamodel.ClassMetamodelFactory.getClassMetaData(ClassMetamodelFactory.java:245)
           ... 25 more
          16:00:10,928 INFO [FileWorker]


          Any one out there can have a look?




          • 2. Re: Messaging XARecovery with JBossTS
            Tim Fox Master

            Aha-

            This looks like a current issue we are having with JBossSerialization. We are in the process of investigating this.

            The serialization issue is characterised by strings getting garbled, as shown in the logs.

            • 3. Re: Messaging XARecovery with JBossTS
              Ovidiu Feodorov Master

              Clebert fixed Serialization. The fix will be included in 1.0.1.CR2, that will be out soon (today Mon May 22 or tomorrow)

              • 4. Re: Messaging XARecovery with JBossTS
                mskonda Apprentice

                Any update on the release? I am eagerly waiting for the fix :)

                • 6. Re: Messaging XARecovery with JBossTS
                  Ovidiu Feodorov Master

                  If you update the head and run

                  ant atifacts

                  you'll get a sar that you can use to continue your development (it has everything except SSL).