From c91524c176d338935346ddf527c75f1a3f6e4c1d Mon Sep 17 00:00:00 2001 From: Dillen Padhiar Date: Thu, 16 Jun 2022 15:46:55 -0700 Subject: [PATCH 1/4] feat: log workflow size before hydrating/dehydrating. Fixes #8976 Signed-off-by: Dillen Padhiar --- workflow/controller/controller.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/workflow/controller/controller.go b/workflow/controller/controller.go index df063d6c400b..d4bfc65628b7 100644 --- a/workflow/controller/controller.go +++ b/workflow/controller/controller.go @@ -603,6 +603,7 @@ func (wfc *WorkflowController) deleteOffloadedNodesForWorkflow(uid string, versi // workflow might still be hydrated if wfc.hydrator.IsHydrated(wf) { log.WithField("uid", wf.UID).Info("Hydrated workflow encountered") + log.WithField("Workflow size", wf.Size()).Info("Hydrated workflow size") err = wfc.hydrator.Dehydrate(wf) if err != nil { return err @@ -887,6 +888,7 @@ func (wfc *WorkflowController) archiveWorkflowAux(ctx context.Context, obj inter if err != nil { return fmt.Errorf("failed to convert to workflow from unstructured: %w", err) } + log.WithField("Workflow size", wf.Size()).Info("Workflow to archive size") err = wfc.hydrator.Hydrate(wf) if err != nil { return fmt.Errorf("failed to hydrate workflow: %w", err) From ef20692bbf6b06582b67d26de05cd209d00046b1 Mon Sep 17 00:00:00 2001 From: Dillen Padhiar Date: Thu, 16 Jun 2022 16:45:05 -0700 Subject: [PATCH 2/4] feat: added log field to previous log statement Signed-off-by: Dillen Padhiar --- workflow/controller/controller.go | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/workflow/controller/controller.go b/workflow/controller/controller.go index d4bfc65628b7..d4ba692d1b87 100644 --- a/workflow/controller/controller.go +++ b/workflow/controller/controller.go @@ -602,8 +602,7 @@ func (wfc *WorkflowController) deleteOffloadedNodesForWorkflow(uid string, versi defer wfc.workflowKeyLock.Unlock(key) // workflow might still be hydrated if wfc.hydrator.IsHydrated(wf) { - log.WithField("uid", wf.UID).Info("Hydrated workflow encountered") - log.WithField("Workflow size", wf.Size()).Info("Hydrated workflow size") + log.WithFields(log.Fields{"uid": wf.UID, "Workflow size": wf.Size()}).Info("Hydrated workflow encountered") err = wfc.hydrator.Dehydrate(wf) if err != nil { return err From e96f64275adef58078e5f798d2df8fda5ba3f864 Mon Sep 17 00:00:00 2001 From: Dillen Padhiar Date: Fri, 17 Jun 2022 16:37:14 -0700 Subject: [PATCH 3/4] feat: moved log for workflow size to hydrator.go Signed-off-by: Dillen Padhiar --- workflow/controller/controller.go | 3 +-- workflow/hydrator/hydrator.go | 2 ++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/workflow/controller/controller.go b/workflow/controller/controller.go index d4ba692d1b87..df063d6c400b 100644 --- a/workflow/controller/controller.go +++ b/workflow/controller/controller.go @@ -602,7 +602,7 @@ func (wfc *WorkflowController) deleteOffloadedNodesForWorkflow(uid string, versi defer wfc.workflowKeyLock.Unlock(key) // workflow might still be hydrated if wfc.hydrator.IsHydrated(wf) { - log.WithFields(log.Fields{"uid": wf.UID, "Workflow size": wf.Size()}).Info("Hydrated workflow encountered") + log.WithField("uid", wf.UID).Info("Hydrated workflow encountered") err = wfc.hydrator.Dehydrate(wf) if err != nil { return err @@ -887,7 +887,6 @@ func (wfc *WorkflowController) archiveWorkflowAux(ctx context.Context, obj inter if err != nil { return fmt.Errorf("failed to convert to workflow from unstructured: %w", err) } - log.WithField("Workflow size", wf.Size()).Info("Workflow to archive size") err = wfc.hydrator.Hydrate(wf) if err != nil { return fmt.Errorf("failed to hydrate workflow: %w", err) diff --git a/workflow/hydrator/hydrator.go b/workflow/hydrator/hydrator.go index c5e70b252d39..d7b29704cff4 100644 --- a/workflow/hydrator/hydrator.go +++ b/workflow/hydrator/hydrator.go @@ -85,6 +85,7 @@ func (h hydrator) Hydrate(wf *wfv1.Workflow) error { } h.HydrateWithNodes(wf, offloadedNodes) } + log.WithField("Workflow Size", wf.Size()).Info("Workflow hydrated") return nil } @@ -93,6 +94,7 @@ func (h hydrator) Dehydrate(wf *wfv1.Workflow) error { return nil } var err error + log.WithField("Workflow Size", wf.Size()).Info("Workflow to be dehydrated") if !alwaysOffloadNodeStatus { err = packer.CompressWorkflowIfNeeded(wf) if err == nil { From 5401286ec72cbaa9dcf15c86bc0e360bae239a6f Mon Sep 17 00:00:00 2001 From: Dillen Padhiar Date: Fri, 17 Jun 2022 16:47:59 -0700 Subject: [PATCH 4/4] feat: move log in Hydrate() Signed-off-by: Dillen Padhiar --- workflow/hydrator/hydrator.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/workflow/hydrator/hydrator.go b/workflow/hydrator/hydrator.go index d7b29704cff4..c5b922c72191 100644 --- a/workflow/hydrator/hydrator.go +++ b/workflow/hydrator/hydrator.go @@ -84,8 +84,9 @@ func (h hydrator) Hydrate(wf *wfv1.Workflow) error { return err } h.HydrateWithNodes(wf, offloadedNodes) + log.WithField("Workflow Size", wf.Size()).Info("Workflow hydrated") } - log.WithField("Workflow Size", wf.Size()).Info("Workflow hydrated") + return nil }