[rabbitmq-discuss] Durable queues & bindings

Matthias Radestock matthias at lshift.net
Sun Apr 12 00:32:53 BST 2009


Levi Greenspan wrote:
> On Sat, 2009-04-11 at 08:46 +0100, Matthias Radestock wrote:
>> Levi,
>> Levi Greenspan wrote:
>>> I upgraded to version 1.5.4 and now I see the queues and bindings after
>>> the node is running again. However in 1.5.3 it didn't work for me.
>> I can't think of anything that has changed between 1.5.3 and 1.5.4 that 
>> would cause this, except that startup times for when there are lots of 
>> durable exchanges, queues or bindings have improved significantly. The 
>> recreation of these entities is now also happening incrementally. So 
>> it's possible that previously rabbitmqctl would not list any queues for 
>> you if it was called right after you started the broker - though it 
>> should have done so eventually - whereas now it does.
> I have attached a small Java test client and a transcript which shows
> the different behavior between version 1.5.3 and 1.5.4. Maybe you can
> reproduce it.

What user did you run these as? Looks like 'user', based on the 
transcript. But usually only the 'rabbitmq' user can write to 
/var/log/rabbitmq etc, which would cause the script invocations to fail.

Did you make any adjustments to the permissions, or set some env vars to 
adjust the paths, or tweak the scripts?

Also, did you try running these tests when no clustering has been 
configured and you have just a single node?

>>> Anyway I noticed another difference between 1.5.3 and 1.5.4 - the call
>>> to com.rabbitmq.client.Connection.getKnownHosts() in that Java client
>>> API returns the list of all running node addresses in 1.5.3, but only
>>> one host address in 1.5.4 - a bug?
>> Nothing has changed in that area of the code. Are you sure that all your 
>> nodes are running and listening?
> Yes, I am. The test client prints the known hosts and for 1.5.3 the
> reult is "localhost:5672", whereas for 1.5.4 it is "localhost:5673" and
> "localhost:5672". Again I hope you can reproduce it with the attached
> client. I am using Ubuntu 8.10 on x86 and I compiled erlang using the
> offically released source, not the Ubuntu packages.

So is it 1.5.3 that returns both hosts (which is what you said 
originally) or 1.5.4?

And how did you configure the clustering?



More information about the rabbitmq-discuss mailing list