summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Klishin <michael@novemberain.com>2016-01-27 16:16:12 +0300
committerMichael Klishin <michael@novemberain.com>2016-01-27 16:16:12 +0300
commit9af509002ca4d7634d845844571cf30385584efa (patch)
tree74064f4b9162ad23d4a9d07173207de0714a4d1c /src
parent5dfd117a18355ae71b7ec7d389cc8e7a45516aa9 (diff)
parenta540dcb15241df519d9ddf09896a0ee9d6fef9e2 (diff)
downloadrabbitmq-server-git-9af509002ca4d7634d845844571cf30385584efa.tar.gz
Merge pull request #584 from rabbitmq/rabbitmq-server-581
Unblock receive after 15s
Diffstat (limited to 'src')
-rw-r--r--src/rabbit_mirror_queue_master.erl10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/rabbit_mirror_queue_master.erl b/src/rabbit_mirror_queue_master.erl
index 4556f72e78..057a4fad31 100644
--- a/src/rabbit_mirror_queue_master.erl
+++ b/src/rabbit_mirror_queue_master.erl
@@ -212,7 +212,15 @@ stop_all_slaves(Reason, #state{name = QName, gm = GM}) ->
%% monitor them but they would not have received the GM
%% message. So only wait for slaves which are still
%% not-partitioned.
- [receive {'DOWN', MRef, process, _Pid, _Info} -> ok end
+ [receive
+ {'DOWN', MRef, process, _Pid, _Info} ->
+ ok
+ after 15000 ->
+ rabbit_mirror_queue_misc:log_warning(
+ QName, "Missing 'DOWN' message from ~p in node ~p~n",
+ [Pid, node(Pid)]),
+ ok
+ end
|| {Pid, MRef} <- PidsMRefs, rabbit_mnesia:on_running_node(Pid)],
%% Normally when we remove a slave another slave or master will
%% notice and update Mnesia. But we just removed them all, and