diff options
| author | Simon MacMullen <simon@rabbitmq.com> | 2012-07-13 11:06:05 +0100 |
|---|---|---|
| committer | Simon MacMullen <simon@rabbitmq.com> | 2012-07-13 11:06:05 +0100 |
| commit | 8ef211effafbfbfdb047fbfeebf36481d186d8fd (patch) | |
| tree | f651eceacd90563af734e15d4001927b79ec5b89 /src | |
| parent | 46f09d33920b620e4c22e8a107d61c7a0c555388 (diff) | |
| download | rabbitmq-server-git-8ef211effafbfbfdb047fbfeebf36481d186d8fd.tar.gz | |
Explain this message.
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_mirror_queue_slave.erl | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/rabbit_mirror_queue_slave.erl b/src/rabbit_mirror_queue_slave.erl index c96e98b67a..2d7bd9a112 100644 --- a/src/rabbit_mirror_queue_slave.erl +++ b/src/rabbit_mirror_queue_slave.erl @@ -199,6 +199,11 @@ handle_call({gm_deaths, Deaths}, From, %% master has changed to not us. gen_server2:reply(From, ok), erlang:monitor(process, Pid), + %% GM is lazy. So we know of the death of the + %% slave since it is a neighbour of ours, but + %% until a message is sent, not all members will + %% know. That might include the new master. So + %% broadcast a no-op message to wake everyone up. ok = gm:broadcast(GM, master_changed), noreply(State #state { master_pid = Pid }) end |
