diff --git a/models/cloudbrain.go b/models/cloudbrain.go index fa9a27bb9..f1a99577b 100755 --- a/models/cloudbrain.go +++ b/models/cloudbrain.go @@ -278,7 +278,7 @@ func (task *Cloudbrain) IsRunning() bool { } func ConvertDurationToStr(duration int64) string { - if duration == 0 { + if duration <= 0 { return DURATION_STR_ZERO } return util.AddZero(duration/3600) + ":" + util.AddZero(duration%3600/60) + ":" + util.AddZero(duration%60) diff --git a/routers/repo/cloudbrain.go b/routers/repo/cloudbrain.go index e58ec45c2..27670f23c 100755 --- a/routers/repo/cloudbrain.go +++ b/routers/repo/cloudbrain.go @@ -1840,6 +1840,10 @@ func SyncCloudbrainStatus() { oldStatus := task.Status task.Status = grampus.TransTrainJobStatus(result.JobInfo.Status) task.Duration = result.JobInfo.RunSec + + if task.Duration < 0 { + task.Duration = 0 + } task.TrainJobDuration = models.ConvertDurationToStr(task.Duration) if task.StartTime == 0 && result.JobInfo.StartedAt > 0 { diff --git a/routers/repo/grampus.go b/routers/repo/grampus.go index b204d20da..6ba25137d 100755 --- a/routers/repo/grampus.go +++ b/routers/repo/grampus.go @@ -709,6 +709,9 @@ func GrampusTrainJobShow(ctx *context.Context) { task.Status = grampus.TransTrainJobStatus(result.JobInfo.Status) if task.Status != result.JobInfo.Status || result.JobInfo.Status == models.GrampusStatusRunning { task.Duration = result.JobInfo.RunSec + if task.Duration < 0 { + task.Duration = 0 + } task.TrainJobDuration = models.ConvertDurationToStr(task.Duration) if task.StartTime == 0 && result.JobInfo.StartedAt > 0 {