diff options
Diffstat (limited to 'messagebus')
-rw-r--r-- | messagebus/src/main/java/com/yahoo/messagebus/DynamicThrottlePolicy.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/messagebus/src/main/java/com/yahoo/messagebus/DynamicThrottlePolicy.java b/messagebus/src/main/java/com/yahoo/messagebus/DynamicThrottlePolicy.java index 1cfbefae29b..fca29695acc 100644 --- a/messagebus/src/main/java/com/yahoo/messagebus/DynamicThrottlePolicy.java +++ b/messagebus/src/main/java/com/yahoo/messagebus/DynamicThrottlePolicy.java @@ -76,7 +76,9 @@ public class DynamicThrottlePolicy extends StaticThrottlePolicy { windowSize = Math.min(windowSize, pendingCount + windowSizeIncrement); } timeOfLastMessage = time; - return pendingCount < windowSize; + int windowSizeFloored = (int) windowSize; + boolean carry = numSent / (windowSize * resizeRate) < windowSize - windowSizeFloored; + return pendingCount < windowSizeFloored + (carry ? 1 : 0); } @Override |