FYI - I opened ARTEMIS-4760 [1] for this issue. I'll send a PR with a fix soon.
Justin [1] https://issues.apache.org/jira/browse/ARTEMIS-4760 On Fri, May 3, 2024 at 12:46 PM Justin Bertram <jbert...@apache.org> wrote: > I believe this is a bug in the MQTT implementation. As noted in the > documentation [1]: > > > Automatic queue creation is for queues that would not otherwise be > created during normal operation. > > However, the MQTT implementation is deciding on whether to create the > subscription queue based on the <auto-create-queues> setting. I'll open a > Jira and get this fixed. > > In the meantime you can work-around this by setting <auto-create-queues> > to true for the relevant address(es). > > > Justin > > [1] > https://activemq.apache.org/components/artemis/documentation/latest/address-model.html#automatic-configuration > > On Tue, Apr 30, 2024 at 8:41 AM Pushparaj Chinnathambi < > pushpara...@raster.in> wrote: > >> Hi, >> I’m trying to connect an ActiveMQ Artemis topic queue with the >> following configurations. Based on my settings, I don’t want to create >> dynamic queues when clients establish new connections. However, after >> applying this configuration, I’m unable to connect to my topic queue. >> Could >> you please explain why this is happening and guide me to connect the topic >> queue without creating the new queue? >> >> *broker.xml* configuration >> >> ``` >> <address-settings> >> <!-- if you define auto-create on certain queues, management has >> to be auto-create --> >> <address-setting match="activemq.management#"> >> <dead-letter-address>DLQ</dead-letter-address> >> <expiry-address>ExpiryQueue</expiry-address> >> <redelivery-delay>0</redelivery-delay> >> <!-- with -1 only the global-max-size is in use for limiting >> --> >> <max-size-bytes>-1</max-size-bytes> >> >> <message-counter-history-day-limit>10</message-counter-history-day-limit> >> <address-full-policy>PAGE</address-full-policy> >> <auto-create-queues>false</auto-create-queues> >> <auto-create-addresses>false</auto-create-addresses> >> </address-setting> >> <!--default for catch all--> >> <address-setting match="#"> >> <dead-letter-address>DLQ</dead-letter-address> >> <expiry-address>ExpiryQueue</expiry-address> >> <redelivery-delay>0</redelivery-delay> >> >> >> <message-counter-history-day-limit>10</message-counter-history-day-limit> >> <address-full-policy>PAGE</address-full-policy> >> <auto-create-queues>false</auto-create-queues> >> <auto-create-addresses>false</auto-create-addresses> >> <auto-delete-queues>false</auto-delete-queues> >> <auto-delete-addresses>false</auto-delete-addresses> >> >> <!-- The size of each page file --> >> <page-size-bytes>10M</page-size-bytes> >> >> <!-- When we start applying the address-full-policy, e.g >> paging >> --> >> <!-- Both are disabled by default, which means we will use the >> global-max-size/global-max-messages --> >> <max-size-bytes>-1</max-size-bytes> >> <max-size-messages>-1</max-size-messages> >> >> <!-- When we read from paging into queues (memory) --> >> >> <max-read-page-messages>-1</max-read-page-messages> >> <max-read-page-bytes>20M</max-read-page-bytes> >> >> <!-- Limit on paging capacity before starting to throw errors >> --> >> >> <page-limit-bytes>-1</page-limit-bytes> >> <page-limit-messages>-1</page-limit-messages> >> </address-setting> >> </address-settings> >> ``` >> >> by using this configuration I'm facing queue not found error in >> *artemis.log* file >> >> ``` >> 2024-04-29 19:15:34,563 ERROR >> [org.apache.activemq.artemis.core.protocol.mqtt] AMQ834002: Error >> processing control packet: >> MqttSubscribeMessage[fixedHeader=MqttFixedHeader[messageType=SUBSCRIBE, >> isDup=false, qosLevel=AT_LEAST_ONCE, isRetain=false, remainingLength=35], >> variableHeader=MqttMessageIdAndPropertiesVariableHeader[messageId=1, >> properties=io.netty.handler.codec.mqtt.MqttProperties@511f28bc], >> >> payload=MqttSubscribePayload[MqttTopicSubscription[topicFilter=ONEEMR/PUSH_NOTIFICATION_TOPIC, >> option=SubscriptionOption[qos=AT_LEAST_ONCE, noLocal=false, >> retainAsPublished=false, retainHandling=SEND_AT_SUBSCRIBE]]]] >> org.apache.activemq.artemis.api.core.ActiveMQNonExistentQueueException: >> AMQ229017: Queue ONEEMR.PUSH_NOTIFICATION_TOPIC does not exist >> at >> >> org.apache.activemq.artemis.core.protocol.mqtt.MQTTSubscriptionManager.createQueueForSubscription(MQTTSubscriptionManager.java:163) >> ~[artemis-mqtt-protocol-2.33.0.jar:2.33.0] >> at >> >> org.apache.activemq.artemis.core.protocol.mqtt.MQTTSubscriptionManager.addSubscription(MQTTSubscriptionManager.java:108) >> ~[artemis-mqtt-protocol-2.33.0.jar:2.33.0] >> at >> >> org.apache.activemq.artemis.core.protocol.mqtt.MQTTSubscriptionManager.addSubscriptions(MQTTSubscriptionManager.java:303) >> ~[artemis-mqtt-protocol-2.33.0.jar:2.33.0] >> at >> >> org.apache.activemq.artemis.core.protocol.mqtt.MQTTProtocolHandler.handleSubscribe(MQTTProtocolHandler.java:382) >> ~[artemis-mqtt-protocol-2.33.0.jar:2.33.0] >> at >> >> org.apache.activemq.artemis.core.protocol.mqtt.MQTTProtocolHandler.act(MQTTProtocolHandler.java:177) >> ~[artemis-mqtt-protocol-2.33.0.jar:2.33.0] >> at >> org.apache.activemq.artemis.utils.actors.Actor.doTask(Actor.java:32) >> ~[artemis-commons-2.33.0.jar:2.33.0] >> at >> >> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68) >> ~[artemis-commons-2.33.0.jar:2.33.0] >> at >> >> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) >> [?:?] >> at >> >> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) >> [?:?] >> at >> >> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118) >> [artemis-commons-2.33.0.jar:2.33.0] >> ``` >> *Thanks in advance😊😊* >> >> On Tue, 30 Apr 2024 at 10:58, Justin Bertram <jbert...@apache.org> wrote: >> >> > From what I can tell you aren't actually subscribed to the ActiveMQ >> users >> > list so you will not receive any replies sent to the list and not >> directly >> > to you (which is how replies are normally sent). Please subscribe [1] to >> > the list in order to use it properly. Thanks! >> > >> > Also, please be aware that screenshots attached to emails are not passed >> > to subscribers. If a screenshot is critical to explaining your issue >> please >> > upload it somewhere and provide a link to it. Otherwise simply describe >> in >> > more detail what your problem actually is without referencing >> screenshots. >> > >> > >> > Justin >> > >> > [1] https://activemq.apache.org/contact >> > >> > On Tue, Apr 30, 2024 at 12:14 AM Pushparaj Chinnathambi < >> > pushpara...@raster.in> wrote: >> > >> >> Hi, >> >> I’m trying to connect an ActiveMQ Artemis topic queue with >> the >> >> following configurations. Based on my settings, I don’t want to create >> >> dynamic queues when clients establish new connections. However, after >> >> applying this configuration, I’m unable to connect to my topic queue. >> Could >> >> you please explain why this is happening and guide me on resolving this >> >> issue? >> >> >> >> >> >> [image: broker-file-configuration.png] >> >> [image: log-file.png][image: queue-settings.png] >> >> -- >> >> *------------------------* >> >> *Thanks & Regards,* >> >> *Pushparaj Chinnathambi* >> >> Team Lead >> >> *Raster Images Pvt. Ltd.* >> >> Salem 636 004, TN, India >> >> E: pushpara...@raster.in >> >> >> >> >> >> >> >> -- >> *------------------------* >> *Thanks & Regards,* >> *Pushparaj Chinnathambi* >> Team Lead >> *Raster Images Pvt. Ltd.* >> Salem 636 004, TN, India >> E: pushpara...@raster.in >> >