diff --git a/workflow/controller/operator.go b/workflow/controller/operator.go index 7473420e64f5..d03770e096de 100644 --- a/workflow/controller/operator.go +++ b/workflow/controller/operator.go @@ -807,7 +807,7 @@ func (woc *wfOperationCtx) persistUpdates(ctx context.Context) { } } // If Finalizer exists, requeue to make sure Finalizer can be removed. - if len(wf.GetFinalizers()) > 0 { + if woc.wf.Status.Fulfilled() && len(wf.GetFinalizers()) > 0 { woc.requeue() }