public static class FilteredQuery.RandomAccessFilterStrategy extends FilteredQuery.FilterStrategy
FilteredQuery.FilterStrategy
that conditionally uses a random access filter if
the given DocIdSet
supports random access (returns a non-null value
from DocIdSet.bits()
) and
useRandomAccess(Bits, long)
returns
true
. Otherwise this strategy falls back to a "zig-zag join" (
FilteredQuery.LEAP_FROG_FILTER_FIRST_STRATEGY
) strategy .Constructor and Description |
---|
FilteredQuery.RandomAccessFilterStrategy() |
Modifier and Type | Method and Description |
---|---|
Query |
rewrite(Filter filter)
Rewrite the filter.
|
protected boolean |
useRandomAccess(Bits bits,
long filterCost)
Expert: decides if a filter should be executed as "random-access" or not.
|
public FilteredQuery.RandomAccessFilterStrategy()
public Query rewrite(Filter filter)
FilteredQuery.FilterStrategy
rewrite
in class FilteredQuery.FilterStrategy
protected boolean useRandomAccess(Bits bits, long filterCost)
true
if the filter matches more than 1%
of documentsCopyright © 2000-2015 Apache Software Foundation. All Rights Reserved.