[
https://issues.apache.org/jira/browse/ARTEMIS-2587?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17019716#comment-17019716
]
Justin Bertram commented on ARTEMIS-2587:
-----------------------------------------
There are lots of ways to implement a solution for a problem, especially when
it comes to programming. The goal of ActiveMQ Artemis is not simply to
re-implement all the features and functionality of ActiveMQ 5.x. The goal is to
provide a high performance and highly scalable core which can serve the
ActiveMQ community well into the future and which also provides features and
functionality _equivalent_ (and sometimes equal) to 5.x where it makes good
sense.
As far as I understand it, the fundamental functionality here is the ability to
identify where a "dead" message was originally sent. ActiveMQ 5.x implements
this via the {{individualDeadLetterStrategy}} which creates a DLQ for every
queue. ActiveMQ Artemis implements this by setting properties on the "dead"
messages themselves.
In your use-case description you're stating the issue in the terms of an
implementation detail rather than outlining the problem you're trying to solve
conceptually (to which then an implementation can then be applied). In other
words, you're saying you need a DLQ for every queue but you don't say _why_
specifically. What underlying problem are you trying to solve? Why can't your
enterprise policy be to use message properties rather than individual queues?
To your points, currently in Artemis messages that have failed in a JMS queue
can be easily viewable and located using a JMS selector or if an administrator
is using the web console they can simply use a filter when browsing the queue.
There shouldn't be any "sifting" necessary.
> ActiveMQ5-like dead letter strategy
> -----------------------------------
>
> Key: ARTEMIS-2587
> URL: https://issues.apache.org/jira/browse/ARTEMIS-2587
> Project: ActiveMQ Artemis
> Issue Type: New Feature
> Components: Broker
> Reporter: Adil Arif
> Priority: Major
>
> In ActiveMQ 5 there is an {{individualDeadLetterStrategy}} policy available
> for the [Dead Letter
> Strategy|http://activemq.apache.org/message-redelivery-and-dlq-handling.html],
> e.g.:
> {noformat}
> <policyEntry queue=">">
> <deadLetterStrategy>
> <individualDeadLetterStrategy queuePrefix="DLQ."
> useQueueForQueueMessages="true"/>
> </deadLetterStrategy>
> </policyEntry>{noformat}
> This feature allows organizations to implement standardized policies on a
> broker for ensuring each queue has its own equivalent dead letter queue in an
> easy to configure fashion.
> This feature has shown interest by others in the past on the [mailing
> list|http://activemq.2283324.n4.nabble.com/Artemis-DLQ-strategy-td4710234.html]
> as well as [Red Hat's Knowledgebase
> |https://access.redhat.com/solutions/3140741].
--
This message was sent by Atlassian Jira
(v8.3.4#803005)