diff options
| author | Matthew Sackman <matthew@rabbitmq.com> | 2011-04-10 13:05:36 +0100 |
|---|---|---|
| committer | Matthew Sackman <matthew@rabbitmq.com> | 2011-04-10 13:05:36 +0100 |
| commit | 418af6d6efdcc791a8f5a308badcaab0808f3c3f (patch) | |
| tree | 55bb0187309af0a1c8cb43f4a175a6e10d381b83 | |
| parent | 700c770bfd458bb63bc1ade77c2ce4a3f6bb3811 (diff) | |
| download | rabbitmq-server-git-418af6d6efdcc791a8f5a308badcaab0808f3c3f.tar.gz | |
Work on documentation of ha
| -rw-r--r-- | src/rabbit_mirror_queue_coordinator.erl | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/rabbit_mirror_queue_coordinator.erl b/src/rabbit_mirror_queue_coordinator.erl index 7e521e4997..05e4a808ca 100644 --- a/src/rabbit_mirror_queue_coordinator.erl +++ b/src/rabbit_mirror_queue_coordinator.erl @@ -210,6 +210,17 @@ %% master). To do this bit properly would require 2PC and all the %% baggage that goes with that. %% +%% Recovery of mirrored queues is straightforward: as nodes die, the +%% remaining nodes record this, and eventually a situation is reached +%% in which only one node is alive, which is the master. This is the +%% only node which, upon recovery, will resurrect a mirrored queue: +%% nodes which die and then rejoin as a slave will start off empty as +%% if they have no mirrored content at all. This is not surprising: to +%% achieve anything more sophisticated would require the master and +%% recovering slave to be able to check to see whether they agree on +%% the last seen state of the queue: checking length alone is not +%% sufficient in this case. +%% %%---------------------------------------------------------------------------- start_link(Queue, GM) -> |
