-
Type:
Bug
-
Status: New
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: A-MQ 7.0.0.CR1
-
Fix Version/s: None
-
Component/s: None
-
Labels:None
-
Environment:
amq-broker-7.0.0.CR1-redhat-1
-
Target Release:
-
Affects:Release Notes, Compatibility/Configuration
-
Release Notes Text:Using an A-MQ 6 JMS client to send messages to an address that has a queue with purgeOnNoConsumer set to true fails if the queue has no consumers. It is recommended that you do not set the purgeOnNoConsumer option when using A-MQ 6 JMS clients.
-
Release Notes Docs Status:Documented as Known Issue
1) Create queue with defined purgeOnNoConsumer. (Please dont mind the 'delete-on-no-consumer', tool has not been update, but populates proper value in call)
[0,root@mt_r6x0 ~]$ java -jar /var/dtests/node_data/clients/amqx.jar queue --host <host>:1099 --action add --delete-on-no-consumer True -n purge
|
Queue 'purge' created; purgeOnNoConsumers': True,
|
2) Send few messages to this queue using openwire client
[0,root@mt_r6x0 ~]$ java -jar /var/dtests/node_data/clients/aoc7.jar sender --log-msgs interop --broker <host>:61616 --conn-username admin --conn-password admin --address purge --count 5
|
17:46:03,374 ERROR Error while sending a message!
|
javax.jms.InvalidDestinationException: Cannot publish to a non-existent Destination: queue://purge
|
at org.apache.activemq.artemis.core.protocol.openwire.amq.AMQSession.lambda$send$0(AMQSession.java:353)
|
at org.apache.activemq.artemis.core.paging.impl.PagingStoreImpl.checkMemory(PagingStoreImpl.java:696)
|
at org.apache.activemq.artemis.core.protocol.openwire.amq.AMQSession.send(AMQSession.java:346)
|
at org.apache.activemq.artemis.core.protocol.openwire.OpenWireConnection$CommandProcessor.processMessage(OpenWireConnection.java:1366)
|
at org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:768)
|
at org.apache.activemq.artemis.core.protocol.openwire.OpenWireConnection.bufferReceived(OpenWireConnection.java:271)
|
at org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl$DelegatingBufferHandler.bufferReceived(RemotingServiceImpl.java:628)
|
at org.apache.activemq.artemis.core.remoting.impl.netty.ActiveMQChannelHandler.channelRead(ActiveMQChannelHandler.java:69)
|
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:372)
|
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:358)
|
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:350)
|
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:293)
|
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:267)
|
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:372)
|
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:358)
|
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:350)
|
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1334)
|
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:372)
|
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:358)
|
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:926)
|
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:972)
|
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:386)
|
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:302)
|
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:873)
|
at java.lang.Thread.run(Thread.java:745)
|
3) It works with AMQP clients
[1,root@mt_r6x0 ~]$ java -jar /var/dtests/node_data/clients/aac1.jar sender --log-msgs interop --broker <host>:61616 --conn-username admin --conn-password admin --address purge --count 5
|
{'durable': True, 'priority': 4, 'ttl': 0, 'first-acquirer': False, 'delivery-count': 0, 'id': 'cfbefba5-8970-4cfa-b431-d9804c1e583a:1:1:1-1', 'user-id': None, 'address': 'purge', 'subject': None, 'reply-to': None, 'correlation-id': None, 'content-type': None, 'content-encoding': None, 'absolute-expiry-time': 0, 'creation-time': 1493135211901, 'group-id': None, 'group-sequence': 0, 'reply-to-group-id': None, 'properties': {'JMSXDeliveryCount': 1}, 'content': None}
|
{'durable': True, 'priority': 4, 'ttl': 0, 'first-acquirer': False, 'delivery-count': 0, 'id': 'cfbefba5-8970-4cfa-b431-d9804c1e583a:1:1:1-2', 'user-id': None, 'address': 'purge', 'subject': None, 'reply-to': None, 'correlation-id': None, 'content-type': None, 'content-encoding': None, 'absolute-expiry-time': 0, 'creation-time': 1493135211957, 'group-id': None, 'group-sequence': 0, 'reply-to-group-id': None, 'properties': {'JMSXDeliveryCount': 1}, 'content': None}
|
{'durable': True, 'priority': 4, 'ttl': 0, 'first-acquirer': False, 'delivery-count': 0, 'id': 'cfbefba5-8970-4cfa-b431-d9804c1e583a:1:1:1-3', 'user-id': None, 'address': 'purge', 'subject': None, 'reply-to': None, 'correlation-id': None, 'content-type': None, 'content-encoding': None, 'absolute-expiry-time': 0, 'creation-time': 1493135211963, 'group-id': None, 'group-sequence': 0, 'reply-to-group-id': None, 'properties': {'JMSXDeliveryCount': 1}, 'content': None}
|
{'durable': True, 'priority': 4, 'ttl': 0, 'first-acquirer': False, 'delivery-count': 0, 'id': 'cfbefba5-8970-4cfa-b431-d9804c1e583a:1:1:1-4', 'user-id': None, 'address': 'purge', 'subject': None, 'reply-to': None, 'correlation-id': None, 'content-type': None, 'content-encoding': None, 'absolute-expiry-time': 0, 'creation-time': 1493135211969, 'group-id': None, 'group-sequence': 0, 'reply-to-group-id': None, 'properties': {'JMSXDeliveryCount': 1}, 'content': None}
|
{'durable': True, 'priority': 4, 'ttl': 0, 'first-acquirer': False, 'delivery-count': 0, 'id': 'cfbefba5-8970-4cfa-b431-d9804c1e583a:1:1:1-5', 'user-id': None, 'address': 'purge', 'subject': None, 'reply-to': None, 'correlation-id': None, 'content-type': None, 'content-encoding': None, 'absolute-expiry-time': 0, 'creation-time': 1493135211977, 'group-id': None, 'group-sequence': 0, 'reply-to-group-id': None, 'properties': {'JMSXDeliveryCount': 1}, 'content': None}
|
- is duplicated by
-
ENTMQBR-753 Unable to send messages to queue with defined 'purgeOnNoConsumers' using OpenWire client
-
- Done
-
- is related to
-
ENTMQBR-647 purgeOnNoConsumer is not working properly
-
- Done
-
-
ENTMQBR-753 Unable to send messages to queue with defined 'purgeOnNoConsumers' using OpenWire client
-
- Done
-
-
ENTMQBR-649 Unable to receive messages from queue with defined 'purgeOnNoConsumers' and default max-consumers 0
-
- Done
-
- relates to
-
ENTMQBR-647 purgeOnNoConsumer is not working properly
-
- Done
-