From 6ff238e88afe147cc2ae00d1ecd1f352633a28d9 Mon Sep 17 00:00:00 2001 From: congqixia Date: Tue, 6 Aug 2024 22:32:23 +0800 Subject: [PATCH] fix: Set corresponding DataScope for `loadStreamDelete` (#35312) Related to #35311 Signed-off-by: Congqi Xia --- internal/querynodev2/delegator/delegator_data.go | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/internal/querynodev2/delegator/delegator_data.go b/internal/querynodev2/delegator/delegator_data.go index c50620fc16..0c75ac7571 100644 --- a/internal/querynodev2/delegator/delegator_data.go +++ b/internal/querynodev2/delegator/delegator_data.go @@ -646,6 +646,16 @@ func (sd *shardDelegator) loadStreamDelete(ctx context.Context, position = deltaPositions[0] } + // after L0 segment feature + // growing segemnts should have load stream delete as well + deleteScope := querypb.DataScope_All + switch candidate.Type() { + case commonpb.SegmentState_Sealed: + deleteScope = querypb.DataScope_Historical + case commonpb.SegmentState_Growing: + deleteScope = querypb.DataScope_Streaming + } + deletedPks, deletedTss := sd.GetLevel0Deletions(candidate.Partition(), candidate) deleteData := &storage.DeleteData{} deleteData.AppendBatch(deletedPks, deletedTss) @@ -660,7 +670,7 @@ func (sd *shardDelegator) loadStreamDelete(ctx context.Context, SegmentId: info.GetSegmentID(), PrimaryKeys: storage.ParsePrimaryKeys2IDs(deleteData.Pks), Timestamps: deleteData.Tss, - Scope: querypb.DataScope_Historical, // only sealed segment need to loadStreamDelete + Scope: deleteScope, }) if err != nil { log.Warn("failed to apply delete when LoadSegment", zap.Error(err)) @@ -718,6 +728,7 @@ func (sd *shardDelegator) loadStreamDelete(ctx context.Context, SegmentId: info.GetSegmentID(), PrimaryKeys: storage.ParsePrimaryKeys2IDs(deleteData.Pks), Timestamps: deleteData.Tss, + Scope: deleteScope, }) if err != nil { log.Warn("failed to apply delete when LoadSegment", zap.Error(err))