summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArnaud Cogoluègnes <acogoluegnes@gmail.com>2018-11-30 11:02:56 +0100
committerArnaud Cogoluègnes <acogoluegnes@gmail.com>2018-11-30 11:02:56 +0100
commiteb3bb7ebb7a6491a09843165c64f6f6ac6bc5dea (patch)
tree626b2b159740dcf9657271d465fbfef567f1a79e
parentfcdf570de6017ad8642e53302bef074580761bd2 (diff)
downloadrabbitmq-server-git-eb3bb7ebb7a6491a09843165c64f6f6ac6bc5dea.tar.gz
Don't use exclusive consumer info item for single active consumer
Single active consumer will have its own info item. [#161090309] References #1743
-rw-r--r--src/rabbit_amqqueue_process.erl12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/rabbit_amqqueue_process.erl b/src/rabbit_amqqueue_process.erl
index ddf024719f..606e62af11 100644
--- a/src/rabbit_amqqueue_process.erl
+++ b/src/rabbit_amqqueue_process.erl
@@ -1023,16 +1023,14 @@ i(effective_policy_definition, #q{q = Q}) ->
undefined -> [];
Def -> Def
end;
-i(exclusive_consumer_pid, #q{active_consumer = none}) ->
- '';
-i(exclusive_consumer_pid, #q{active_consumer = {ChPid, _ConsumerTagOrConsumer}}) ->
+i(exclusive_consumer_pid, #q{active_consumer = {ChPid, _ConsumerTag}, single_active_consumer_on = false}) ->
ChPid;
-i(exclusive_consumer_tag, #q{active_consumer = none}) ->
+i(exclusive_consumer_pid, _) ->
'';
-i(exclusive_consumer_tag, #q{single_active_consumer_on = true, active_consumer = {_ChPid, Consumer}}) ->
- rabbit_queue_consumers:consumer_tag(Consumer);
-i(exclusive_consumer_tag, #q{single_active_consumer_on = false, active_consumer = {_ChPid, ConsumerTag}}) ->
+i(exclusive_consumer_tag, #q{active_consumer = {_ChPid, ConsumerTag}, single_active_consumer_on = false}) ->
ConsumerTag;
+i(exclusive_consumer_tag, _) ->
+ '';
i(messages_ready, #q{backing_queue_state = BQS, backing_queue = BQ}) ->
BQ:len(BQS);
i(messages_unacknowledged, _) ->