Fix negative duration panic in token bucket wait time calculation (#14941)
Signed-off-by: xiaguan <751080330@qq.com>
This commit is contained in:
@@ -105,7 +105,7 @@ impl TokenBucket {
|
|||||||
let wait_time = {
|
let wait_time = {
|
||||||
let inner = self.inner.lock().await;
|
let inner = self.inner.lock().await;
|
||||||
let tokens_needed = tokens - inner.tokens;
|
let tokens_needed = tokens - inner.tokens;
|
||||||
let wait_secs = tokens_needed / self.refill_rate;
|
let wait_secs = (tokens_needed / self.refill_rate).max(0.0);
|
||||||
Duration::from_secs_f64(wait_secs)
|
Duration::from_secs_f64(wait_secs)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user