Package org.apache.lucene.search
Class DocValuesRangeIterator
java.lang.Object
org.apache.lucene.search.TwoPhaseIterator
org.apache.lucene.search.DocValuesRangeIterator
Wrapper around a
TwoPhaseIterator for a doc-values range query that speeds things up by
taking advantage of a DocValuesSkipper.- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
Constructor Summary
ConstructorsConstructorDescriptionDocValuesRangeIterator(TwoPhaseIterator twoPhase, DocValuesSkipper skipper, long lowerValue, long upperValue, boolean queryRangeHasGaps) -
Method Summary
Modifier and TypeMethodDescriptionintReturns the end of the run of consecutive doc IDs that match thisTwoPhaseIteratorand that contains the current doc ID of the approximation, that is: one plus the last doc ID of the run.floatAn estimate of the expected cost to determine that a single documentTwoPhaseIterator.matches().final booleanmatches()Return whether the current doc ID thatTwoPhaseIterator.approximation()is on matches.Methods inherited from class org.apache.lucene.search.TwoPhaseIterator
approximation, asDocIdSetIterator, unwrap
-
Constructor Details
-
DocValuesRangeIterator
public DocValuesRangeIterator(TwoPhaseIterator twoPhase, DocValuesSkipper skipper, long lowerValue, long upperValue, boolean queryRangeHasGaps)
-
-
Method Details
-
matches
Description copied from class:TwoPhaseIteratorReturn whether the current doc ID thatTwoPhaseIterator.approximation()is on matches. This method should only be called when the iterator is positioned -- ie. not whenDocIdSetIterator.docID()is-1orDocIdSetIterator.NO_MORE_DOCS-- and at most once.- Specified by:
matchesin classTwoPhaseIterator- Throws:
IOException
-
docIDRunEnd
Description copied from class:TwoPhaseIteratorReturns the end of the run of consecutive doc IDs that match thisTwoPhaseIteratorand that contains the current doc ID of the approximation, that is: one plus the last doc ID of the run.Note: It is illegal to call this method when the approximation is exhausted or not positioned.
The default implementation returns the current doc ID of the approximation.
- Overrides:
docIDRunEndin classTwoPhaseIterator- Throws:
IOException
-
matchCost
public float matchCost()Description copied from class:TwoPhaseIteratorAn estimate of the expected cost to determine that a single documentTwoPhaseIterator.matches(). This can be called before iterating the documents ofTwoPhaseIterator.approximation(). Returns an expected cost in number of simple operations like addition, multiplication, comparing two numbers and indexing an array. The returned value must be positive.- Specified by:
matchCostin classTwoPhaseIterator
-