activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dziugas Baltrunas" <>
Subject When QueueView.purge() does not actually purge?
Date Mon, 06 Aug 2007 12:58:42 GMT

I'm using Apache ActiveMQ 4.1.1 with the default configuration. I
noticed that in some cases JMX expoded purge() method does not
actually purge messages from the queue.

I'm not yet able to reproduce the situation, so I'll just describe
some details. My producer side is standard Java application and
consumer side is made using activemq-cpp (2.01, openWire protocol).
When cpp consumer fails with some unhandled IOException (for example,
when BytesMessage body is empty), message is not removed from the
queue (since it's not acknowledged?). However, trying to remove it by
using JMX purge() does not remove message from queue. What is more,
restarting activemq process also does not help - when the queue is
recreated (via session.createQueue()), old messages appear again in
the queue. Only deleting queue via JMX removeQueue() helps. Looks like
it happens for messages having both PERSISTENT and NON_PERSISTENT
delivery modes.

I'm wondering to know in which circumstances purge() might not
actually purge the queue and why ActiveMQ process restart does not
flush the data for NON_PERSISTENT messages?

Thanks in advance.

Dziugas Baltrunas

View raw message