[ https://issues.apache.org/jira/browse/LUCENE-10674?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jack Mazanec updated LUCENE-10674: ---------------------------------- Description: In [BitSetConjunctionDISI.doNext()|https://github.com/apache/lucene/blob/releases/lucene/9.3.0/lucene/core/src/java/org/apache/lucene/search/ConjunctionDISI.java#L283-L285] if the lead doc is greater than or equal to the length of any of the BitSets, NO_MORE_DOCS is returned. On subsequent calls to [BitSetConjunctionDISI.docId()|[https://github.com/apache/lucene/blob/releases/lucene/9.3.0/lucene/core/src/java/org/apache/lucene/search/ConjunctionDISI.java#L263]], the lead's docID which is not exhausted will be returned. I think this could be fixed by calling lead.advance(NO_MORE_DOCS) before returning NO_MORE_DOCS in doNext. Related issue: https://issues.apache.org/jira/browse/LUCENE-9541 was: In [BitSetConjunctionDISI.doNext()|https://github.com/apache/lucene/blob/releases/lucene/9.3.0/lucene/core/src/java/org/apache/lucene/search/ConjunctionDISI.java#L283-L285] if the lead doc is greater than or equal to the length of any of the BitSets, NO_MORE_DOCS is returned. On subsequent calls to [BitSetConjunctionDISI.docId()]([https://github.com/apache/lucene/blob/releases/lucene/9.3.0/lucene/core/src/java/org/apache/lucene/search/ConjunctionDISI.java#L263]), the lead's docID which is not exhausted will be returned. I think this could be fixed by calling lead.advance(NO_MORE_DOCS) before returning NO_MORE_DOCS in doNext. Related issue: https://issues.apache.org/jira/browse/LUCENE-9541 > BitSetConjunctionDISI iterators fall out of sync when lead doc >= minlength > of bitsets > -------------------------------------------------------------------------------------- > > Key: LUCENE-10674 > URL: https://issues.apache.org/jira/browse/LUCENE-10674 > Project: Lucene - Core > Issue Type: Bug > Components: core/search > Affects Versions: 9.0, 9.1, 9.2, 9.3 > Reporter: Jack Mazanec > Priority: Minor > > In > [BitSetConjunctionDISI.doNext()|https://github.com/apache/lucene/blob/releases/lucene/9.3.0/lucene/core/src/java/org/apache/lucene/search/ConjunctionDISI.java#L283-L285] > if the lead doc is greater than or equal to the length of any of the > BitSets, NO_MORE_DOCS is returned. On subsequent calls to > [BitSetConjunctionDISI.docId()|[https://github.com/apache/lucene/blob/releases/lucene/9.3.0/lucene/core/src/java/org/apache/lucene/search/ConjunctionDISI.java#L263]], > the lead's docID which is not exhausted will be returned. I think this could > be fixed by calling lead.advance(NO_MORE_DOCS) before returning NO_MORE_DOCS > in doNext. > > Related issue: https://issues.apache.org/jira/browse/LUCENE-9541 -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org