[rabbitmq-discuss] [rabbitmq-consistent-hash-exchange] Handling failover

Emile Joubert emile at rabbitmq.com
Mon Jan 9 10:05:30 GMT 2012

Hi Josh,

On 06/01/12 22:43, Josh Stone wrote:
> I'm looking at the consistent hash exchange for a project, and am
> wondering what happens when one or more rabbitmq nodes go down or the
> entire cluster goes down. Assuming we're using active/active HA, the
> queues can be recovered. But my concern is that the consistent hashing
> will be different when the system comes up again. Messages that
> previously would have hashed to queue A might now hash to queue B. This
> would be problematic if queue A's consumer is processing a previous
> message that now hashes to queue B.
> Is this a valid concern or are failures handled nicely via some other means?

The consistent hash exchange maintains its state in the distributed
mnesia database, which means that it is replicated across all nodes of a
cluster. I would expect the routing logic to produce identical results
regardless of whether some nodes have failed, or after the entire
cluster restarts. Are you seeing different behaviour?


More information about the rabbitmq-discuss mailing list