We are sort of in the same boat. Transactions generally are not just used for redelivery purposes. They also are performance efficient as you can batch.
http://activemq.apache.org/should-i-use-transactions.html What we are doing to avoid hang ups in clients on redeliveries is to use ClientAcknowledgement and clone a message (placing it at the end of the queue) before we Acknowledge it. Our framework is sophisticated enough to manage redeliveries in this way by adding some redeliveredCnt metadata to the message each time it is cloned. Geoffrey Arnold wrote: > > Hi All, > > When a message is rolled back on a session, it appears that no other > messages will be delivered to the consumer's listener for that session > until the original message is consumed (committed). I believe that > this is due to the session attempting to maintain message order, > however this can quickly exhaust message processing when the number of > concurrent consumers is capped. > > What strategies are you using to handle this type of situation? > > Thanks, > Geoff. > > -- View this message in context: http://www.nabble.com/Transactions-and-redelivery-tp25915300p25916092.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.