diff --git a/safe_message_handler/workflow.go b/safe_message_handler/workflow.go index e639d856..8015a1bf 100644 --- a/safe_message_handler/workflow.go +++ b/safe_message_handler/workflow.go @@ -292,16 +292,15 @@ func (cm *ClusterManager) run(ctx workflow.Context) (ClusterManagerResult, error cm.logger.Info("Cluster started") for { selector := workflow.NewSelector(ctx) - shouldShutdown := false selector.AddReceive(cm.shutdownCh, func(c workflow.ReceiveChannel, _ bool) { c.Receive(ctx, nil) - shouldShutdown = true + cm.state.ClusterShutdown = true }) selector.AddFuture(workflow.NewTimer(ctx, cm.sleepInterval), func(f workflow.Future) { cm.performHealthCheck(ctx) }) selector.Select(ctx) - if shouldShutdown { + if cm.state.ClusterShutdown { break } if cm.shouldContinueAsNew(ctx) {