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
commita2c2b284d45ba13a926215d870ed9a5846f85357 (patch)
treedf4d021ac7c1a0842a30582a96cce1594bf2651a
parent8374d76a0bc311c4bc17b1ec63bc84b5fb57cea8 (diff)
downloadrabbitmq-server-a2c2b284d45ba13a926215d870ed9a5846f85357.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 56bff257..eca1017c 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,