[
https://issues.apache.org/jira/browse/ARTEMIS-4777?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17848315#comment-17848315
]
Timothy A. Bish edited comment on ARTEMIS-4777 at 5/21/24 6:06 PM:
-------------------------------------------------------------------
The broker connection senders and receivers operate on matching Queues as not
so clearly described in the documentation, and not on a simple address match as
you are trying to configure. In your case when configuring the receiver it
won't attach to the remote unless a queue is created under the matched address
'test' which means you need a local consumer on the address to trigger the
receiver being created on the remote.
I'd guess that the intended use case for broker connection address senders and
receivers was mainly around actual queues and not for multicast addresses,
although as mentioned above you can make it happen with a consumer attached.
For multicast it doesn't make a ton of sense to bring across messages if
there's no place for them to go once they arrive which is why this was mainly
geared towards queues.
There is a call out for this behavior in the documentation after the XML
configuration examples
bq. Receivers can only be matched to a local queue that already exists.
Therefore, if receivers are being used, ensure that queues are pre-created
locally. Otherwise, the broker cannot match the remote queues and addresses.
was (Author: tabish121):
The broker connection senders and receivers operate on matching Queues as not
so clearly described in the documentation, and not on a simple address match as
you are trying to configure. In your case when configuring the receiver it
won't attach to the remote unless a queue is created under the matched address
'test' which means you need a local consumer on the address to trigger the
receiver being created on the remote.
I'd guess that the intended use case for broker connection address senders and
receivers was mainly around actual queues and not for multicast addresses,
although as mentioned above you can make it happen with a consumer attached.
For multicast it doesn't make a ton of sense to bring across messages if
there's no place for them to go once they arrive which is why this was mainly
geared towards queues.
There is a call out for this behavior in the documentation after the XML
configuration examples
{noformat}
Receivers can only be matched to a local queue that already exists. Therefore,
if receivers are being used, ensure that queues are pre-created locally.
Otherwise, the broker cannot match the remote queues and addresses.
{noformat}
> Broker connections (AMQP) with receiver operation not working
> -------------------------------------------------------------
>
> Key: ARTEMIS-4777
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4777
> Project: ActiveMQ Artemis
> Issue Type: Bug
> Affects Versions: 2.33.0
> Environment: Server installed on CentOS Linux release 7.9.2009
> Reporter: Piero Cena
> Priority: Major
>
> Trying to connect an Artemis instance to an instance of ActiveMQ Classic 5.15
> in order to receive messages from one destination (preferably a topic
> destination). Here is the configuration on Artemis instance:
> {code:xml}
> <broker-connections>
> <amqp-connection uri="tcp://amq_classic_host:5673" name="activemq-classic"
> retry-interval="1000" reconnect-attempts="2" user="xxx{*}" password="xxx{*}">
> <receiver address-match="test"/>
> </amqp-connection>
> </broker-connections>{code}
> The address "test" is predefined as multicast on Artemis and exists on the
> other side:
> {code:xml}
> <address name="test">
> <multicast/>
> </address>{code}
> On startup Artemis will connect correctly to Classic but no message is
> received on the Artemis side when published to the Classic destination "test".
> The same test has done with two Artemis brokers, one configured as above, but
> the results are the same.
> Only "sender" or "mirror" operations seem to work properly (between 2
> Artemis).
--
This message was sent by Atlassian Jira
(v8.20.10#820010)