diff options
author | Francesco Mazzoli <francesco@rabbitmq.com> | 2012-08-31 13:59:09 +0100 |
---|---|---|
committer | Francesco Mazzoli <francesco@rabbitmq.com> | 2012-08-31 13:59:09 +0100 |
commit | cba76a6a6227080ddc3edd1012e056b92676cddf (patch) | |
tree | cdae7df4857aa564b3112332e02d388063e06c1f /src/rabbit_variable_queue.erl | |
parent | ec9c54a99566adbc905152a19e2179902fd52a1d (diff) | |
download | rabbitmq-server-cba76a6a6227080ddc3edd1012e056b92676cddf.tar.gz |
add a callback to backing queue to get the number of pending acks
Diffstat (limited to 'src/rabbit_variable_queue.erl')
-rw-r--r-- | src/rabbit_variable_queue.erl | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/rabbit_variable_queue.erl b/src/rabbit_variable_queue.erl index bd606dfb..22829765 100644 --- a/src/rabbit_variable_queue.erl +++ b/src/rabbit_variable_queue.erl @@ -19,8 +19,8 @@ -export([init/3, terminate/2, delete_and_terminate/2, purge/1, publish/4, publish_delivered/5, drain_confirmed/1, dropwhile/3, fetch/2, ack/2, requeue/2, len/1, is_empty/1, - set_ram_duration_target/2, ram_duration/1, needs_timeout/1, - timeout/1, handle_pre_hibernate/1, status/1, invoke/3, + pending_ack/1, set_ram_duration_target/2, ram_duration/1, + needs_timeout/1, timeout/1, handle_pre_hibernate/1, status/1, invoke/3, is_duplicate/2, discard/3, multiple_routing_keys/0, fold/3]). -export([start/1, stop/0]). @@ -681,6 +681,9 @@ len(#vqstate { len = Len }) -> Len. is_empty(State) -> 0 == len(State). +pending_ack(#vqstate { pending_ack = Ack }) -> + gb_trees:size(Ack). + set_ram_duration_target( DurationTarget, State = #vqstate { rates = #rates { avg_egress = AvgEgressRate, |