enhance: add warn log if some segment's bm25 stats lacks (#43111)

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
This commit is contained in:
aoiasd 2025-07-09 23:22:47 +08:00 committed by GitHub
parent 95e767611a
commit 97b1c3ed96
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 11 additions and 0 deletions

View File

@ -463,6 +463,9 @@ func (o *idfOracle) SyncDistribution() error {
if segment.TargetVersion == snapshot.targetVersion {
sealedMap[segment.SegmentID] = true
if !o.sealed.Contain(segment.SegmentID) {
log.Warn("idf oracle lack some sealed segment", zap.Int64("segment", segment.SegmentID))
}
} else if segment.TargetVersion == unreadableTargetVersion {
sealedMap[segment.SegmentID] = false
}

View File

@ -154,6 +154,14 @@ func (suite *IDFOracleSuite) TestSealed() {
suite.NoError(err)
suite.Equal(float64(1), avgdl)
suite.Equal(map[uint32]float32{4: 0.2876821}, typeutil.SparseFloatBytesToMap(bytes[0]))
// reload released segment and some sealed segment stats will not found
// should not happened
// will warn but not panic
suite.updateSnapshot(releasedSeg, []int64{}, []int64{})
suite.idfOracle.SetNext(suite.snapshot)
suite.waitTargetVersion(suite.targetVersion)
suite.Equal(int64(1), suite.idfOracle.current.NumRow())
}
func (suite *IDFOracleSuite) TestGrow() {