Uploaded image for project: 'AMQ Broker'
  1. AMQ Broker
  2. ENTMQBR-42

Openwire - AMQP Interoperability Issue

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • A-MQ 7.0.0.ER12
    • A-MQ 7.0.0.ER11
    • None
    • Hide

      1. Start broker
      2. Using an openwire producer, send one text message to a queue
      3. Start an amqp consumer and have it consume from that queue.

      Show
      1. Start broker 2. Using an openwire producer, send one text message to a queue 3. Start an amqp consumer and have it consume from that queue.

    Description

      Simple text message(s) sent from openwire producer cannot be consumed by amqp consumer. Also, every time the amqp consumer connects to the broker, a duplicate message shows up in the queue. The following exception is also generated by the broker when the consumer attempts to consume:

      09:12:58,039 WARN  [org.apache.activemq.artemis.core.server] AMQ222151: removing consumer which did not handle a message, consumer=ServerConsumerImpl [id=0, filter=null, binding=LocalQueueBinding [address=jms.queue.TOOL.DEFAULT, queue=QueueImpl[name=jms.queue.TOOL.DEFAULT, postOffice=PostOfficeImpl [server=ActiveMQServerImpl::serverUUID=5caf551c-83e6-11e6-afb8-507b9d665d40]]@4be40431, filter=null, name=jms.queue.TOOL.DEFAULT, clusterName=jms.queue.TOOL.DEFAULT5caf551c-83e6-11e6-afb8-507b9d665d40]], message=Reference[32]:RELIABLE:ServerMessage[messageID=32,durable=true,userID=null,priority=4, bodySize=1284, timestamp=Mon Sep 26 08:51:02 EDT 2016,expiration=0, durable=true, address=jms.queue.TOOL.DEFAULT,properties=TypedProperties[__HDR_BROKER_IN_TIME=1474894262152,__HDR_ARRIVAL=0,__HDR_GROUP_SEQUENCE=0,__HDR_COMMAND_ID=5,__HDR_PRODUCER_ID=[0000 003D 7B01 2B00 3449 443A 4A6F 652D 4665 726E 616E 6465 7A73 2D69 4D61  ... 61 6C2D 3532 3730 382D 3134 3734 3839 3432 3632 3037 342D 313A 3100 0100 01),__HDR_MESSAGE_ID=[0000 0041 6E02 AE02 7B00 3449 443A 4A6F 652D 4665 726E 616E 6465 7A73 2D69  ... 2D 3532 3730 382D 3134 3734 3839 3432 3632 3037 342D 313A 3100 0100 0100 01),__HDR_DROPPABLE=false]]@639462874: java.lang.IllegalStateException: Can't deliver message java.lang.ClassCastException: [B cannot be cast to [Ljava.lang.Object;
              at org.apache.activemq.artemis.core.protocol.proton.plug.ProtonSessionIntegrationCallback.sendMessage(ProtonSessionIntegrationCallback.java:502) [artemis-amqp-protocol-1.3.0.amq-700004-redhat-1.jar:]
              at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.deliverStandardMessage(ServerConsumerImpl.java:1043) [artemis-server-1.3.0.amq-700004-redhat-1.jar:1.3.0.amq-700004-redhat-1]
              at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.proceedDeliver(ServerConsumerImpl.java:417) [artemis-server-1.3.0.amq-700004-redhat-1.jar:1.3.0.amq-700004-redhat-1]
              at org.apache.activemq.artemis.core.server.impl.QueueImpl.proceedDeliver(QueueImpl.java:2507) [artemis-server-1.3.0.amq-700004-redhat-1.jar:1.3.0.amq-700004-redhat-1]
              at org.apache.activemq.artemis.core.server.impl.QueueImpl.deliver(QueueImpl.java:1999) [artemis-server-1.3.0.amq-700004-redhat-1.jar:1.3.0.amq-700004-redhat-1]
              at org.apache.activemq.artemis.core.server.impl.QueueImpl.access$1500(QueueImpl.java:99) [artemis-server-1.3.0.amq-700004-redhat-1.jar:1.3.0.amq-700004-redhat-1]
              at org.apache.activemq.artemis.core.server.impl.QueueImpl$DeliverRunner.run(QueueImpl.java:2748) [artemis-server-1.3.0.amq-700004-redhat-1.jar:1.3.0.amq-700004-redhat-1]
              at org.apache.activemq.artemis.utils.OrderedExecutorFactory$OrderedExecutor$ExecutorTask.run(OrderedExecutorFactory.java:103) [artemis-core-client-1.3.0.amq-700004-redhat-1.jar:1.3.0.amq-700004-redhat-1]
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_72]
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_72]
              at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_72]
      Caused by: java.lang.ClassCastException: [B cannot be cast to [Ljava.lang.Object;
              at org.apache.qpid.proton.codec.ArrayType.getEncoding(ArrayType.java:27) [proton-j-0.12.0.redhat-1.jar:0.12.0.redhat-1]
              at org.apache.qpid.proton.codec.MapType.calculateSize(MapType.java:72) [proton-j-0.12.0.redhat-1.jar:0.12.0.redhat-1]
              at org.apache.qpid.proton.codec.MapType.getEncoding(MapType.java:53) [proton-j-0.12.0.redhat-1.jar:0.12.0.redhat-1]
              at org.apache.qpid.proton.codec.MapType.getEncoding(MapType.java:25) [proton-j-0.12.0.redhat-1.jar:0.12.0.redhat-1]
              at org.apache.qpid.proton.codec.AbstractDescribedType.getEncoding(AbstractDescribedType.java:46) [proton-j-0.12.0.redhat-1.jar:0.12.0.redhat-1]
              at org.apache.qpid.proton.codec.AbstractDescribedType.write(AbstractDescribedType.java:73) [proton-j-0.12.0.redhat-1.jar:0.12.0.redhat-1]
              at org.apache.qpid.proton.codec.EncoderImpl.writeObject(EncoderImpl.java:737) [proton-j-0.12.0.redhat-1.jar:0.12.0.redhat-1]
              at org.apache.qpid.proton.message.impl.MessageImpl.encode(MessageImpl.java:733) [proton-j-0.12.0.redhat-1.jar:0.12.0.redhat-1]
              at org.proton.plug.context.AbstractProtonContextSender.performSend(AbstractProtonContextSender.java:125) [artemis-proton-plug-1.3.0.amq-700004-redhat-1.jar:1.3.0.amq-700004-redhat-1]
              at org.proton.plug.context.server.ProtonServerSenderContext.deliverMessage(ProtonServerSenderContext.java:407) [artemis-proton-plug-1.3.0.amq-700004-redhat-1.jar:1.3.0.amq-700004-redhat-1]
              at org.apache.activemq.artemis.core.protocol.proton.plug.ProtonSessionIntegrationCallback.sendMessage(ProtonSessionIntegrationCallback.java:495) [artemis-amqp-protocol-1.3.0.amq-700004-redhat-1.jar:]
              ... 10 more
      

      While the consumer is connected to the broker, the JMX client (jconsole) attached to the broker shows no consumers attached to the queue, but does show the extra (duplicate) message. Browsing the queue with an openwire browser lists out the duplicate message.

      Attachments

        Issue Links

          Activity

            People

              csuconic@redhat.com Clebert Suconic
              Argo_Integration Travis North (Inactive)
              Michal Toth Michal Toth
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: