Package org.apache.lucene.index
Class SortedDocValuesWriter
- java.lang.Object
-
- org.apache.lucene.index.DocValuesWriter
-
- org.apache.lucene.index.SortedDocValuesWriter
-
class SortedDocValuesWriter extends DocValuesWriter
Buffers up pending byte[] per doc, deref and sorting via int ord, then flushes when segment flushes.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
SortedDocValuesWriter.BufferedSortedDocValues
-
Field Summary
Fields Modifier and Type Field Description private long
bytesUsed
private DocsWithFieldSet
docsWithField
private FieldInfo
fieldInfo
private int[]
finalOrdMap
private PackedLongValues
finalOrds
private int[]
finalSortedValues
(package private) BytesRefHash
hash
private Counter
iwBytesUsed
private int
lastDocID
private PackedLongValues.Builder
pending
-
Constructor Summary
Constructors Constructor Description SortedDocValuesWriter(FieldInfo fieldInfo, Counter iwBytesUsed)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addOneValue(BytesRef value)
void
addValue(int docID, BytesRef value)
void
finish(int maxDoc)
void
flush(SegmentWriteState state, Sorter.DocMap sortMap, DocValuesConsumer dvConsumer)
(package private) Sorter.DocComparator
getDocComparator(int maxDoc, SortField sortField)
(package private) DocIdSetIterator
getDocIdSet()
private int[]
sortDocValues(int maxDoc, Sorter.DocMap sortMap, SortedDocValues oldValues)
private void
updateBytesUsed()
-
-
-
Field Detail
-
hash
final BytesRefHash hash
-
pending
private PackedLongValues.Builder pending
-
docsWithField
private DocsWithFieldSet docsWithField
-
iwBytesUsed
private final Counter iwBytesUsed
-
bytesUsed
private long bytesUsed
-
fieldInfo
private final FieldInfo fieldInfo
-
lastDocID
private int lastDocID
-
finalOrds
private PackedLongValues finalOrds
-
finalSortedValues
private int[] finalSortedValues
-
finalOrdMap
private int[] finalOrdMap
-
-
Method Detail
-
addValue
public void addValue(int docID, BytesRef value)
-
finish
public void finish(int maxDoc)
- Specified by:
finish
in classDocValuesWriter
-
addOneValue
private void addOneValue(BytesRef value)
-
updateBytesUsed
private void updateBytesUsed()
-
getDocComparator
Sorter.DocComparator getDocComparator(int maxDoc, SortField sortField) throws java.io.IOException
- Specified by:
getDocComparator
in classDocValuesWriter
- Throws:
java.io.IOException
-
sortDocValues
private int[] sortDocValues(int maxDoc, Sorter.DocMap sortMap, SortedDocValues oldValues) throws java.io.IOException
- Throws:
java.io.IOException
-
flush
public void flush(SegmentWriteState state, Sorter.DocMap sortMap, DocValuesConsumer dvConsumer) throws java.io.IOException
- Specified by:
flush
in classDocValuesWriter
- Throws:
java.io.IOException
-
getDocIdSet
DocIdSetIterator getDocIdSet()
- Specified by:
getDocIdSet
in classDocValuesWriter
-
-