- java.lang.Object
-
- org.apache.lucene.util.bkd.DocIdsWriter
-
final class DocIdsWriter extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private static byte
BITSET_IDS
private static byte
BPV_24
private static byte
BPV_32
private static byte
CONTINUOUS_IDS
private static byte
DELTA_BPV_16
private static byte
LEGACY_DELTA_VINT
private int[]
scratch
private IntsRef
scratchIntsRef
IntsRef to be used to iterate over the scratch buffer.
-
Constructor Summary
Constructors Constructor Description DocIdsWriter(int maxPointsInLeaf)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static void
readBitSet(IndexInput in, int count, int[] docIDs)
private static void
readBitSet(IndexInput in, int count, PointValues.IntersectVisitor visitor)
private static DocIdSetIterator
readBitSetIterator(IndexInput in, int count)
private static void
readContinuousIds(IndexInput in, int count, int[] docIDs)
private static void
readContinuousIds(IndexInput in, int count, PointValues.IntersectVisitor visitor)
private static void
readDelta16(IndexInput in, int count, int[] docIDs)
private void
readDelta16(IndexInput in, int count, PointValues.IntersectVisitor visitor)
(package private) void
readInts(IndexInput in, int count, int[] docIDs)
Readcount
integers intodocIDs
.(package private) void
readInts(IndexInput in, int count, PointValues.IntersectVisitor visitor)
Readcount
integers and feed the result directly toPointValues.IntersectVisitor.visit(int)
.private static void
readInts24(IndexInput in, int count, int[] docIDs)
private static void
readInts24(IndexInput in, int count, PointValues.IntersectVisitor visitor)
private static void
readInts32(IndexInput in, int count, int[] docIDs)
private void
readInts32(IndexInput in, int count, PointValues.IntersectVisitor visitor)
private static void
readLegacyDeltaVInts(IndexInput in, int count, int[] docIDs)
private static void
readLegacyDeltaVInts(IndexInput in, int count, PointValues.IntersectVisitor visitor)
(package private) void
writeDocIds(int[] docIds, int start, int count, DataOutput out)
private static void
writeIdsAsBitSet(int[] docIds, int start, int count, DataOutput out)
-
-
-
Field Detail
-
CONTINUOUS_IDS
private static final byte CONTINUOUS_IDS
- See Also:
- Constant Field Values
-
BITSET_IDS
private static final byte BITSET_IDS
- See Also:
- Constant Field Values
-
DELTA_BPV_16
private static final byte DELTA_BPV_16
- See Also:
- Constant Field Values
-
BPV_24
private static final byte BPV_24
- See Also:
- Constant Field Values
-
BPV_32
private static final byte BPV_32
- See Also:
- Constant Field Values
-
LEGACY_DELTA_VINT
private static final byte LEGACY_DELTA_VINT
- See Also:
- Constant Field Values
-
scratch
private final int[] scratch
-
scratchIntsRef
private final IntsRef scratchIntsRef
IntsRef to be used to iterate over the scratch buffer. A single instance is reused to avoid re-allocating the object. The ints and length fields need to be reset each use.The main reason for existing is to be able to call the
PointValues.IntersectVisitor.visit(IntsRef)
method rather than thePointValues.IntersectVisitor.visit(int)
method. This seems to make a difference in performance, probably due to fewer virtual calls then happening (once per read call rather than once per doc).
-
-
Method Detail
-
writeDocIds
void writeDocIds(int[] docIds, int start, int count, DataOutput out) throws java.io.IOException
- Throws:
java.io.IOException
-
writeIdsAsBitSet
private static void writeIdsAsBitSet(int[] docIds, int start, int count, DataOutput out) throws java.io.IOException
- Throws:
java.io.IOException
-
readInts
void readInts(IndexInput in, int count, int[] docIDs) throws java.io.IOException
Readcount
integers intodocIDs
.- Throws:
java.io.IOException
-
readBitSetIterator
private static DocIdSetIterator readBitSetIterator(IndexInput in, int count) throws java.io.IOException
- Throws:
java.io.IOException
-
readContinuousIds
private static void readContinuousIds(IndexInput in, int count, int[] docIDs) throws java.io.IOException
- Throws:
java.io.IOException
-
readLegacyDeltaVInts
private static void readLegacyDeltaVInts(IndexInput in, int count, int[] docIDs) throws java.io.IOException
- Throws:
java.io.IOException
-
readBitSet
private static void readBitSet(IndexInput in, int count, int[] docIDs) throws java.io.IOException
- Throws:
java.io.IOException
-
readDelta16
private static void readDelta16(IndexInput in, int count, int[] docIDs) throws java.io.IOException
- Throws:
java.io.IOException
-
readInts24
private static void readInts24(IndexInput in, int count, int[] docIDs) throws java.io.IOException
- Throws:
java.io.IOException
-
readInts32
private static void readInts32(IndexInput in, int count, int[] docIDs) throws java.io.IOException
- Throws:
java.io.IOException
-
readInts
void readInts(IndexInput in, int count, PointValues.IntersectVisitor visitor) throws java.io.IOException
Readcount
integers and feed the result directly toPointValues.IntersectVisitor.visit(int)
.- Throws:
java.io.IOException
-
readBitSet
private static void readBitSet(IndexInput in, int count, PointValues.IntersectVisitor visitor) throws java.io.IOException
- Throws:
java.io.IOException
-
readContinuousIds
private static void readContinuousIds(IndexInput in, int count, PointValues.IntersectVisitor visitor) throws java.io.IOException
- Throws:
java.io.IOException
-
readLegacyDeltaVInts
private static void readLegacyDeltaVInts(IndexInput in, int count, PointValues.IntersectVisitor visitor) throws java.io.IOException
- Throws:
java.io.IOException
-
readDelta16
private void readDelta16(IndexInput in, int count, PointValues.IntersectVisitor visitor) throws java.io.IOException
- Throws:
java.io.IOException
-
readInts24
private static void readInts24(IndexInput in, int count, PointValues.IntersectVisitor visitor) throws java.io.IOException
- Throws:
java.io.IOException
-
readInts32
private void readInts32(IndexInput in, int count, PointValues.IntersectVisitor visitor) throws java.io.IOException
- Throws:
java.io.IOException
-
-