summaryrefslogtreecommitdiff
path: root/src/rabbit_misc.erl
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2014-07-28 17:01:29 +0100
committerSimon MacMullen <simon@rabbitmq.com>2014-07-28 17:01:29 +0100
commit9011fa6b498cc3bc535aa6f4bdf188848baffc15 (patch)
treef4918ce1aa02acfaab6f2a2fea1c9bb3f0bf3438 /src/rabbit_misc.erl
parent445df09d3c68db8389ec4283f151c89eef5a3e1b (diff)
parenta398dd37df895ebdc1bc90aed5415b1a0294c35d (diff)
downloadrabbitmq-server-9011fa6b498cc3bc535aa6f4bdf188848baffc15.tar.gz
stable to default
Diffstat (limited to 'src/rabbit_misc.erl')
-rw-r--r--src/rabbit_misc.erl7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/rabbit_misc.erl b/src/rabbit_misc.erl
index 180993a5..09355f3f 100644
--- a/src/rabbit_misc.erl
+++ b/src/rabbit_misc.erl
@@ -912,8 +912,13 @@ ntoab(IP) ->
_ -> "[" ++ Str ++ "]"
end.
+%% We try to avoid reconnecting to down nodes here; this is used in a
+%% loop in rabbit_amqqueue:on_node_down/1 and any delays we incur
+%% would be bad news.
is_process_alive(Pid) ->
- rpc:call(node(Pid), erlang, is_process_alive, [Pid]) =:= true.
+ Node = node(Pid),
+ lists:member(Node, [node() | nodes()]) andalso
+ rpc:call(Node, erlang, is_process_alive, [Pid]) =:= true.
pget(K, P) -> proplists:get_value(K, P).
pget(K, P, D) -> proplists:get_value(K, P, D).