From f7f9f7d4e09ab5b5e8a382ac00aaa913fba76912 Mon Sep 17 00:00:00 2001 From: David Boslee Date: Tue, 4 Apr 2023 17:14:30 -0600 Subject: [PATCH] Send tunnel reconnects before waiting for sessions to drain --- lib/reversetunnel/srv.go | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/reversetunnel/srv.go b/lib/reversetunnel/srv.go index 9ccd5a883a1eb..1f3a4426aa4cd 100644 --- a/lib/reversetunnel/srv.go +++ b/lib/reversetunnel/srv.go @@ -613,8 +613,6 @@ func (s *server) Close() error { func (s *server) DrainConnections(ctx context.Context) error { // Ensure listener is closed before sending reconnects. err := s.srv.Close() - s.srv.Wait(ctx) - s.RLock() s.log.Debugf("Advising reconnect to local site: %s", s.localSite.GetName()) go s.localSite.adviseReconnect(ctx) @@ -625,6 +623,7 @@ func (s *server) DrainConnections(ctx context.Context) error { } s.RUnlock() + s.srv.Wait(ctx) return trace.Wrap(err) }