summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Radestock <matthias@rabbitmq.com>2014-04-21 12:17:15 +0100
committerMatthias Radestock <matthias@rabbitmq.com>2014-04-21 12:17:15 +0100
commitc2482805716da071f0b71a5003ec86636b181c6f (patch)
tree8fbaff6a30c6d189e2d0f33f83292f4fd4cb6a92
parent6ea91bb08cbb7b38dbd53e91e362f9fc1bb32e39 (diff)
downloadrabbitmq-server-c2482805716da071f0b71a5003ec86636b181c6f.tar.gz
blank members_state after maybe_erase_aliases
since the latter operates on the former
-rw-r--r--src/gm.erl16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/gm.erl b/src/gm.erl
index 1eaf7459..0b0ada21 100644
--- a/src/gm.erl
+++ b/src/gm.erl
@@ -725,13 +725,15 @@ handle_info({'DOWN', MRef, process, _Pid, Reason},
_ ->
View1 = group_to_view(record_dead_member_in_group(
Member, GroupName, TxnFun)),
- State1 = case alive_view_members(View1) of
- [Self] -> State #state {
- members_state = blank_member_state(),
- confirms = purge_confirms(Confirms) };
- _ -> State
- end,
- handle_callback_result(maybe_erase_aliases(State1, View1))
+ {Result, State1} = maybe_erase_aliases(State, View1),
+ handle_callback_result(
+ {Result,
+ case alive_view_members(View1) of
+ [Self] -> State1 #state {
+ members_state = blank_member_state(),
+ confirms = purge_confirms(Confirms) };
+ _ -> State1
+ end})
end.