Any outstanding ack should be dispatched on close(). Also, on trunk, the consumer has an optimizeAckTimeout that defaults to 300 milliseconds.
Can you provide a complete test case that captures your configuration and expectation? 2010/1/20 Adrian A <[email protected]> > > > Hello All > > If you are optimising the acknowledgements of messages, is there a way to > flush any pending acks before closing the connection? > > eg > > factory.setOptimizeAcknowledge(true); > > then does > > connection.stop(); > connection.close(); > connection.cleanup(); > > send any remaining acks that haven't yet been sent? In my testing it > doesn't > which results in re-delivery of messages, and from reading the source to > those methods I can't see any reference to flushing the batch... but maybe > I'm missing something? > > In Optimised acknowledge mode it would also be good to be able to set not > just 50% of the pre fetch size as the point that triggers a batch ack, but > also a timeout. ie when 50% or Y mins which ever is sooner, etc. > > Thanks > > Adrian > -- > View this message in context: > http://old.nabble.com/Batch-Acknowledgements-tp27241878p27241878.html > Sent from the ActiveMQ - User mailing list archive at Nabble.com. > > -- http://blog.garytully.com Open Source Integration http://fusesource.com
