From 8f449f29960810bcebbcee84910e98ed8eaec42a Mon Sep 17 00:00:00 2001 From: yah01 Date: Thu, 1 Dec 2022 20:03:16 +0800 Subject: [PATCH] Fix fake segment is never handled (#20935) Signed-off-by: yah01 Signed-off-by: yah01 --- internal/metastore/kv/datacoord/kv_catalog.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/internal/metastore/kv/datacoord/kv_catalog.go b/internal/metastore/kv/datacoord/kv_catalog.go index 0362446269..c5ec511794 100644 --- a/internal/metastore/kv/datacoord/kv_catalog.go +++ b/internal/metastore/kv/datacoord/kv_catalog.go @@ -169,7 +169,10 @@ func (kc *Catalog) AlterSegment(ctx context.Context, newSegment *datapb.SegmentI maps.Copy(kvs, segmentKvs) if newSegment.State == commonpb.SegmentState_Flushed && oldSegment.State != commonpb.SegmentState_Flushed { flushSegKey := buildFlushedSegmentPath(newSegment.GetCollectionID(), newSegment.GetPartitionID(), newSegment.GetID()) - newSeg := &datapb.SegmentInfo{ID: newSegment.GetID()} + newSeg := &datapb.SegmentInfo{ + ID: newSegment.GetID(), + IsFake: newSegment.GetNumOfRows() == 0, + } segBytes, err := marshalSegmentInfo(newSeg) if err != nil { return err