Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-6317

java.lang.ClassCastException: SessionBindingQueryResponseMessage_V2 cannot be cast to SessionBindingQueryResponseMessage_V3

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Critical Critical
    • 7.1.0.DR9
    • 7.1.0.DR6
    • ActiveMQ
    • None
    • DR9
    • Hide

      To reproduce the issue -
      – Download EAP 7.0.0.GA and copy attached standalone-full-ha.xml to $JBOSS_HOME/standalone/configuration
      – Start server by - sh standalone.sh -c standalone-full-ha.xml
      – Unzip attached clients.zip and build by mvn install
      – Run main() method in class ProducerTransSession

      Show
      To reproduce the issue - – Download EAP 7.0.0.GA and copy attached standalone-full-ha.xml to $JBOSS_HOME/standalone/configuration – Start server by - sh standalone.sh -c standalone-full-ha.xml – Unzip attached clients.zip and build by mvn install – Run main() method in class ProducerTransSession

      If EAP 7.1.0.DR6 (Artemis 1.4.0) standalone JMS client tries to connect to EAP 7.0 server then ClassCastException is trhown during creating of producer on session.

      Client logs following error:

      WARN: AMQ212052: Packet PACKET(SessionBindingQueryResponseMessage_V2)[type=-8, channelID=15, packetObject=SessionBindingQueryResponseMessage_V2, exists=true, queueNames=[jms.queue.InQueue], autoCreateJmsQueues=false] was answered out of sequence due to a previous server timeout and it's being ignored
      java.lang.Exception: trace
      	at org.apache.activemq.artemis.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:386)
      	at org.apache.activemq.artemis.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:307)
      	at org.apache.activemq.artemis.core.protocol.core.impl.ActiveMQSessionContext.addressQuery(ActiveMQSessionContext.java:296)
      	at org.apache.activemq.artemis.core.client.impl.ClientSessionImpl.addressQuery(ClientSessionImpl.java:360)
      	at org.apache.activemq.artemis.jms.client.ActiveMQSession.createProducer(ActiveMQSession.java:305)
      	at ProducerTransSession.run(ProducerTransSession.java:53)
      
      Producer got exception and ended:java.lang.ClassCastException: org.apache.activemq.artemis.core.protocol.core.impl.wireformat.SessionBindingQueryResponseMessage_V2 cannot be cast to org.apache.activemq.artemis.core.protocol.core.impl.wireformat.SessionBindingQueryResponseMessage_V3
      

      This is breaking backward compatibility of JMS clients.

        1. standalone-full-ha.xml
          27 kB
          Miroslav Novak

            thofman Tomas Hofman
            mnovak1@redhat.com Miroslav Novak
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: