PiotrKlimczak edited a comment on issue #2760: ARTEMIS-2420 Adding support for DLA/DLQ prefix for wildcard addresses URL: https://github.com/apache/activemq-artemis/pull/2760#issuecomment-512983300 OK so I am running all tests now so taking this time to write some design documentation of what was implemented how and why. Let's start with example configuration: <address-setting match="#"> <dead-letter-address-auto-create prefix="DLA."> <routing-type>AS_ORIGIN</routing-type> <durable>true</durable> <temporary>false</temporary> </dead-letter-address-auto-create> </address-setting> <address-setting match="DLA.#"> <!-- DLA config goes here, as for standard addresses --> </address-setting> So how DLAs will behave, can be configured in standard way. Also there is new routing type added for DLA addresses only: AS_ORIGIN. This new type ensures that if you have multiple queues for address, the message will go to corresponding DLQ only. So if you have address A1 with queues Q1 and Q2, and Q2 consumption fails, the message will go only to DLA.Q2 DLQ and never to DLA.Q1. This ensures predictive dead letter outcome if configured, as obviously ANYCAST and MULTICAST (default) are also supported. EDIT 1 Dead Letter Auto creation only works for messages which were rolled back from consumer. It doesnt work for messages which were sent to address with no queues. This is because it would be then likely for the broker to run into stack overflow, if DLA would be configured with queue auto creation disabled. Additionally it would be small value I think but I am happy to be challenged on that. Overall my work is not fully finished, as I would like to add more tests and address more concerns raised. But also I am not going to polish it to achieve full happines, without confirmation from you guys, that it is heading in good direction- just to save me wasting my time if it is not. EDIT 2 Above can be reviewed in this PR: https://github.com/clebertsuconic/activemq-artemis/pull/29
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services
