From 1b8a837758ae4273eeadf4e883da5836f75d99fe Mon Sep 17 00:00:00 2001 From: cqy123456 <39671710+cqy123456@users.noreply.github.com> Date: Tue, 18 Feb 2025 14:44:50 +0800 Subject: [PATCH] fix: Adjust segment loader's memory estimate for intermin indexes (#39507) issue: https://github.com/milvus-io/milvus/issues/27678 related 2.4 pr: https://github.com/milvus-io/milvus/pull/39508 related 2.5 pr: https://github.com/milvus-io/milvus/pull/39509 related master pr: https://github.com/milvus-io/milvus/pull/39507 Signed-off-by: cqy123456 --- internal/querynodev2/segments/segment_loader.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/internal/querynodev2/segments/segment_loader.go b/internal/querynodev2/segments/segment_loader.go index b0916c6ee1..fed43d53ce 100644 --- a/internal/querynodev2/segments/segment_loader.go +++ b/internal/querynodev2/segments/segment_loader.go @@ -1536,6 +1536,11 @@ func getResourceUsageEstimateOfSegment(schema *schemapb.CollectionSchema, loadIn } } else { shouldCalculateDataSize = true + // querynode will generate a (memory type) intermin index for vector type + interimIndexEnable := multiplyFactor.enableTempSegmentIndex && !isGrowingMmapEnable() && SupportInterimIndexDataType(fieldSchema.GetDataType()) + if interimIndexEnable { + segmentMemorySize += uint64(float64(binlogSize) * multiplyFactor.tempSegmentIndexFactor) + } } if shouldCalculateDataSize { @@ -1550,11 +1555,6 @@ func getResourceUsageEstimateOfSegment(schema *schemapb.CollectionSchema, loadIn } else { segmentDiskSize += uint64(getBinlogDataDiskSize(fieldBinlog)) } - // querynode will generate a (memory type) intermin index for vector type - interimIndexEnable := multiplyFactor.enableTempSegmentIndex && !isGrowingMmapEnable() && SupportInterimIndexDataType(fieldSchema.GetDataType()) - if interimIndexEnable { - segmentMemorySize += uint64(float64(binlogSize) * multiplyFactor.tempSegmentIndexFactor) - } } if mmapEnabled {