tabish121 commented on code in PR #5757: URL: https://github.com/apache/activemq-artemis/pull/5757#discussion_r2138369098
########## artemis-protocols/artemis-mqtt-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/mqtt/MQTTSessionState.java: ########## @@ -587,8 +588,8 @@ public Integer getMatchingId(String topic) { private void update(MqttTopicSubscription newSub, Integer newId) { if (newId != null && !newId.equals(id)) { - if (this.topicFilterPattern == null || !subscription.topicFilter().equals(newSub.topicFilter())) { - topicFilterPattern = Match.createPattern(newSub.topicFilter(), MQTTUtil.MQTT_WILDCARD, true); + if (this.address == null || !subscription.topicFilter().equals(newSub.topicFilter())) { + address = new AddressImpl(SimpleString.of(newSub.topicFilter()), MQTTUtil.MQTT_WILDCARD); Review Comment: Have you considered alternatives to newing up an AddressImpl each time to check for a match. Perhaps adding method to address that takes a string and wildcard configuration which would allow you to use the existing 'address' instance as the source of the equality check. I almost got tripped up here thinking you created an instance that should have been assigned but wasn't. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: gitbox-unsubscr...@activemq.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: gitbox-unsubscr...@activemq.apache.org For additional commands, e-mail: gitbox-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact