TopFieldCollector
instead of using this class.@Deprecated public class EarlyTerminatingSortingCollector extends FilterCollector
Collector
that early terminates collection of documents on a
per-segment basis, if the segment was sorted according to the given
Sort
.
NOTE: the Collector
detects segments sorted according to a
an IndexWriterConfig.setIndexSort(org.apache.lucene.search.Sort)
. Also, it collects up to a specified
numDocsToCollect
from each segment, and therefore is mostly suitable
for use in conjunction with collectors such as TopDocsCollector
, and
not e.g. TotalHitCountCollector
.
NOTE: If you wrap a TopDocsCollector
that sorts in the same
order as the index order, the returned TopDocs
will be correct. However the total of hit count
will be vastly underestimated since not all matching documents will have
been collected.
Modifier and Type | Field and Description |
---|---|
protected int |
numDocsToCollect
Deprecated.
Number of documents to collect in each segment
|
protected Sort |
sort
Deprecated.
Sort used to sort the search results
|
in
Constructor and Description |
---|
EarlyTerminatingSortingCollector(Collector in,
Sort sort,
int numDocsToCollect)
Deprecated.
Create a new
EarlyTerminatingSortingCollector instance. |
Modifier and Type | Method and Description |
---|---|
static boolean |
canEarlyTerminate(Sort searchSort,
Sort mergePolicySort)
Deprecated.
|
LeafCollector |
getLeafCollector(LeafReaderContext context)
Deprecated.
Create a new
collector to collect the given context. |
boolean |
terminatedEarly()
Deprecated.
|
needsScores, toString
protected final Sort sort
protected final int numDocsToCollect
public EarlyTerminatingSortingCollector(Collector in, Sort sort, int numDocsToCollect)
EarlyTerminatingSortingCollector
instance.in
- the collector to wrapsort
- the sort you are sorting the search results onnumDocsToCollect
- the number of documents to collect on each segment. When wrapping
a TopDocsCollector
, this number should be the number of
hits.IllegalArgumentException
- if the sort order doesn't allow for early
termination with the given merge policy.public static boolean canEarlyTerminate(Sort searchSort, Sort mergePolicySort)
public LeafCollector getLeafCollector(LeafReaderContext context) throws IOException
Collector
collector
to collect the given context.getLeafCollector
in interface Collector
getLeafCollector
in class FilterCollector
context
- next atomic reader contextIOException
public boolean terminatedEarly()
Copyright © 2000-2018 Apache Software Foundation. All Rights Reserved.