diff options
author | Simon MacMullen <simon@rabbitmq.com> | 2014-10-20 20:57:13 +0100 |
---|---|---|
committer | Simon MacMullen <simon@rabbitmq.com> | 2014-10-20 20:57:13 +0100 |
commit | 0a13c23b41f98362f08339c10d7e893637571d4b (patch) | |
tree | 46a115a42696991397e94453f0cd8e8cec971fc5 | |
parent | 22e54d371823e569b6b984b46597141b984d683e (diff) | |
download | rabbitmq-server-0a13c23b41f98362f08339c10d7e893637571d4b.tar.gz |
Sleep briefly, and explain why.
-rw-r--r-- | src/gm.erl | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -720,6 +720,14 @@ handle_info({'DOWN', MRef, process, _Pid, Reason}, {_, {shutdown, ring_shutdown}} -> noreply(State); _ -> + %% In the event of a partial partition we could see another member + %% go down and then remove them from Mnesia. While they can + %% recover from this they'd have to restart the queue - not + %% ideal. So let's sleep here briefly just in case this was caused + %% by a partial partition; in which case by the time we record the + %% member death in Mnesia we will probably be in a full + %% partition and will not be assassinating another member. + timer:sleep(100), View1 = group_to_view(record_dead_member_in_group( Member, GroupName, TxnFun)), handle_callback_result( |