diff options
| author | Simon MacMullen <simon@rabbitmq.com> | 2014-06-17 10:31:26 +0100 |
|---|---|---|
| committer | Simon MacMullen <simon@rabbitmq.com> | 2014-06-17 10:31:26 +0100 |
| commit | eb696ac84024078f5d8137acfa63c1e0ba375f4e (patch) | |
| tree | 2f4f2ff8110bb7a8aef2cd8ff8921ef5ed69cfd4 | |
| parent | a6bd7338162a1a0a1c92c5f7411c1ed3dc531dc4 (diff) | |
| parent | 7546e86e6eedb87736a81e7014cb89eae92581a8 (diff) | |
| download | rabbitmq-server-git-eb696ac84024078f5d8137acfa63c1e0ba375f4e.tar.gz | |
Merge bug26221
| -rw-r--r-- | src/rabbit_channel.erl | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/rabbit_channel.erl b/src/rabbit_channel.erl index 159442707a..bb6265544c 100644 --- a/src/rabbit_channel.erl +++ b/src/rabbit_channel.erl @@ -992,7 +992,7 @@ handle_method(#'queue.declare'{queue = QueueNameBin, QueueName, fun (Q) -> ok = rabbit_amqqueue:assert_equivalence( Q, Durable, AutoDelete, Args, Owner), - rabbit_amqqueue:stat(Q) + maybe_stat(NoWait, Q) end) of {ok, MessageCount, ConsumerCount} -> return_queue_declare_ok(QueueName, NoWait, MessageCount, @@ -1048,7 +1048,7 @@ handle_method(#'queue.declare'{queue = QueueNameBin, QueueName = rabbit_misc:r(VHostPath, queue, QueueNameBin), {{ok, MessageCount, ConsumerCount}, #amqqueue{} = Q} = rabbit_amqqueue:with_or_die( - QueueName, fun (Q) -> {rabbit_amqqueue:stat(Q), Q} end), + QueueName, fun (Q) -> {maybe_stat(NoWait, Q), Q} end), ok = rabbit_amqqueue:check_exclusive_access(Q, ConnPid), return_queue_declare_ok(QueueName, NoWait, MessageCount, ConsumerCount, State); @@ -1204,6 +1204,9 @@ basic_consume(QueueName, NoAck, ConsumerPrefetch, ActualConsumerTag, E end. +maybe_stat(false, Q) -> rabbit_amqqueue:stat(Q); +maybe_stat(true, _Q) -> {ok, 0, 0}. + consumer_monitor(ConsumerTag, State = #ch{consumer_mapping = ConsumerMapping, queue_monitors = QMons, |
