From f7b307222cd4c5efeb9ee10ece1a4cc04f35085a Mon Sep 17 00:00:00 2001 From: Cheng Wang Date: Sun, 2 Jul 2023 05:11:16 +0800 Subject: [PATCH] fix: Argo DB init conflict when deploy workflow-controller with multiple replicas #11177 (#11178) Signed-off-by: astraw99 --- workflow/controller/controller.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/workflow/controller/controller.go b/workflow/controller/controller.go index 722780b567b0..58051c69900c 100644 --- a/workflow/controller/controller.go +++ b/workflow/controller/controller.go @@ -187,8 +187,6 @@ func NewWorkflowController(ctx context.Context, restConfig *rest.Config, kubecli wfc.executorPlugins = map[string]map[string]*spec.Plugin{} } - wfc.UpdateConfig(ctx) - wfc.metrics = metrics.New(wfc.getMetricsServerConfig()) wfc.entrypoint = entrypoint.New(kubeclientset, wfc.Config.Images) @@ -240,6 +238,9 @@ var indexers = cache.Indexers{ func (wfc *WorkflowController) Run(ctx context.Context, wfWorkers, workflowTTLWorkers, podCleanupWorkers int) { defer runtimeutil.HandleCrash(runtimeutil.PanicHandlers...) + // init DB after leader election (if enabled) + wfc.UpdateConfig(ctx) + ctx, cancel := context.WithCancel(ctx) defer cancel()