summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Radestock <matthias@rabbitmq.com>2010-12-20 12:44:15 +0000
committerMatthias Radestock <matthias@rabbitmq.com>2010-12-20 12:44:15 +0000
commitbddf8294edb6647a825093878f04c731c2a68ac0 (patch)
tree8613ca7f17b76f40cf560127741d7791ce2ec277
parent24e9bc07ec0bb467fca4566ef197c5855a4c8e80 (diff)
downloadrabbitmq-server-bddf8294edb6647a825093878f04c731c2a68ac0.tar.gz
treat nodedown as a recoverable error
-rw-r--r--src/delegate.erl2
-rw-r--r--src/rabbit_misc.erl4
2 files changed, 3 insertions, 3 deletions
diff --git a/src/delegate.erl b/src/delegate.erl
index 3814edcf..10054e57 100644
--- a/src/delegate.erl
+++ b/src/delegate.erl
@@ -87,7 +87,7 @@ invoke(Pids, Fun) when is_list(Pids) ->
{invoke, Fun, Grouped},
infinity)
end,
- BadPids = [{Pid, {exit, badnode, []}} ||
+ BadPids = [{Pid, {exit, {nodedown, BadNode}, []}} ||
BadNode <- BadNodes,
Pid <- orddict:fetch(BadNode, Grouped)],
ResultsNoNode = lists:append([safe_invoke(LocalPids, Fun) |
diff --git a/src/rabbit_misc.erl b/src/rabbit_misc.erl
index 52d76ac4..b99cb051 100644
--- a/src/rabbit_misc.erl
+++ b/src/rabbit_misc.erl
@@ -344,8 +344,8 @@ throw_on_error(E, Thunk) ->
with_exit_handler(Handler, Thunk) ->
try
Thunk()
- catch
- exit:{R, _} when R =:= noproc; R =:= normal; R =:= shutdown ->
+ catch exit:{R, _} when R =:= noproc; R =:= nodedown;
+ R =:= normal; R =:= shutdown ->
Handler()
end.