From a971e6a33161c9aa30e1a18afcd7889e53646c9c Mon Sep 17 00:00:00 2001 From: wxiaoguang Date: Sat, 11 Jun 2022 23:17:25 +0800 Subject: [PATCH 1/2] Fix signal loop --- modules/graceful/manager_unix.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/graceful/manager_unix.go b/modules/graceful/manager_unix.go index 9d3816e9c2a76..e7c27b6463c63 100644 --- a/modules/graceful/manager_unix.go +++ b/modules/graceful/manager_unix.go @@ -128,6 +128,7 @@ func (g *Manager) handleSignals(ctx context.Context) { ) pid := syscall.Getpid() +loop: for { select { case sig := <-signalChannel: @@ -157,6 +158,7 @@ func (g *Manager) handleSignals(ctx context.Context) { case <-ctx.Done(): log.Warn("PID: %d. Background context for manager closed - %v - Shutting down...", pid, ctx.Err()) g.DoGracefulShutdown() + break loop } } } From b2861e2f59862bcc2f1cd7ab06001308bc5a13fd Mon Sep 17 00:00:00 2001 From: wxiaoguang Date: Sun, 12 Jun 2022 18:35:26 +0800 Subject: [PATCH 2/2] Update manager_unix.go --- modules/graceful/manager_unix.go | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/modules/graceful/manager_unix.go b/modules/graceful/manager_unix.go index e7c27b6463c63..ba1dbd38f6a08 100644 --- a/modules/graceful/manager_unix.go +++ b/modules/graceful/manager_unix.go @@ -128,7 +128,6 @@ func (g *Manager) handleSignals(ctx context.Context) { ) pid := syscall.Getpid() -loop: for { select { case sig := <-signalChannel: @@ -158,7 +157,7 @@ loop: case <-ctx.Done(): log.Warn("PID: %d. Background context for manager closed - %v - Shutting down...", pid, ctx.Err()) g.DoGracefulShutdown() - break loop + return } } }