[ https://issues.apache.org/jira/browse/ARTEMIS-2100?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16663540#comment-16663540 ]
ASF GitHub Bot commented on ARTEMIS-2100: ----------------------------------------- Github user grs commented on the issue: https://github.com/apache/activemq-artemis/pull/2392 Two points: 1) in my case, accessing over AMQP, the sender is *not* defining any routing type 2) I would not expect a sender requesting a routing type explicitly to redefine a statically defined address i.e. if address pre-exists and has routing types only multicast, a sender attempting to request anycast should be informed that their intentions do not match the pre-configured semantics (of course if the address does not exist then it can be defined according to the senders desires providing auto-creation of the address is allowed). > address routing-type overridden on attaching AMQP sender > -------------------------------------------------------- > > Key: ARTEMIS-2100 > URL: https://issues.apache.org/jira/browse/ARTEMIS-2100 > Project: ActiveMQ Artemis > Issue Type: Bug > Affects Versions: 2.6.2 > Reporter: Gordon Sim > Priority: Major > Fix For: 2.6.4 > > > If the default-address-routing-type is set to ANYCAST and an address is > created with routing-type MULTICAST, then when an AMQP sender attaches to > that address the address is recreated with routing-type=[MULTICAST,ANYCAST] > and a queue with the same name as the address is created. It is expected that > the address routing-type should be honoured. > E.g. on broker with: > {noformat} > <address-setting match="#"> > <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>true</auto-create-queues> > <auto-create-addresses>true</auto-create-addresses> > <auto-create-jms-queues>true</auto-create-jms-queues> > <auto-create-jms-topics>true</auto-create-jms-topics> > > <default-address-routing-type>ANYCAST</default-address-routing-type> > </address-setting> > {noformat} > Create a MULTICAST address: > {noformat} > artemis address create --multicast --no-anycast --name mytopic > {noformat} > Check the address and any queues (feilds ommitted for clarity): > {noformat} > $ artemis address show --name mytopic > Address [name=mytopic, routingTypes={MULTICAST}, autoCreated=false] > $ artemis queue stat > |NAME |ADDRESS > |DLQ |DLQ > |ExpiryQueue |ExpiryQueue > |activemq.management.612e33f1-1c5f-4bde-99bb-9e9188efa508|activemq.management.612e33f1-1c5f-4bde-99bb-9e9188efa508|1 > > {noformat} > Now attach an AMQP sender to the address, e.g. using Qpid Proton python > example > {noformat} > simple_send.py -a localhost/mytopic -m 1 > {noformat} > Now the address has been altered and a queue called mytopic exists: > {noformat} > $ artemis address show --name mytopic > Address [name=mytopic, routingTypes={MULTICAST,ANYCAST}, autoCreated=false] > $ artemis queue stat > |NAME |ADDRESS > |DLQ |DLQ > |ExpiryQueue |ExpiryQueue > |activemq.management.5a393c3e-746d-404b-9afb-36849886aaa5|activemq.management.5a393c3e-746d-404b-9afb-36849886aaa5 > |mytopic |mytopic > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)