-
1. Re: Dead letter/message question
ataylor Aug 24, 2009 11:14 AM (in response to colincrist)If there are no durable subscribers or consumers the message won't be delivered any where. i.e. it will be forgotten about.
-
2. Re: Dead letter/message question
colincrist Aug 25, 2009 11:23 AM (in response to colincrist)Yeah, thats the most common answer I get when I ask this question...
It can be a very useful feature as when a message is sent persistenty then its normaly fair to assume that the message has some importance and so if no durable subscriber exists then perhaps the system(s) using the messaging are not correctly running, configured or initialised.
The ability to route persistent messages to a queue where no durable subscriber exists based on some configuration (e.g. a topic wildcard) would mean a) the queue could be monitored and the error noted and b) the message could be replayed later and not lost.
Regards,
Colin. -
3. Re: Dead letter/message question
timfox Aug 25, 2009 11:36 AM (in response to colincrist)We could do this by adding a new boolean property on AddressSettings: sendToDLAWhenNotRouted (or something like that).
http://hornetq.sourceforge.net/docs/hornetq-2.0.0.BETA5/user-manual/en/html/queue-attributes.html#queue-attributes.address-settings
If a message is routed to an address and doesn't end up in any queues (subscriptions) and sendToDLAWhenNotRouted = true then it will get routed to the DLA (Dead Letter Address) for that address.
http://hornetq.sourceforge.net/docs/hornetq-2.0.0.BETA5/user-manual/en/html/undelivered-messages.html#d0e3908