[rabbitmq-discuss] RabbitMQ - strange synchronization behavior

Simon MacMullen simon at rabbitmq.com
Thu Sep 26 09:28:12 BST 2013


On 25/09/2013 9:34PM, Peter Sokolowski wrote:
> When I restart one of the nodes(by "stop_app" and "start_app" from the
> commandline)  the whole cluster is blocked. It doesn't accept any
> publish and receive operations during synchronization stage. When
> synchronization is finished everything get back to normal - cluster
> accepts publish and receive operations.
> Is this behavior normal?

Yes.

"If a queue is set to automatically synchronise it will synchronise 
whenever a new slave joins - becoming unresponsive until it has done so."
    -- http://www.rabbitmq.com/ha.html#unsynchronised-slaves

While any given queue is (explicitly) syncing it will not do anything 
else; publishes to it will block. Therefore it's a reasonable idea to 
only explicitly sync queues that are not busy, if a queue is being 
actively published to and consumed from then it will become synchronised 
after a while anyway, explicit syncing is not needed. We envisaged 
explicit syncing being used more for queues that are not very active.

And yes, it would be nice if explicit syncing could happen in the 
background while other things happened. Let's just say that it would be 
complicated to do that...

Cheers, Simon

-- 
Simon MacMullen
RabbitMQ, Pivotal


More information about the rabbitmq-discuss mailing list