ETAUnknown constant

Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
This commit is contained in:
Shlomi Noach 2021-03-07 14:16:04 +02:00
parent 76b9c16a68
commit b688c58a45
2 changed files with 7 additions and 2 deletions

View File

@ -52,6 +52,7 @@ const (
const ( const (
HTTPStatusOK = 200 HTTPStatusOK = 200
MaxEventsBatchSize = 1000 MaxEventsBatchSize = 1000
ETAUnknown = math.MinInt64
) )
var ( var (
@ -268,6 +269,7 @@ func NewMigrationContext() *MigrationContext {
MaxLagMillisecondsThrottleThreshold: 1500, MaxLagMillisecondsThrottleThreshold: 1500,
CutOverLockTimeoutSeconds: 3, CutOverLockTimeoutSeconds: 3,
DMLBatchSize: 10, DMLBatchSize: 10,
etaNanoseonds: ETAUnknown,
maxLoad: NewLoadMap(), maxLoad: NewLoadMap(),
criticalLoad: NewLoadMap(), criticalLoad: NewLoadMap(),
throttleMutex: &sync.Mutex{}, throttleMutex: &sync.Mutex{},
@ -485,6 +487,9 @@ func (this *MigrationContext) SetETADuration(etaDuration time.Duration) {
func (this *MigrationContext) GetETASeconds() int64 { func (this *MigrationContext) GetETASeconds() int64 {
nano := atomic.LoadInt64(&this.etaNanoseonds) nano := atomic.LoadInt64(&this.etaNanoseonds)
if nano < 0 {
return ETAUnknown
}
return nano / int64(time.Second) return nano / int64(time.Second)
} }

View File

@ -939,7 +939,7 @@ func (this *Migrator) printStatus(rule PrintStatusRule, writers ...io.Writer) {
} }
var etaSeconds float64 = math.MaxFloat64 var etaSeconds float64 = math.MaxFloat64
var etaDuration = time.Duration(math.MinInt64) var etaDuration = time.Duration(base.ETAUnknown)
if progressPct >= 100.0 { if progressPct >= 100.0 {
etaDuration = 0 etaDuration = 0
} else if progressPct >= 0.1 { } else if progressPct >= 0.1 {
@ -957,7 +957,7 @@ func (this *Migrator) printStatus(rule PrintStatusRule, writers ...io.Writer) {
switch etaDuration { switch etaDuration {
case 0: case 0:
eta = "due" eta = "due"
case time.Duration(math.MinInt64): case time.Duration(base.ETAUnknown):
eta = "N/A" eta = "N/A"
default: default:
eta = base.PrettifyDurationOutput(etaDuration) eta = base.PrettifyDurationOutput(etaDuration)