Fix external grpc server doesn't graceful stop (#28310)

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
pull/28335/head v2.3.3
wei liu 2023-11-09 22:12:22 +08:00 committed by GitHub
parent c8cab4dfc3
commit f2e972abb3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 16 additions and 9 deletions

View File

@ -649,18 +649,25 @@ func (s *Server) Stop() error {
gracefulWg.Add(1)
go func() {
defer gracefulWg.Done()
if s.grpcInternalServer != nil {
utils.GracefulStopGRPCServer(s.grpcInternalServer)
}
if s.tcpServer != nil {
log.Info("Graceful stop Proxy tcp server...")
log.Info("Proxy stop tcp server...")
s.tcpServer.Close()
} else if s.grpcExternalServer != nil {
}
if s.grpcExternalServer != nil {
log.Info("Proxy stop external grpc server")
utils.GracefulStopGRPCServer(s.grpcExternalServer)
if s.httpServer != nil {
log.Info("Graceful stop grpc http server...")
s.httpServer.Close()
}
}
if s.httpServer != nil {
log.Info("Proxy stop http server...")
s.httpServer.Close()
}
if s.grpcInternalServer != nil {
log.Info("Proxy stop internal grpc server")
utils.GracefulStopGRPCServer(s.grpcInternalServer)
}
}()
gracefulWg.Wait()