Weiming Wu created LUCENE-10624:
-----------------------------------

             Summary: Binary Search for Sparse IndexedDISI advanceWithinBlock & 
advanceExactWithinBlock
                 Key: LUCENE-10624
                 URL: https://issues.apache.org/jira/browse/LUCENE-10624
             Project: Lucene - Core
          Issue Type: Improvement
          Components: core/codecs
    Affects Versions: 9.2, 9.1, 9.0
            Reporter: Weiming Wu


h3. Problem Statement

We noticed DocValue read performance regression with the iterative API when 
upgrading from Lucene 5 to Lucene 9. Our latency is increased by 50%. The 
degradation is similar to what's described in 
https://issues.apache.org/jira/browse/SOLR-9599 


By analyzing profiling data, we found method "advanceWithinBlock" and 
"advanceExactWithinBlock" for Sparse IndexedDISI is slow in Lucene 9 due to 
their O(N) doc lookup algorithm. 
h3. Changes

Used binary search algorithm to replace current O(N) lookup algorithm in Sparse 
IndexedDISI "advanceWithinBlock" and "advanceExactWithinBlock" because docs are 
in ascending order.
h3. Test
{code:java}
./gradlew tidy
./gradlew check {code}
 



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to