qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Carl Trieloff <cctriel...@redhat.com>
Subject Re: Time-To-Live
Date Wed, 14 Oct 2009 14:36:54 GMT
RickW wrote:
> I have a QPID application that sends messages to several listener
> applications. I noticed if there are no listeners running, qpidd's memory
> usage grows continually. Running qpidd-tool I see the messages are being
> queued indefinitely. So I set the time-to-live DeliveryProperty of the
> messages thinking the messages would be deleted after a while. But qpidd
> still grows and the messages are not deleted.
> To use TTL do I only need to set the message's DeliveryProperty, or is there
> more to it? Are there situations where TTL is ignored?
> Thanks in advance, RickW
> Details:
> - qpidc-0.5
> - Red Hat Enterprise Linux 5.2
> - Receiving messages using local queues
> - Aynchronous message sending (I tried synchronous though)
> - amq.direct exchange
> - max queue size set to UNLIMITED
> - REJECT flow control policy
> - byte/messageCredit=UNLIMITED
> - acquireMode=PRE-ACQUIRE, acceptMode=NONE, completionMode=ON_DELIVERY
> - windowMode, auto_ack

The messages get removed based on TTL at two times:
- When a consumer is active, it will delete the message before sending 
if expired
- On a timer it will go clean up, queue cleaner interval.

The queue purge interval for TTL can be set by the following broker 
configuration  (from qpidd --help)

  --queue-purge-interval SECONDS (600)      Interval between attempts to 
purge any expired messages from queues


Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org

View raw message