remove GOMAXPROCS requirement

This commit is contained in:
Harshavardhana 2021-02-08 21:54:00 -08:00
parent 0615d85384
commit bc89e47066
4 changed files with 12 additions and 10 deletions

View file

@ -753,23 +753,26 @@ func (a adminAPIHandlers) HealSetsHandler(w http.ResponseWriter, r *http.Request
opts.setNumbers = append(opts.setNumbers, i-1) opts.setNumbers = append(opts.setNumbers, i-1)
} }
opts.sleepDuration = time.Second
var err error var err error
if v := vars[healSleepDuration]; v != "" { if v := vars[healSleepDuration]; v != "" {
opts.sleepDuration, err = time.ParseDuration(v) opts.sleepDuration, err = time.ParseDuration(v)
if err != nil { if err != nil {
writeErrorResponseJSON(ctx, w, toAdminAPIErr(ctx, err), r.URL) writeErrorResponseJSON(ctx, w, toAdminAPIErr(ctx, err), r.URL)
return return
} }
} else {
opts.sleepDuration = 100 * time.Millisecond
} }
opts.sleepForIO = 10
if v := vars[healSleepMaxIO]; v != "" { if v := vars[healSleepMaxIO]; v != "" {
opts.sleepForIO, err = strconv.Atoi(v) opts.sleepForIO, err = strconv.Atoi(v)
if err != nil { if err != nil {
writeErrorResponseJSON(ctx, w, toAdminAPIErr(ctx, err), r.URL) writeErrorResponseJSON(ctx, w, toAdminAPIErr(ctx, err), r.URL)
return return
} }
} else {
opts.sleepForIO = 1000
} }
buckets, _ := objectAPI.ListBucketsHeal(ctx) buckets, _ := objectAPI.ListBucketsHeal(ctx)
@ -782,7 +785,9 @@ func (a adminAPIHandlers) HealSetsHandler(w http.ResponseWriter, r *http.Request
defer wg.Done() defer wg.Done()
lbDisks := z.serverSets[0].sets[setNumber].getDisks() lbDisks := z.serverSets[0].sets[setNumber].getDisks()
if err := healErasureSet(ctx, vars[healSetsPrefix], setNumber, opts.sleepForIO, opts.sleepDuration, buckets, lbDisks); err != nil { if err := healErasureSet(ctx, vars[healSetsPrefix], setNumber, opts.sleepForIO, opts.sleepDuration, buckets, lbDisks); err != nil {
logger.LogIf(ctx, err) if !isErrBucketNotFound(err) {
logger.LogIf(ctx, err)
}
} }
}(setNumber) }(setNumber)
} }

View file

@ -21,7 +21,6 @@ import (
"encoding/json" "encoding/json"
"fmt" "fmt"
"net/http" "net/http"
"runtime"
"sync" "sync"
"time" "time"
@ -421,7 +420,7 @@ func newHealSequence(ctx context.Context, bucket, objPrefix, clientAddr string,
clientToken := mustGetUUID() clientToken := mustGetUUID()
return &healSequence{ return &healSequence{
respCh: make(chan healResult, runtime.GOMAXPROCS(0)), respCh: make(chan healResult),
bucket: bucket, bucket: bucket,
object: objPrefix, object: objPrefix,
reportProgress: true, reportProgress: true,

View file

@ -19,7 +19,6 @@ package cmd
import ( import (
"context" "context"
"path" "path"
"runtime"
"time" "time"
"github.com/minio/minio/pkg/madmin" "github.com/minio/minio/pkg/madmin"
@ -126,7 +125,7 @@ func (h *healRoutine) run(ctx context.Context, objAPI ObjectLayer) {
func newHealRoutine() *healRoutine { func newHealRoutine() *healRoutine {
return &healRoutine{ return &healRoutine{
tasks: make(chan healTask, runtime.GOMAXPROCS(0)), tasks: make(chan healTask),
doneCh: make(chan struct{}), doneCh: make(chan struct{}),
} }

View file

@ -18,7 +18,6 @@ package cmd
import ( import (
"context" "context"
"runtime"
"sync" "sync"
"time" "time"
@ -43,8 +42,8 @@ func newBgHealSequence() *healSequence {
} }
return &healSequence{ return &healSequence{
sourceCh: make(chan healSource, runtime.GOMAXPROCS(0)), sourceCh: make(chan healSource),
respCh: make(chan healResult, runtime.GOMAXPROCS(0)), respCh: make(chan healResult),
startTime: UTCNow(), startTime: UTCNow(),
clientToken: bgHealingUUID, clientToken: bgHealingUUID,
// run-background heal with reserved bucket // run-background heal with reserved bucket