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

AMQP: IndexOutOfBoundsException when dispatching ObjectMessage that was handled as a Large Message

XMLWordPrintable

    • Release Notes
    • Hide
      Previously, if you were using the AMQP protocol with the Qpid JMS client, and you sent a JMS ObjectMessage that was also a large message (larger than the "min-large-message-size"), an error would occur when the message was consumed. This error no longer occurs.
      Show
      Previously, if you were using the AMQP protocol with the Qpid JMS client, and you sent a JMS ObjectMessage that was also a large message (larger than the "min-large-message-size"), an error would occur when the message was consumed. This error no longer occurs.
    • Not Yet Documented
    • Hide

      Attached program on ENTMQBR-1184 could be useful, but I could not reproduce the issue yet.
      The issue occurs when AMQP consumer tries to receive an OjbectMessage treated as a large message.

      Show
      Attached program on ENTMQBR-1184 could be useful, but I could not reproduce the issue yet. The issue occurs when AMQP consumer tries to receive an OjbectMessage treated as a large message.

      The issue occurs after installing PATCH-2580.
      This time, the issue does not always occurs, but sometimes AMQP consumer can not receive a ObjectMessge that was handled as a Large Message due to following WARN log.

      2018-04-19 17:23:51,106 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=FTBSK11EN, queue=QueueImpl[name=SKFtpESBContainer28Maintenance.DURABLE_KEY, postOffice=PostOfficeImpl [server=ActiveMQServerImpl::serverUUID=5f349f67-437c-11e8-9816-005056bb9411], temp=false]@4a01cbae, filter=null, name=SKFtpESBContainer28Maintenance.DURABLE_KEY, clusterName=SKFtpESBContainer28Maintenance.DURABLE_KEY5f349f67-437c-11e8-9816-005056bb9411]], message=Reference[1042]:NON-RELIABLE:LargeServerMessage[messageID=1042,durable=false,userID=null,priority=3, timestamp=Thu Apr 19 17:23:51 JST 2018,expiration=0, durable=false, address=FTBSK11EN,properties=TypedProperties[NATIVE_MESSAGE_ID=ID:ce07557a-1ad3-49ff-960e-51db1d31d3f8:1:1:7-1,JMS_AMQP_MA_x-opt-jms-dest=1,JMS_AMQP_ContentType=application/x-java-serialized-object,_AMQ_LARGE_SIZE=884308,JMS_AMQP_MA_x-opt-jms-msg-type=1,jms_message_crc32=9d770731]]@41018084: java.lang.IllegalStateException: Can't deliver message java.lang.IndexOutOfBoundsException
      	at org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback.sendMessage(AMQPSessionCallback.java:599) [artemis-amqp-protocol-2.4.0.amq-710010-redhat-1.jar:]
      	at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.deliverStandardMessage(ServerConsumerImpl.java:1091) [artemis-server-2.4.0.amq-710010-redhat-1.jar:2.4.0.amq-710010-redhat-1]
      	at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.proceedDeliver(ServerConsumerImpl.java:460) [artemis-server-2.4.0.amq-710010-redhat-1.jar:2.4.0.amq-710010-redhat-1]
      	at org.apache.activemq.artemis.core.server.impl.QueueImpl.proceedDeliver(QueueImpl.java:2768) [artemis-server-2.4.0.amq-710010-redhat-1.jar:2.4.0.amq-710010-redhat-1]
      	at org.apache.activemq.artemis.core.server.impl.QueueImpl.deliver(QueueImpl.java:2252) [artemis-server-2.4.0.amq-710010-redhat-1.jar:2.4.0.amq-710010-redhat-1]
      	at org.apache.activemq.artemis.core.server.impl.QueueImpl.access$1900(QueueImpl.java:106) [artemis-server-2.4.0.amq-710010-redhat-1.jar:2.4.0.amq-710010-redhat-1]
      	at org.apache.activemq.artemis.core.server.impl.QueueImpl$DeliverRunner.run(QueueImpl.java:3041) [artemis-server-2.4.0.amq-710010-redhat-1.jar:2.4.0.amq-710010-redhat-1]
      	at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42) [artemis-commons-2.4.0.amq-710010-redhat-1.jar:2.4.0.amq-710010-redhat-1]
      	at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31) [artemis-commons-2.4.0.amq-710010-redhat-1.jar:2.4.0.amq-710010-redhat-1]
      	at org.apache.activemq.artemis.utils.actors.ProcessorBase$ExecutorTask.run(ProcessorBase.java:53) [artemis-commons-2.4.0.amq-710010-redhat-1.jar:2.4.0.amq-710010-redhat-1]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [rt.jar:1.8.0_144]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [rt.jar:1.8.0_144]
      	at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_144]
      Caused by: java.lang.IndexOutOfBoundsException
      	at io.netty.buffer.EmptyByteBuf.readInt(EmptyByteBuf.java:580) [netty-all-4.1.16.Final-redhat-2.jar:4.1.16.Final-redhat-2]
      	at io.netty.buffer.WrappedByteBuf.readInt(WrappedByteBuf.java:571) [netty-all-4.1.16.Final-redhat-2.jar:4.1.16.Final-redhat-2]
      	at org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper.readInt(ChannelBufferWrapper.java:345) [artemis-commons-2.4.0.amq-710010-redhat-1.jar:2.4.0.amq-710010-redhat-1]
      	at org.apache.activemq.artemis.protocol.amqp.converter.jms.ServerJMSObjectMessage.decode(ServerJMSObjectMessage.java:68) [artemis-amqp-protocol-2.4.0.amq-710010-redhat-1.jar:]
      	at org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:116) [artemis-amqp-protocol-2.4.0.amq-710010-redhat-1.jar:]
      	at org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.checkAMQP(CoreAmqpConverter.java:106) [artemis-amqp-protocol-2.4.0.amq-710010-redhat-1.jar:]
      	at org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.deliverMessage(ProtonServerSenderContext.java:683) [artemis-amqp-protocol-2.4.0.amq-710010-redhat-1.jar:]
      	at org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback.sendMessage(AMQPSessionCallback.java:590) [artemis-amqp-protocol-2.4.0.amq-710010-redhat-1.jar:]
      	... 12 more
      

              gaohoward Howard Gao
              rhn-support-hfuruich Hisao Furuichi
              Votes:
              0 Vote for this issue
              Watchers:
              11 Start watching this issue

                Created:
                Updated:
                Resolved: