[rabbitmq-discuss] Weird behaviour with mirrored queues

Dan_b daniel.bason at telogis.com
Mon Sep 2 02:07:36 BST 2013


Hi,

We have a 4 node rabbitmq cluster with 2 master/slave pairs.  We have our
queues set up using a nodes policy, and we use priorities to have a catch
all mirror policy, e.g:

ha_appx        ^.+appx_.+    
{"ha-mode":"nodes","ha-params":["rabbit at mq3","rabbit at mq4"],"ha-sync-mode":"manual"}    
10
ha_appcatchall        ^.+    
{"ha-mode":"nodes","ha-params":["rabbit at mq1","rabbit at mq2"],"ha-sync-mode":"manual"}    
1

If we then add another policy for app_y with priority 10 the majority of the
queues for app_y disappear(from rabbitmqctl list_queues).  The bindings
still exist and stopping and restarting the consumers (which create the
queues if they don't exist) doesn't help.  The consumers still connect fine,
even for the queues that don't exist.  If the queue does exist the consumer
doesn't consume from that queue.  It almost seems like the queue is bouncing
around between the policies somehow.

If we create the priority 10 policies first there are no problems (all the
queues are created on rabbit at mq1 so the master is still being moved in that
scenario).  We can obviously work around by deleting the priority 1 policy
if we want to move queues, but after the issue has occurred the only way I
can find to fix it is to completely reset the cluster.  The nodes do not
shutdown cleanly, they just hang without stopping rabbit.

Cheers
Dan



--
View this message in context: http://rabbitmq.1065348.n5.nabble.com/Weird-behaviour-with-mirrored-queues-tp29254.html
Sent from the RabbitMQ mailing list archive at Nabble.com.


More information about the rabbitmq-discuss mailing list