-
Bug
-
Resolution: Done
-
Blocker
-
A-MQ 7.0.0.ER18
-
None
-
Oracle JDK 1.8.0
messagess send via hawto to an address will break that address and its queues for further use. This will basically lead to loss of any already enqueued messages.
Reproducibility: 100%
Actual results:
- client is unable to receive anything
- in hawtio statistics, message count is increased by one for every receiver call
- any consecutive use of that particular address/queue is impossible due to this invalid state
Expected results:
- receiver will receive a message
- statistics will get correctly updated
Broker log:
15:15:40,276 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=test.debug, queue=QueueImpl[name=test.debug, postOffice=PostOfficeImpl [server=ActiveMQServerImpl::serverUUID=2634e55c-1b94-11e7-9a2c-643150236e4b], temp=false]@275cd12e, filter=null, name=test.debug, clusterName=test.debug2634e55c-1b94-11e7-9a2c-643150236e4b]], message=Reference[14]:NON-RELIABLE:CoreMessage[messageID=14,durable=false,userID=null,priority=0, timestamp=Fri Apr 07 15:15:20 CEST 2017,expiration=0, durable=false, address=test.debug,properties=TypedProperties[]]@2091087701: java.lang.IllegalStateException: Can't deliver message java.lang.IndexOutOfBoundsException: readerIndex(1) + length(4) exceeds writerIndex(3): ReadOnlyByteBuf(ridx: 1, widx: 3, cap: 3/3, unwrapped: UnpooledSlicedByteBuf(ridx: 0, widx: 3, cap: 3/3, unwrapped: UnpooledUnsafeHeapByteBuf(ridx: 0, widx: 61, cap: 64))) at org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback.sendMessage(AMQPSessionCallback.java:512) [artemis-amqp-protocol-2.0.0.amq-700003-redhat-1.jar:] at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.deliverStandardMessage(ServerConsumerImpl.java:1050) [artemis-server-2.0.0.amq-700003-redhat-1.jar:2.0.0.amq-700003-redhat-1] at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.proceedDeliver(ServerConsumerImpl.java:430) [artemis-server-2.0.0.amq-700003-redhat-1.jar:2.0.0.amq-700003-redhat-1] at org.apache.activemq.artemis.core.server.impl.QueueImpl.proceedDeliver(QueueImpl.java:2649) [artemis-server-2.0.0.amq-700003-redhat-1.jar:2.0.0.amq-700003-redhat-1] at org.apache.activemq.artemis.core.server.impl.QueueImpl.deliver(QueueImpl.java:2138) [artemis-server-2.0.0.amq-700003-redhat-1.jar:2.0.0.amq-700003-redhat-1] at org.apache.activemq.artemis.core.server.impl.QueueImpl.access$1700(QueueImpl.java:102) [artemis-server-2.0.0.amq-700003-redhat-1.jar:2.0.0.amq-700003-redhat-1] at org.apache.activemq.artemis.core.server.impl.QueueImpl$DeliverRunner.run(QueueImpl.java:2882) [artemis-server-2.0.0.amq-700003-redhat-1.jar:2.0.0.amq-700003-redhat-1] at org.apache.activemq.artemis.utils.OrderedExecutorFactory$OrderedExecutor$ExecutorTask.run(OrderedExecutorFactory.java:101) [artemis-commons-2.0.0.amq-700003-redhat-1.jar:2.0.0.amq-700003-redhat-1] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_121] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_121] at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_121] Caused by: java.lang.IndexOutOfBoundsException: readerIndex(1) + length(4) exceeds writerIndex(3): ReadOnlyByteBuf(ridx: 1, widx: 3, cap: 3/3, unwrapped: UnpooledSlicedByteBuf(ridx: 0, widx: 3, cap: 3/3, unwrapped: UnpooledUnsafeHeapByteBuf(ridx: 0, widx: 61, cap: 64))) at io.netty.buffer.AbstractByteBuf.checkReadableBytes0(AbstractByteBuf.java:1395) [netty-all-4.1.5.Final-redhat-1.jar:4.1.5.Final-redhat-1] at io.netty.buffer.AbstractByteBuf.readInt(AbstractByteBuf.java:766) [netty-all-4.1.5.Final-redhat-1.jar:4.1.5.Final-redhat-1] at io.netty.buffer.WrappedByteBuf.readInt(WrappedByteBuf.java:571) [netty-all-4.1.5.Final-redhat-1.jar:4.1.5.Final-redhat-1] at io.netty.buffer.WrappedByteBuf.readInt(WrappedByteBuf.java:571) [netty-all-4.1.5.Final-redhat-1.jar:4.1.5.Final-redhat-1] at org.apache.activemq.artemis.api.core.SimpleString.readSimpleString(SimpleString.java:148) [artemis-commons-2.0.0.amq-700003-redhat-1.jar:2.0.0.amq-700003-redhat-1] at org.apache.activemq.artemis.api.core.SimpleString.readNullableSimpleString(SimpleString.java:143) [artemis-commons-2.0.0.amq-700003-redhat-1.jar:2.0.0.amq-700003-redhat-1] at org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper.readNullableSimpleString(ChannelBufferWrapper.java:69) [artemis-commons-2.0.0.amq-700003-redhat-1.jar:2.0.0.amq-700003-redhat-1] at org.apache.activemq.artemis.reader.TextMessageUtil.readBodyText(TextMessageUtil.java:37) [artemis-core-client-2.0.0.amq-700003-redhat-1.jar:2.0.0.amq-700003-redhat-1] at org.apache.activemq.artemis.protocol.amqp.converter.jms.ServerJMSTextMessage.decode(ServerJMSTextMessage.java:94) [artemis-amqp-protocol-2.0.0.amq-700003-redhat-1.jar:] at org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:114) [artemis-amqp-protocol-2.0.0.amq-700003-redhat-1.jar:] at org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.checkAMQP(CoreAmqpConverter.java:104) [artemis-amqp-protocol-2.0.0.amq-700003-redhat-1.jar:] at org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.deliverMessage(ProtonServerSenderContext.java:601) [artemis-amqp-protocol-2.0.0.amq-700003-redhat-1.jar:] at org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback.sendMessage(AMQPSessionCallback.java:506) [artemis-amqp-protocol-2.0.0.amq-700003-redhat-1.jar:] ... 10 more
- is related to
-
ARTEMIS-1107 Loading...