Thanks James. I followed your advice and reworte my consumer as syncronous. This seems to be working quite well, but I do have two concerns:
1) In switching from async to sync consumers, I can no longer use Jencks as a container. This means I will need to implement some kind of thread-pooling myself, doesn't it? But I can still use Jencks for connection pooling, for both inbound and outbound, can't I? 2) In some cases, a group includes large files, for which I intended to use ActiveMQ streams. The problem is how to make the stream participate in the transaction (both on the producer and on the consumer side). That is, if my group includes 3 messages AND a file, then the consumer should only commit both the 3 messages and the file, or rollback for all of them. Is this at all possible? It seems to me like it isn't, since a stream API can't participate in a transaction. If so, is there another way for me to achieve both requirements: send several items as an atomic group (even across a cluster), AND send large files with low-memory footprint? Thanks, Naaman -- View this message in context: http://www.nabble.com/Consuming-a-group-of-messages-in-a-single-transaction-tf1966918.html#a5518879 Sent from the ActiveMQ - User forum at Nabble.com.
