summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmile Joubert <emile@rabbitmq.com>2012-05-18 11:37:51 +0100
committerEmile Joubert <emile@rabbitmq.com>2012-05-18 11:37:51 +0100
commit21edfc7179b2fb040677902a6f56d650e9f82156 (patch)
tree0101d086fdf8d7fb47eebd1b8be50b64e94fdc34
parent84d79f62d8e96f14f6aca14fdace831b568bff50 (diff)
downloadrabbitmq-server-bug24944.tar.gz
Prevent DOWN messages from overtaking initial catchupbug24944
-rw-r--r--src/gm.erl10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/gm.erl b/src/gm.erl
index 01300f18..5e477b9d 100644
--- a/src/gm.erl
+++ b/src/gm.erl
@@ -693,9 +693,13 @@ terminate(Reason, State = #state { module = Module,
code_change(_OldVsn, State, _Extra) ->
{ok, State}.
-prioritise_info(flush, _State) -> 1;
-prioritise_info({'DOWN', _MRef, process, _Pid, _Reason}, _State) -> 1;
-prioritise_info(_ , _State) -> 0.
+prioritise_info(flush, _State) ->
+ 1;
+prioritise_info({'DOWN', _MRef, process, _Pid, _Reason},
+ #state { members_state = MS }) when MS /= undefined ->
+ 1;
+prioritise_info(_, _State) ->
+ 0.
handle_msg(check_neighbours, State) ->