activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dave cawthorn <>
Subject Re: Non Persistent queue message TTL
Date Fri, 03 Nov 2006 07:26:53 GMT


Yes I did mean the RAM buffer. And once a message is expired it seems there
is no way to retrieve it off the queue.

Is it possible to set an eviction policy, that would deliver these messages
to the dead letter queue, that would be obeyed or are those policy elements
only for permanent messages?


James.Strachan wrote:
> On 10/23/06, Dave cawthorn <> wrote:
>> HI,
>> Do non persistent messages with a TTL ever get removed out of the brokers
>> message store?
> Non persistent messages shouldn't be getting written to the message
> store? Or do you mean the RAM buffer?
>>  I wrote a test that sends a non persistent message with a TTL
>> of 1ms and then tries to consume this message. What I have noticed is
>> that
>> every time I run this test the broker tries to redeliver the previously
>> expired message as well as the newly expired message but the
>> ActiveMQMessageConsumer rejects it and outputs multiple "Received expired
>> message:" debug log record. I waited for an hour to see if the thread
>> that
>> deletes messages out of the persistent store cleaned up these messages as
>> well but it doesn't seem to.
>> I'm using jms for heartbeating clients and I want to use the TTL
>> functionality to remove stale heartbeat requests but if the they are
>> going
>> to cause a memory leak in the broker i won't be able to do this.
> It could be we need to me more aggressive in evicting timed out
> messages from RAM. We may wanna add some background thread to chase
> down expired messages and remove them eagerly
> -- 
> James
> -------

View this message in context:
Sent from the ActiveMQ - User mailing list archive at

View raw message