activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From fenbers <>
Subject The dilemma of not acknowledging messages
Date Thu, 09 Aug 2012 18:17:26 GMT

I want unexpired JMS messages to be redelivered if my client application is
stopped and restarted.  To accomplish this, I do not have the client
acknowledge the receipt of messages.  An unfortunate side-effect of this
practice is that the db-/N/.log files in the ${}/kahadb
directory never get cleaned up, and after these build up to a few hundred in
number, ActiveMQ starts affecting the performance of it clients (although I
cannot yet tell if it is the producer part that's bogging down or the
consumer part that's bogging down).  I did add  to activemq.xml, but
commented out  and don't remember why, but this did cause some sort of
problem when I last tried it over a year ago...

As I see it, there are three ways to get around this problem.  I don't know
if any of them are possible, and is what I am seeking advice about.  They
1) figure out a way to have unexpired messages redelivered even if they've
been acknowledged.
2) figure out a way to have the delivered (but expired) messages purged even
though they haven't been acknowledged by the client.  (Currently, if they
are not acknowledged, they are marked "in-use" and the db-/N/.log files
aren't cleaned up.)
3) occasionally delete the older db-/N/.log outside of ActiveMQ (say on
cron, etc.), but will this cause ActiveMQ to behave improperly?

Or is there a different way altogether?


View this message in context:
Sent from the ActiveMQ - User mailing list archive at
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message