fix: bm25 stats idf oracle leak (#41425)

relate: https://github.com/milvus-io/milvus/issues/41424

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
This commit is contained in:
aoiasd 2025-04-23 14:28:37 +08:00 committed by GitHub
parent a16bd6263b
commit 655cc7fe06
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -954,12 +954,22 @@ func (sd *shardDelegator) ReleaseSegments(ctx context.Context, req *querypb.Rele
pkoracle.WithSegmentType(commonpb.SegmentState_Sealed), pkoracle.WithSegmentType(commonpb.SegmentState_Sealed),
pkoracle.WithWorkerID(targetNodeID), pkoracle.WithWorkerID(targetNodeID),
) )
if sd.idfOracle != nil {
for _, segment := range sealed {
sd.idfOracle.Remove(segment.SegmentID, commonpb.SegmentState_Sealed)
}
}
} }
if len(growing) > 0 { if len(growing) > 0 {
sd.pkOracle.Remove( sd.pkOracle.Remove(
pkoracle.WithSegmentIDs(lo.Map(growing, func(entry SegmentEntry, _ int) int64 { return entry.SegmentID })...), pkoracle.WithSegmentIDs(lo.Map(growing, func(entry SegmentEntry, _ int) int64 { return entry.SegmentID })...),
pkoracle.WithSegmentType(commonpb.SegmentState_Growing), pkoracle.WithSegmentType(commonpb.SegmentState_Growing),
) )
if sd.idfOracle != nil {
for _, segment := range growing {
sd.idfOracle.Remove(segment.SegmentID, commonpb.SegmentState_Growing)
}
}
} }
var releaseErr error var releaseErr error