summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Radestock <matthias@rabbitmq.com>2014-01-09 00:06:35 +0000
committerMatthias Radestock <matthias@rabbitmq.com>2014-01-09 00:06:35 +0000
commit18f539584086962b35f3db0bc0d288fd5e1480c9 (patch)
tree4e445b4aefba227208edd62049cd4c753b29b8ef
parent0ff332cd199a119e3441d57ba05094a9edf7b922 (diff)
downloadrabbitmq-server-18f539584086962b35f3db0bc0d288fd5e1480c9.tar.gz
tiny refactor: better function name
...and more sensible case order
-rw-r--r--src/rabbit_limiter.erl12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/rabbit_limiter.erl b/src/rabbit_limiter.erl
index 22da465b..d5cfbce6 100644
--- a/src/rabbit_limiter.erl
+++ b/src/rabbit_limiter.erl
@@ -245,9 +245,9 @@ can_send(L = #qstate{pid = Pid, state = State, credits = Credits},
case is_consumer_blocked(L, CTag) of
false -> case (State =/= active orelse
safe_call(Pid, {can_send, self(), AckRequired}, true)) of
- true -> {continue, L#qstate{
- credits = record_send_q(CTag, Credits)}};
- false -> {suspend, L#qstate{state = suspended}}
+ true -> Credits1 = decrement_credit(CTag, Credits),
+ {continue, L#qstate{credits = Credits1}};
+ false -> {suspend, L#qstate{state = suspended}}
end;
true -> {suspend, L}
end.
@@ -271,9 +271,9 @@ is_suspended(#qstate{}) -> false.
is_consumer_blocked(#qstate{credits = Credits}, CTag) ->
case gb_trees:lookup(CTag, Credits) of
+ none -> false;
{value, #credit{credit = C}} when C > 0 -> false;
- {value, #credit{}} -> true;
- none -> false
+ {value, #credit{}} -> true
end.
credit(Limiter = #qstate{credits = Credits}, CTag, Credit, Drain) ->
@@ -303,7 +303,7 @@ forget_consumer(Limiter = #qstate{credits = Credits}, CTag) ->
%% state for us (#qstate.credits), and maintain a fiction that the
%% limiter is making the decisions...
-record_send_q(CTag, Credits) ->
+decrement_credit(CTag, Credits) ->
case gb_trees:lookup(CTag, Credits) of
{value, #credit{credit = Credit, drain = Drain}} ->
update_credit(CTag, Credit - 1, Drain, Credits);