diff --git a/src/query/doc_predicate_query/mod.rs b/src/query/doc_predicate_query/mod.rs index 7a4636b53..9c645fbc9 100644 --- a/src/query/doc_predicate_query/mod.rs +++ b/src/query/doc_predicate_query/mod.rs @@ -106,6 +106,12 @@ impl DocPredicateDocSet= TERMINATED { + if doc_set.necessary_condition.doc() < TERMINATED { + doc_set.necessary_condition.seek(TERMINATED); + } + return (SeekDangerResult::SeekLowerBound(TERMINATED), doc_set); + } let seek_result = match first_candidate.cmp(&target) { Ordering::Less => doc_set.seek_danger(target), Ordering::Equal => doc_set.eval_candidate(target),