From 13d1d2fa08696a49d0c6cf936e20613dd9e4aee1 Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Sat, 18 Jan 2020 10:18:23 +0000 Subject: [PATCH] hard stop if graceful stop fails after 1 second --- server/grpc/grpc.go | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/server/grpc/grpc.go b/server/grpc/grpc.go index 1123a67e..08c771e3 100644 --- a/server/grpc/grpc.go +++ b/server/grpc/grpc.go @@ -810,7 +810,18 @@ func (g *grpcServer) Start() error { } // stop the grpc server - g.srv.Stop() + exit := make(chan bool) + + go func() { + g.srv.GracefulStop() + close(exit) + }() + + select { + case <-exit: + case <-time.After(time.Second): + g.srv.Stop() + } // close transport ch <- nil