[rabbitmq-discuss] Pause minority cluster with publisher confirms losing messages

Simon MacMullen simon at rabbitmq.com
Wed Jun 4 11:50:13 BST 2014


On 04/06/14 11:22, Michael Klishin wrote:
> While I'm not very familiar with how the pause process works, there is an inherent race
> condition between the decision to pause itself and incoming messages that are confirmed.
>
> Once a node decides to pause, there may be messages "in flight" that were already
> read from the socket and parsed, and being delivered to queues. These processes
> (in both general and Erlang sense) can run in parallel on machines with over 1 core.

Yes, that's correct. Now at the moment the window can be of a reasonable 
size, as when minority detection kicks in we do a graceful shutdown. We 
could reduce the size of the window by telling all channels to 
immediately close before doing anything else, but we can't eliminate the 
window altogether.

Cheers, Simon

-- 
Simon MacMullen
RabbitMQ, Pivotal


More information about the rabbitmq-discuss mailing list