talent-plan-tinykv/scheduler/server/schedulers/utils.go
Yang Keao 0eecd7db66 pick master change and add comment
Signed-off-by: Yang Keao <keao.yang@yahoo.com>
2020-04-30 15:31:26 +08:00

54 lines
1.1 KiB
Go

// Copyright 2017 PingCAP, Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// See the License for the specific language governing permissions and
// limitations under the License.
package schedulers
import (
"time"
"github.com/pingcap-incubator/tinykv/scheduler/server/core"
"github.com/pkg/errors"
)
const (
leaderTolerantSizeRatio float64 = 5.0
)
// ErrScheduleConfigNotExist the config is not correct.
var ErrScheduleConfigNotExist = errors.New("the config does not exist")
func minUint64(a, b uint64) uint64 {
if a < b {
return a
}
return b
}
func maxUint64(a, b uint64) uint64 {
if a > b {
return a
}
return b
}
func minDuration(a, b time.Duration) time.Duration {
if a < b {
return a
}
return b
}
func isRegionUnhealthy(region *core.RegionInfo) bool {
return len(region.GetLearners()) != 0
}