diff options
author | wxiaoguang <wxiaoguang@gmail.com> | 2024-04-19 04:00:59 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-18 20:00:59 +0000 |
commit | bcbeb24dbaaafd79c45792a2fe020c98a246b0a7 (patch) | |
tree | 6df90c5ce584031a2879125883ed50d1c016402b /modules/queue/backoff.go | |
parent | dd8e6ae270b4b5e91a152a145978029dacb938ff (diff) | |
download | gitea-bcbeb24dbaaafd79c45792a2fe020c98a246b0a7.tar.gz gitea-bcbeb24dbaaafd79c45792a2fe020c98a246b0a7.zip |
Mock queue backoff duration (#30553)
During testing, the backoff duration shouldn't be longer than other
durations
Diffstat (limited to 'modules/queue/backoff.go')
-rw-r--r-- | modules/queue/backoff.go | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/modules/queue/backoff.go b/modules/queue/backoff.go index cda7233567..02fc88574a 100644 --- a/modules/queue/backoff.go +++ b/modules/queue/backoff.go @@ -8,7 +8,7 @@ import ( "time" ) -const ( +var ( backoffBegin = 50 * time.Millisecond backoffUpper = 2 * time.Second ) @@ -18,6 +18,14 @@ type ( backoffFuncErr func() (retry bool, err error) ) +func mockBackoffDuration(d time.Duration) func() { + oldBegin, oldUpper := backoffBegin, backoffUpper + backoffBegin, backoffUpper = d, d + return func() { + backoffBegin, backoffUpper = oldBegin, oldUpper + } +} + func backoffRetErr[T any](ctx context.Context, begin, upper time.Duration, end <-chan time.Time, fn backoffFuncRetErr[T]) (ret T, err error) { d := begin for { |