[rabbitmq-discuss] producer with no consumer

Ben Hood 0x6e6562 at gmail.com
Tue Sep 2 20:41:51 BST 2008


Mark,

On Tue, Sep 2, 2008 at 7:48 PM, Mark Geib <mark.geib at echostar.com> wrote:
> I just ran another test. Restarted the broker. Then I started the producer
> but never started a consumer and the broker process continues to grow in
> memory usage. This seems odd, since no consumer has every connected.

One explanation for this is is that you are just queuing up messages
without dequeueing them.

I'm assuming that you read my message about auto-delete and are
expecting that when you have no consumers, then you have no queues
that messages can get routed to.

If this is the case, then you are experiencing a counter intuitive
facet of the AMQP spec wrt auto-delete:

"If set, the queue is deleted when all consumers have finished using it.
Last consumer can be cancelled either explicitly or because its
channel is closed.
If there was no consumer ever on the queue, it won't be deleted."

BTW, to check queue depths, you can use the function stat_all/0 in
rabbit_amqqueue from the Erlang shell:

(rabbit at host)1> rabbit_amqqueue:stat_all().

This could also be run via a remote shell as well.

HTH,

Ben




More information about the rabbitmq-discuss mailing list