Github user michaelandrepearce commented on a diff in the pull request: https://github.com/apache/activemq-artemis/pull/1820#discussion_r164163557 --- Diff: artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQSession.java --- @@ -698,8 +699,17 @@ private ActiveMQMessageConsumer createConsumer(final ActiveMQDestination dest, */ if (!response.isExists() || !response.getQueueNames().contains(dest.getSimpleAddress())) { if (response.isAutoCreateQueues()) { + SimpleString queueNameToUse = dest.getSimpleAddress(); + SimpleString addressToUse = queueNameToUse; + RoutingType routingTypeToUse = RoutingType.ANYCAST; + if (CompositeAddress.isFullyQualified(queueNameToUse.toString())) { + CompositeAddress compositeAddress = CompositeAddress.getQueueName(queueNameToUse.toString()); + addressToUse = new SimpleString(compositeAddress.getAddress()); + queueNameToUse = new SimpleString(compositeAddress.getQueueName()); + routingTypeToUse = RoutingType.MULTICAST; --- End diff -- So if this is related to virtual topics why complicate things for the Core JMS client and introduce such problems it has JMS 2.0 spec as such shared durable subscribers, which is the spec equiv of such feature.
---