Skip to content

Commit

Permalink
Use DocIdSetIterator#range for continuous-id BKD leaves (#14272)
Browse files Browse the repository at this point in the history
  • Loading branch information
gf2121 authored Feb 24, 2025
1 parent d3ce401 commit 27cf1e1
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 7 deletions.
4 changes: 3 additions & 1 deletion lucene/CHANGES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -129,10 +129,12 @@ Optimizations
* GITHUB#14193: Add Automata.makeCharSet() and makeCharClass() that return minimal DFA
for lists of characters and ranges. Use them in RegExp parser. (Robert Muir)

* GITHUB#14176: Reduce when visiting bpv24-encoded doc ids in BKD leaves. (Guo Feng)
* GITHUB#14176: Reduce virtual call when visiting bpv24-encoded doc ids in BKD leaves. (Guo Feng)

* GITHUB#14269: Implement #intoBitset for DocIdSetIterator#all and DocIdSetIterator#range. (Guo Feng)

* GITHUB#14272: Use DocIdSetIterator#range for continuous-id BKD leaves. (Guo Feng)

Bug Fixes
---------------------

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -324,12 +324,7 @@ private void readBitSet(IndexInput in, int count, IntersectVisitor visitor) thro
private static void readContinuousIds(IndexInput in, int count, IntersectVisitor visitor)
throws IOException {
int start = in.readVInt();
int extra = start & 63;
int offset = start - extra;
int numBits = count + extra;
FixedBitSet bitSet = new FixedBitSet(numBits);
bitSet.set(extra, numBits);
visitor.visit(new DocBaseBitSetIterator(bitSet, count, offset));
visitor.visit(DocIdSetIterator.range(start, start + count));
}

private static void readLegacyDeltaVInts(IndexInput in, int count, IntersectVisitor visitor)
Expand Down

0 comments on commit 27cf1e1

Please sign in to comment.