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.
---