summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2012-06-14 16:43:44 +0100
committerSimon MacMullen <simon@rabbitmq.com>2012-06-14 16:43:44 +0100
commit0c10e5b525a1cbd49f6710d7441feb53ba549401 (patch)
treedf4d021ac7c1a0842a30582a96cce1594bf2651a
parent30c7944dbc3dea789a97b7522b3fb1bac5205c41 (diff)
downloadrabbitmq-server-git-0c10e5b525a1cbd49f6710d7441feb53ba549401.tar.gz
Ensure we only clear out records of queues that are actually dead.
-rw-r--r--src/rabbit_amqqueue.erl3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl
index 56bff25724..eca1017cfc 100644
--- a/src/rabbit_amqqueue.erl
+++ b/src/rabbit_amqqueue.erl
@@ -576,7 +576,8 @@ on_node_down(Node) ->
#amqqueue{name = QName, pid = Pid,
slave_pids = []}
<- mnesia:table(rabbit_queue),
- node(Pid) == Node])),
+ node(Pid) == Node andalso
+ not is_process_alive(Pid)])),
{Qs, Dels} = lists:unzip(QsDels),
T = rabbit_binding:process_deletions(
lists:foldl(fun rabbit_binding:combine_deletions/2,