Module org.apache.lucene.misc
Package org.apache.lucene.misc.index
Class BPIndexReorderer.ForwardIndexSorter
- java.lang.Object
-
- org.apache.lucene.misc.index.BPIndexReorderer.ForwardIndexSorter
-
- Enclosing class:
- BPIndexReorderer
static class BPIndexReorderer.ForwardIndexSorter extends java.lang.Object
Use a LSB Radix Sorter to sort the (docID, termID) entries. We only need to compare docIds because LSB Radix Sorter is stable and termIDs already sorted.This sorter will require at least 16MB (
BUFFER_BYTES
*HISTOGRAM_SIZE
) RAM.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
BPIndexReorderer.ForwardIndexSorter.Bucket
-
Field Summary
Fields Modifier and Type Field Description private BPIndexReorderer.ForwardIndexSorter.Bucket[]
buckets
private static int
BUFFER_BYTES
private static int
BUFFER_SIZE
private Directory
directory
private static int
HISTOGRAM_SIZE
-
Constructor Summary
Constructors Constructor Description ForwardIndexSorter(Directory directory)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
consume(java.lang.String fileName, long indexFP, BPIndexReorderer.LongConsumer consumer)
private void
consume(java.lang.String fileName, BPIndexReorderer.LongConsumer consumer)
private BPIndexReorderer.LongConsumer
consumer(int shift)
private static long
decode(long fpDelta)
private static long
encode(long fpDelta)
(package private) void
sortAndConsume(java.lang.String fileName, int maxDoc, BPIndexReorderer.LongConsumer consumer)
-
-
-
Field Detail
-
HISTOGRAM_SIZE
private static final int HISTOGRAM_SIZE
- See Also:
- Constant Field Values
-
BUFFER_SIZE
private static final int BUFFER_SIZE
- See Also:
- Constant Field Values
-
BUFFER_BYTES
private static final int BUFFER_BYTES
- See Also:
- Constant Field Values
-
directory
private final Directory directory
-
buckets
private final BPIndexReorderer.ForwardIndexSorter.Bucket[] buckets
-
-
Constructor Detail
-
ForwardIndexSorter
ForwardIndexSorter(Directory directory)
-
-
Method Detail
-
encode
private static long encode(long fpDelta)
-
decode
private static long decode(long fpDelta)
-
consume
private void consume(java.lang.String fileName, BPIndexReorderer.LongConsumer consumer) throws java.io.IOException
- Throws:
java.io.IOException
-
consume
private void consume(java.lang.String fileName, long indexFP, BPIndexReorderer.LongConsumer consumer) throws java.io.IOException
- Throws:
java.io.IOException
-
consumer
private BPIndexReorderer.LongConsumer consumer(int shift)
-
sortAndConsume
void sortAndConsume(java.lang.String fileName, int maxDoc, BPIndexReorderer.LongConsumer consumer) throws java.io.IOException
- Throws:
java.io.IOException
-
-