From 19611c18e7196d226051285d01a8aff751f4e1cd Mon Sep 17 00:00:00 2001 From: Simone Gotti Date: Fri, 28 Feb 2020 13:02:35 +0100 Subject: [PATCH] runservice: fix handling of wrong executortask status updateRunTaskStatus should also accept transitions from not started to a finished state like "success", "failed", "stopped" since we could miss some status updates from the executor for many reasons. --- internal/services/runservice/scheduler.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/internal/services/runservice/scheduler.go b/internal/services/runservice/scheduler.go index 7161407..2bcb06a 100644 --- a/internal/services/runservice/scheduler.go +++ b/internal/services/runservice/scheduler.go @@ -671,11 +671,13 @@ func (s *Runservice) updateRunTaskStatus(ctx context.Context, et *types.Executor } case types.ExecutorTaskPhaseStopped: if rt.Status != types.RunTaskStatusStopped && + rt.Status != types.RunTaskStatusNotStarted && rt.Status != types.RunTaskStatusRunning { wrongstatus = true } case types.ExecutorTaskPhaseSuccess: if rt.Status != types.RunTaskStatusSuccess && + rt.Status != types.RunTaskStatusNotStarted && rt.Status != types.RunTaskStatusRunning { wrongstatus = true } @@ -687,7 +689,7 @@ func (s *Runservice) updateRunTaskStatus(ctx context.Context, et *types.Executor } } if wrongstatus { - log.Warnf("wrong executor task %q status: %q, rt status: %q", et.ID, et.Status.Phase, rt.Status) + log.Warnf("ignoring wrong executor task %q status: %q, rt status: %q", et.ID, et.Status.Phase, rt.Status) return nil }