summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2012-11-23 13:31:21 +0000
committerSimon MacMullen <simon@rabbitmq.com>2012-11-23 13:31:21 +0000
commit9e552c8457e7188631802d7d226078eda8adc085 (patch)
tree4e5d71d78f5669da1ac2af4ff0394c3fb652e586
parentee69523f13ef37026922ed973965e5e953827a3a (diff)
downloadrabbitmq-server-9e552c8457e7188631802d7d226078eda8adc085.tar.gz
Wake up all queues after policy change.
-rw-r--r--src/rabbit_amqqueue.erl6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl
index 8ce1160c..5aec3bee 100644
--- a/src/rabbit_amqqueue.erl
+++ b/src/rabbit_amqqueue.erl
@@ -284,7 +284,11 @@ store_queue(Q = #amqqueue{durable = false}) ->
ok = mnesia:write(rabbit_queue, Q, write),
ok.
-policy_changed(Q1, Q2) -> rabbit_mirror_queue_misc:update_mirrors(Q1, Q2).
+policy_changed(Q1, Q2) ->
+ rabbit_mirror_queue_misc:update_mirrors(Q1, Q2),
+ %% Make sure we emit a stats event even if nothing
+ %% mirroring-related has changed - the policy may have changed anyway.
+ wake_up(Q1).
start_queue_process(Node, Q) ->
{ok, Pid} = rabbit_amqqueue_sup:start_child(Node, [Q]),