summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul J. Davis <paul.joseph.davis@gmail.com>2020-04-09 10:42:18 -0500
committerPaul J. Davis <paul.joseph.davis@gmail.com>2020-04-09 12:54:01 -0500
commit7ff8d7423bf27538545ad658617164b433c0f3f7 (patch)
tree0a81975b9338a8a542efcbcda4b267dd904e8a32
parent396a3b595c7b62d1e272d95f3bdafed2fad7f188 (diff)
downloadcouchdb-fix-couch-rate-limiter-bug.tar.gz
Fix division by zerofix-couch-rate-limiter-bug
-rw-r--r--src/couch_rate/src/couch_rate_limiter.erl2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/couch_rate/src/couch_rate_limiter.erl b/src/couch_rate/src/couch_rate_limiter.erl
index 349da8d5a..6c896661d 100644
--- a/src/couch_rate/src/couch_rate_limiter.erl
+++ b/src/couch_rate/src/couch_rate_limiter.erl
@@ -137,7 +137,7 @@ budget(Id, #?STATE{} = State) ->
{max(1, round(R * MultiplicativeFactor)), State};
underloaded ->
ReadWriteRatio = min(1, MR / max(1, MW)),
- SingleWrite = Latency / W,
+ SingleWrite = max(1, Latency / max(1, W)),
EstimatedWrites = floor(Target / SingleWrite),
{max(1, round(ReadWriteRatio * EstimatedWrites)), State};
init ->