From 5d660f16d6644700e040e5d0e70357baaadee648 Mon Sep 17 00:00:00 2001 From: "cai.zhang" Date: Tue, 10 Jan 2023 14:33:38 +0800 Subject: [PATCH] Forbid IndexCoord start with version<2.3 (#21597) Signed-off-by: cai.zhang --- internal/datacoord/server.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/internal/datacoord/server.go b/internal/datacoord/server.go index d045db6c84..b19ab16cc0 100644 --- a/internal/datacoord/server.go +++ b/internal/datacoord/server.go @@ -122,6 +122,7 @@ type Server struct { factory dependency.Factory session *sessionutil.Session + icSession *sessionutil.Session dnEventCh <-chan *sessionutil.SessionEvent inEventCh <-chan *sessionutil.SessionEvent //qcEventCh <-chan *sessionutil.SessionEvent @@ -225,6 +226,8 @@ func (s *Server) QuitSignal() <-chan struct{} { // Register registers data service at etcd func (s *Server) Register() error { + // first register indexCoord + s.icSession.Register() s.session.Register() if s.enableActiveStandBy { s.session.ProcessActiveStandBy(s.activateFunc) @@ -245,6 +248,12 @@ func (s *Server) Register() error { } func (s *Server) initSession() error { + s.icSession = sessionutil.NewSession(s.ctx, Params.EtcdCfg.MetaRootPath.GetValue(), s.etcdCli) + if s.icSession == nil { + return errors.New("failed to initialize IndexCoord session") + } + s.icSession.Init(typeutil.IndexCoordRole, s.address, true, true) + s.session = sessionutil.NewSession(s.ctx, Params.EtcdCfg.MetaRootPath.GetValue(), s.etcdCli) if s.session == nil { return errors.New("failed to initialize session")