diff --git a/cmd/icingadb/main.go b/cmd/icingadb/main.go index aac043bf..c8931d00 100644 --- a/cmd/icingadb/main.go +++ b/cmd/icingadb/main.go @@ -211,6 +211,11 @@ func run() int { g.Go(func() error { configInitSync.Wait() + + if err := synctx.Err(); err != nil { + return err + } + logger.Info("Starting config runtime updates sync") return rt.Sync(synctx, v1.ConfigFactories, runtimeConfigUpdateStreams) @@ -218,7 +223,13 @@ func run() int { g.Go(func() error { stateInitSync.Wait() + + if err := synctx.Err(); err != nil { + return err + } + logger.Info("Starting state runtime updates sync") + return rt.Sync(synctx, v1.StateFactories, runtimeStateUpdateStreams) }) diff --git a/pkg/retry/retry.go b/pkg/retry/retry.go index 29faf8a7..0ebae3c2 100644 --- a/pkg/retry/retry.go +++ b/pkg/retry/retry.go @@ -48,6 +48,10 @@ func WithBackoff( return } + if err = parentCtx.Err(); err != nil { + return + } + if settings.OnError != nil { settings.OnError(time.Since(start), attempt, err, prevErr) }