Skip to content

Commit ecaf600

Browse files
committed
feat: infinite retry for Retry without data
1 parent bf7dad5 commit ecaf600

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

core/connection.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,13 @@ func Retry(functionToRetry func() error, minDelay uint64, factor float64, maxTri
6969
initialRetryOption := backoff.WithInitialInterval(time.Millisecond * time.Duration(minDelay))
7070
multiplierOption := backoff.WithMultiplier(factor)
7171
expBackoff := backoff.NewExponentialBackOff(randomOption, multiplierOption, initialRetryOption)
72-
maxRetriesBackoff := backoff.WithMaxRetries(expBackoff, maxTries)
72+
var maxRetriesBackoff backoff.BackOff
73+
74+
if maxTries > 0 {
75+
maxRetriesBackoff = backoff.WithMaxRetries(expBackoff, maxTries)
76+
} else {
77+
maxRetriesBackoff = expBackoff
78+
}
7379

7480
return backoff.Retry(f, maxRetriesBackoff)
7581
}

0 commit comments

Comments
 (0)