[ https://issues.apache.org/jira/browse/ARTEMIS-4532?focusedWorklogId=901408&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-901408 ]
ASF GitHub Bot logged work on ARTEMIS-4532: ------------------------------------------- Author: ASF GitHub Bot Created on: 24/Jan/24 10:43 Start Date: 24/Jan/24 10:43 Worklog Time Spent: 10m Work Description: gemmellr commented on code in PR #4710: URL: https://github.com/apache/activemq-artemis/pull/4710#discussion_r1464715255 ########## tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/mqtt5/spec/controlpackets/PublishTests.java: ########## @@ -311,15 +312,15 @@ public void testRetainFlagFalse() throws Exception { // send retained message producer.publish(TOPIC, RETAINED_PAYLOAD.getBytes(), 2, true); - Wait.assertTrue(() -> server.locateQueue(MQTTUtil.convertMqttTopicFilterToCore(MQTTUtil.MQTT_RETAIN_ADDRESS_PREFIX, TOPIC, MQTTUtil.MQTT_WILDCARD)).getMessageCount() == 1, 1000, 100); + Wait.assertTrue(() -> getRetainedMessageQueue(TOPIC).getMessageCount() == 1, 1000, 100); // send an unretained message; should *not* remove the existing retained message producer.publish(TOPIC, UNRETAINED_PAYLOAD.getBytes(), 2, false); producer.disconnect(); producer.close(); - Wait.assertFalse(() -> server.locateQueue(MQTTUtil.convertMqttTopicFilterToCore(MQTTUtil.MQTT_RETAIN_ADDRESS_PREFIX, TOPIC, MQTTUtil.MQTT_WILDCARD)).getMessageCount() > 1, 1000, 100); + Wait.assertFalse(() -> getRetainedMessageQueue(TOPIC).getMessageCount() > 1, 1000, 100); Review Comment: Makes sense. I think maybe I misread that when I commented, not sure I saw/considered the wait. I'd generally try to avoid burning 1 second like that by doing something else instead thats likely to be more timely but gives the same 'processing should have occurred' result , e.g publishing another message somewhere else after the one currently being sent here, and waiting for it to arrive (after processing of the earlier message completes) before then checking on the retained message queue. Its only a second, yes, but it quickly adds up...there are ~20,000 tests after all. Issue Time Tracking ------------------- Worklog Id: (was: 901408) Time Spent: 2h (was: 1h 50m) > MQTT-to-core wildcard conversion is broken > ------------------------------------------ > > Key: ARTEMIS-4532 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4532 > Project: ActiveMQ Artemis > Issue Type: Bug > Reporter: Justin Bertram > Assignee: Justin Bertram > Priority: Major > Time Spent: 2h > Remaining Estimate: 0h > > Currently when an MQTT topic filter contains characters from the configured > [wildcard > syntax|https://activemq.apache.org/components/artemis/documentation/latest/wildcard-syntax.html#wildcard-syntax] > the conversion to/from this syntax breaks. > For example, when using the default wildcard syntax if an MQTT topic filter > contains a {{.}} the conversion from the MQTT wildcard syntax to the core > wildcard syntax and back will result in the {{.}} being replaced with a {{/}}. -- This message was sent by Atlassian Jira (v8.20.10#820010)