Haven't look at the camel code yet, but don't think I need to at this point - it appears to be working as-documented.
ActiveMQ is expiring inflight messages. In other words, the following is happening (from the broker's perspecive): <ul> <li> camel consumer for queue.start is started <li> message produced to broker on queue.start with expiration set <li> camel consumer receives message <li> message expires <li> broker puts message into the DLQ (not sure whether this is expected operation) <li> camel route produces message to queue.end <li> consumer finally acknowledges the message (by a tranaction commit()) <li> message on queue.end expires and is routed to the DLQ <ul> Would you mind to take the time to trim down the example to a non-camel test case which shows an inflight message doing to the DLQ? Then either you or I can create a jira entry for this (preferrably you will do it to maintain the history). Given that slow consumption is a Very Bad Thing for any JMS solution, and that delivering an inflight message to a DLQ, from where it might incur additional processing, is also a Bad Thing, the broker should not be expiring inflight messages until they return to the broker for reprocessing (i.e. client does not successfully ACK the message). -- View this message in context: http://activemq.2283324.n4.nabble.com/Behavior-when-a-message-expires-while-it-is-processing-tp4680241p4680263.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.