You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(bm25): store TF/doclen in facets and fix query pipeline integration
Three critical bugs fixed:
1. REF postings lose Value during rollup: The posting list encode/rollup
cycle strips the Value field from REF postings without facets (list.go:1630).
BM25 term frequencies and doc lengths were stored in Value and lost.
Fix: Store TF and doclen as facets on REF postings, which are preserved.
2. Missing function validation: query/query.go has a separate isValidFuncName
check from dql/parser.go. "bm25" was only added to the parser, causing
"Invalid function name: bm25" at query time.
3. Unsorted UIDs break query pipeline: BM25 returned UIDs sorted by score,
but the query pipeline (algo.MergeSorted, child predicate fetching) requires
UID-ascending order. Fix: Sort UIDs ascending in UidMatrix, apply
first/offset pagination on score-sorted results before UID sorting.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
0 commit comments