From 541a778d7bc186005650ffb42e553e76e2850fa6 Mon Sep 17 00:00:00 2001 From: Krishna Srinivas <634494+krishnasrinivas@users.noreply.github.com> Date: Wed, 1 Apr 2020 21:40:03 -0700 Subject: [PATCH] fix: do not exit on bootstrap Verify() to allow for rolling upgrades (#9235) --- cmd/server-main.go | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/cmd/server-main.go b/cmd/server-main.go index d746260a5..f125c0173 100644 --- a/cmd/server-main.go +++ b/cmd/server-main.go @@ -397,9 +397,18 @@ func serverMain(ctx *cli.Context) { globalObjLayerMutex.Unlock() if globalIsDistXL && globalEndpoints.FirstLocal() { - // Additionally in distributed setup validate - if err := verifyServerSystemConfig(globalEndpoints); err != nil { - logger.Fatal(err, "Unable to initialize distributed setup") + for { + // Additionally in distributed setup, validate the setup and configuration. + err := verifyServerSystemConfig(globalEndpoints) + if err == nil { + break + } + logger.LogIf(GlobalContext, err, "Unable to initialize distributed setup") + select { + case <-GlobalContext.Done(): + return + case <-time.After(5 * time.Second): + } } }