From d506d33a8d801bcdbb5d25c789ce66dd1a5fabb4 Mon Sep 17 00:00:00 2001 From: Buqian Zheng Date: Wed, 10 Jan 2024 13:22:48 +0800 Subject: [PATCH] fix: meta cache in datanode incorrectly tracking row nums (#29817) ... of compacted segments issue: #29816 Signed-off-by: Buqian Zheng --- internal/datanode/metacache/meta_cache.go | 1 + internal/datanode/metacache/meta_cache_test.go | 1 + 2 files changed, 2 insertions(+) diff --git a/internal/datanode/metacache/meta_cache.go b/internal/datanode/metacache/meta_cache.go index 48bea64b1f..b5ed2d9564 100644 --- a/internal/datanode/metacache/meta_cache.go +++ b/internal/datanode/metacache/meta_cache.go @@ -125,6 +125,7 @@ func (c *metaCacheImpl) CompactSegments(newSegmentID, partitionID int64, numOfRo segmentID: newSegmentID, partitionID: partitionID, state: commonpb.SegmentState_Flushed, + flushedRows: numOfRows, startPosRecorded: true, bfs: bfs, } diff --git a/internal/datanode/metacache/meta_cache_test.go b/internal/datanode/metacache/meta_cache_test.go index 8b8b006660..844eee117c 100644 --- a/internal/datanode/metacache/meta_cache_test.go +++ b/internal/datanode/metacache/meta_cache_test.go @@ -111,6 +111,7 @@ func (s *MetaCacheSuite) TestCompactSegments() { for _, seg := range segs { if seg.SegmentID() == s.newSegments[i] { s.Equal(commonpb.SegmentState_Flushed, seg.State()) + s.Equal(int64(100), seg.NumOfRows()) } if seg.SegmentID() == s.flushedSegments[i] { s.Equal(s.newSegments[i], seg.CompactTo())