From 178db7b0f0f4b65940f5b3b62a55a3cf0ea83bc5 Mon Sep 17 00:00:00 2001 From: wei liu Date: Tue, 24 Oct 2023 12:20:11 +0800 Subject: [PATCH] check stopping node during start qc (#27859) Signed-off-by: Wei Liu --- internal/querycoordv2/server.go | 4 ++++ internal/querycoordv2/server_test.go | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/internal/querycoordv2/server.go b/internal/querycoordv2/server.go index 1d48f39718..8ef648ff01 100644 --- a/internal/querycoordv2/server.go +++ b/internal/querycoordv2/server.go @@ -408,6 +408,10 @@ func (s *Server) startQueryCoord() error { for _, node := range sessions { s.nodeMgr.Add(session.NewNodeInfo(node.ServerID, node.Address)) s.taskScheduler.AddExecutor(node.ServerID) + + if node.Stopping { + s.nodeMgr.Stopping(node.ServerID) + } } s.checkReplicas() for _, node := range sessions { diff --git a/internal/querycoordv2/server_test.go b/internal/querycoordv2/server_test.go index b3dad18433..5a0ddecda7 100644 --- a/internal/querycoordv2/server_test.go +++ b/internal/querycoordv2/server_test.go @@ -167,6 +167,10 @@ func (suite *ServerSuite) TestRecover() { err := suite.server.Stop() suite.NoError(err) + // stopping querynode + downNode := suite.nodes[0] + downNode.Stopping() + suite.server, err = suite.newQueryCoord() suite.NoError(err) suite.hackServer() @@ -176,6 +180,8 @@ func (suite *ServerSuite) TestRecover() { for _, collection := range suite.collections { suite.True(suite.server.meta.Exist(collection)) } + + suite.True(suite.server.nodeMgr.IsStoppingNode(suite.nodes[0].ID)) } func (suite *ServerSuite) TestNodeUp() {