Search code examples
javajmsjboss7.xhornetqactivemq-artemis

HornetQ vs. Artemis ActiveMQ diverts


I'm migrating a messaging application from EAP6 to EAP7. This required me to migrate from HornetQ to Artemis. I found an apparently undocumented change: diverted messages (non-exclusive) in HornetQ used to lose their expiry setting while diverted messages in Artemis preserve their expiry.

This is really inconvenient for my case: i'm using non-exclusive diverts to clone messages to some monitoring queues where i don't want them to just disappear!

Do i need to implement a transformer to be applied to the divert in order to remove the expiry on diversion? Or am i missing something more basic?


Solution

  • The change you're referring to was actually a bug in HornetQ that was fixed via this JIRA. That change was brought over to Artemis when HornetQ was donated to Apache ActiveMQ. According to that JIRA the change should be in JBoss EAP 6.2 CR2. Perhaps the version of EAP 6 you were using wasn't current enough to have this fix already.