20511: Fix slow-expansion logic.
authorTom Clegg <tom@curii.com>
Thu, 25 May 2023 14:33:53 +0000 (10:33 -0400)
committerTom Clegg <tom@curii.com>
Thu, 25 May 2023 14:33:53 +0000 (10:33 -0400)
Limit was always being raised to 2x known-working, instead of
min(+10%, 2x known-working) as intended.

Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom@curii.com>

sdk/go/arvados/limiter.go

index ac244593b2e4ba98309b593c8b0a809a623e70f7..0fc6cc09648a79cf491dcb60d3ff0c7643e3a449 100644 (file)
@@ -141,7 +141,7 @@ func (rl *requestLimiter) Report(resp *http.Response, err error) bool {
                        increase = 1
                }
                rl.limit += increase
-               if max := rl.current * 2; max > rl.limit {
+               if max := rl.current * 2; max < rl.limit {
                        rl.limit = max
                }
                rl.cond.Broadcast()