Module org.apache.lucene.codecs
Package org.apache.lucene.codecs.bloom
Class BloomFilteringPostingsFormat.BloomFilteredFieldsConsumer
java.lang.Object
org.apache.lucene.codecs.FieldsConsumer
org.apache.lucene.codecs.bloom.BloomFilteringPostingsFormat.BloomFilteredFieldsConsumer
- All Implemented Interfaces:
Closeable,AutoCloseable
- Enclosing class:
BloomFilteringPostingsFormat
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleanprivate FieldsConsumerprivate SegmentWriteState -
Constructor Summary
ConstructorsConstructorDescriptionBloomFilteredFieldsConsumer(FieldsConsumer fieldsConsumer, SegmentWriteState state) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()private voidsaveAppropriatelySizedBloomFilter(IndexOutput bloomOutput, FuzzySet bloomFilter, FieldInfo fieldInfo) voidwrite(Fields fields, NormsProducer norms) Write all fields, terms and postings.Methods inherited from class org.apache.lucene.codecs.FieldsConsumer
merge
-
Field Details
-
delegateFieldsConsumer
-
bloomFilters
-
state
-
closed
private boolean closed
-
-
Constructor Details
-
BloomFilteredFieldsConsumer
-
-
Method Details
-
write
Description copied from class:FieldsConsumerWrite all fields, terms and postings. This the "pull" API, allowing you to iterate more than once over the postings, somewhat analogous to using a DOM API to traverse an XML tree.Notes:
- You must compute index statistics, including each Term's docFreq and totalTermFreq, as well as the summary sumTotalTermFreq, sumTotalDocFreq and docCount.
- You must skip terms that have no docs and fields that have no terms, even though the provided Fields API will expose them; this typically requires lazily writing the field or term until you've actually seen the first term or document.
- The provided Fields instance is limited: you cannot call any methods that return statistics/counts; you cannot pass a non-null live docs when pulling docs/positions enums.
- Specified by:
writein classFieldsConsumer- Throws:
IOException
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein classFieldsConsumer- Throws:
IOException
-
saveAppropriatelySizedBloomFilter
private void saveAppropriatelySizedBloomFilter(IndexOutput bloomOutput, FuzzySet bloomFilter, FieldInfo fieldInfo) throws IOException - Throws:
IOException
-