diff --git a/workflow/controller/operator.go b/workflow/controller/operator.go index 8d9fb25c2474..62f3b638a292 100644 --- a/workflow/controller/operator.go +++ b/workflow/controller/operator.go @@ -228,7 +228,11 @@ func (woc *wfOperationCtx) operate(ctx context.Context) { woc.updated = wfUpdate if !acquired { woc.log.Warn("Workflow processing has been postponed due to concurrency limit") - woc.wf.Status.Message = msg + phase := woc.wf.Status.Phase + if phase == wfv1.WorkflowUnknown { + phase = wfv1.WorkflowPending + } + woc.markWorkflowPhase(ctx, phase, msg) return } }