From 72910d65e02b70b40a17f2c23ea13a3bba77d20b Mon Sep 17 00:00:00 2001 From: "zhenshan.cao" Date: Fri, 8 Jul 2022 13:48:21 +0800 Subject: [PATCH] Fix inconsistency in DataCoord (#18170) (#18171) Signed-off-by: zhenshan.cao --- internal/datacoord/meta.go | 2 +- internal/datacoord/server_test.go | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/internal/datacoord/meta.go b/internal/datacoord/meta.go index 7c792b2995..b930119cc5 100644 --- a/internal/datacoord/meta.go +++ b/internal/datacoord/meta.go @@ -171,10 +171,10 @@ func (m *meta) GetNumRowsOfCollection(collectionID UniqueID) int64 { func (m *meta) AddSegment(segment *SegmentInfo) error { m.Lock() defer m.Unlock() - m.segments.SetSegment(segment.GetID(), segment) if err := m.saveSegmentInfo(segment); err != nil { return err } + m.segments.SetSegment(segment.GetID(), segment) metrics.DataCoordNumSegments.WithLabelValues(segment.GetState().String()).Inc() return nil } diff --git a/internal/datacoord/server_test.go b/internal/datacoord/server_test.go index d357356386..f5b60df311 100644 --- a/internal/datacoord/server_test.go +++ b/internal/datacoord/server_test.go @@ -2615,7 +2615,8 @@ func TestDataCoordServer_SetSegmentState(t *testing.T) { Timestamp: 0, }, } - svr.meta.AddSegment(NewSegmentInfo(segment)) + err2 := svr.meta.AddSegment(NewSegmentInfo(segment)) + assert.NotNil(t, err2) // Set segment state. svr.SetSegmentState(context.TODO(), &datapb.SetSegmentStateRequest{ SegmentId: 1000, @@ -2634,7 +2635,7 @@ func TestDataCoordServer_SetSegmentState(t *testing.T) { assert.Nil(t, err) assert.EqualValues(t, commonpb.ErrorCode_Success, resp.Status.ErrorCode) assert.EqualValues(t, 1, len(resp.States)) - assert.EqualValues(t, commonpb.SegmentState_Flushed, resp.States[0].State) + assert.EqualValues(t, commonpb.SegmentState_NotExist, resp.States[0].State) }) t.Run("with closed server", func(t *testing.T) {