summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Radestock <matthias@rabbitmq.com>2012-02-01 22:20:06 +0000
committerMatthias Radestock <matthias@rabbitmq.com>2012-02-01 22:20:06 +0000
commitd00d859d8cea479e966dc3978f0c507401cf5a2c (patch)
treecc9fb6c077ada6d782ef9b8f0f2a0c3be1177014
parenteca129d8b936472c5c3dd280feca40fcb8d2e3bd (diff)
downloadrabbitmq-server-bug24702.tar.gz
include some mirror master state info in status()bug24702
After careful inspection, I have determined that known_senders and seen_status are the only items worth reporting on.
-rw-r--r--src/rabbit_mirror_queue_master.erl6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/rabbit_mirror_queue_master.erl b/src/rabbit_mirror_queue_master.erl
index f60562ef..cfa75b4d 100644
--- a/src/rabbit_mirror_queue_master.erl
+++ b/src/rabbit_mirror_queue_master.erl
@@ -280,8 +280,10 @@ handle_pre_hibernate(State = #state { backing_queue = BQ,
backing_queue_state = BQS }) ->
State #state { backing_queue_state = BQ:handle_pre_hibernate(BQS) }.
-status(#state { backing_queue = BQ, backing_queue_state = BQS }) ->
- BQ:status(BQS).
+status(State = #state { backing_queue = BQ, backing_queue_state = BQS }) ->
+ BQ:status(BQS) ++
+ [ {mirror_seen, dict:size(State #state.seen_status)},
+ {mirror_senders, sets:size(State #state.known_senders)} ].
invoke(?MODULE, Fun, State) ->
Fun(?MODULE, State);