[
https://issues.apache.org/jira/browse/ARTEMIS-3190?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17305794#comment-17305794
]
Erwin Dondorp commented on ARTEMIS-3190:
----------------------------------------
besides the properties/settings that you also mention, there is nothing extra
in broker.xml.
but I now realize that the addressing scenario was slightly more complicated
then what I mentioned. mea culpa!
When I repeated the test case publishing on multicast address "a.b" and
consuming+rollingback from multicast address "a.b", then the message in the
logfile is only AMQ222149 (Message ... has reached maximum delivery attempts,
sending it to Dead Letter Address DLQ from a.b). so no problem in the simple
scenario. just like you found.
But when we are publishing on multicast address "a.b" and consuming+rollingback
(currently only) from multicast address "a.#", then the messages in the logfile
are first the expected AMQ222149 (Message ... has reached maximum delivery
attempts, sending it to Dead Letter Address DLQ from a.b) and then AMQ222289
(Did not route to any matching bindings on dead-letter-address DLQ and
auto-create-dead-letter-resources is true; dropping message:...). The DLQ queue
that is created is the proper "DLQ.a.#" under address "DLQ", but it remains
empty.
hope this helps...
> AMQ222289: Did not route to any matching bindings on dead-letter-address DLQ
> and auto-create-dead-letter-resources is true
> --------------------------------------------------------------------------------------------------------------------------
>
> Key: ARTEMIS-3190
> URL: https://issues.apache.org/jira/browse/ARTEMIS-3190
> Project: ActiveMQ Artemis
> Issue Type: Wish
> Components: Broker
> Affects Versions: 2.17.0
> Reporter: Erwin Dondorp
> Priority: Major
>
> When a client rollbacks the offered messages, the following error is visible:
> {noformat}
> WARN [org.apache.activemq.artemis.core.server] AMQ222289: Did not route to
> any matching bindings on dead-letter-address DLQ and
> auto-create-dead-letter-resources is true; dropping message:
> Reference[375]:RELIABLE:AMQPStandardMessage( [durable=true, messageID=375,
> address=x1, size=189, applicationProperties={},
> properties=Properties{messageId=8bedcf71-a878-469f-9fdf-937c3dc44a02,
> userId=null, to='x1', subject='null', replyTo='null', correlationId=null,
> contentType=null, contentEncoding=null, absoluteExpiryTime=null,
> creationTime=Fri Mar 19 12:07:02 UTC 2021, groupId='null',
> groupSequence=null, replyToGroupId='null'}, extraProperties =
> TypedProperties[_AMQ_AD=x1]]
> {noformat}
> The original source code of Artemis says "this shouldn't happen, but in case
> it does it's better to log a message than just drop the message silently".
> And indeed the message is dropped.
> setup:
> * use a client that uses createSession(true, Session.CLIENT_ACKNOWLEDGE)
> * let the client always rollback the offered message
> * server has auto-create-dead-letter-resources=true for all addresses
> after 10 tries, the server gives up on the message and tries to move it to
> the DLQ address --> OK.
> when the DLQ address does not exist yet, it is created --> OK
> when the queue under DLQ does not exist yet, it is created --> OK
> but moving the message to that queue fails with the above message --> FAIL
> this results in message loss.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)