use newDynamicTimeoutWithOpts() when appropriate (#16266)

This commit is contained in:
Harshavardhana 2022-12-15 13:11:37 -08:00 committed by GitHub
parent 988a2e8fed
commit 80fc3a8a52
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 5 deletions

View File

@ -357,9 +357,11 @@ func initServer(ctx context.Context, newObject ObjectLayer) error {
r := rand.New(rand.NewSource(time.Now().UnixNano()))
lockTimeout := newDynamicTimeout(5*time.Second, 3*time.Second)
// do not retry to avoid high contention on startup.
lockTimeout.retryInterval = -1
lockTimeout := newDynamicTimeoutWithOpts(dynamicTimeoutOpts{
timeout: 5 * time.Second,
minimum: 3 * time.Second,
retryInterval: -1, // do not retry to avoid high contention on startup.
})
// Do an initial random sleep to avoid stampeding herd of initial
// lock request. This will spread locks requests over 1 second.

View File

@ -38,11 +38,11 @@ var lockRetryInterval time.Duration
func init() {
// Check for MINIO_DSYNC_TRACE env variable, if set logging will be enabled for failed REST operations.
dsyncLog = os.Getenv("MINIO_DSYNC_TRACE") == "1"
dsyncLog = os.Getenv("_MINIO_DSYNC_TRACE") == "1"
// lockRetryInterval specifies the maximum time between retries for failed locks.
// Average retry time will be value / 2.
lockRetryInterval = 100 * time.Millisecond
lockRetryInterval = 250 * time.Millisecond
if lri := os.Getenv("_MINIO_LOCK_RETRY_INTERVAL"); lri != "" {
v, err := strconv.Atoi(lri)
if err != nil {