public abstract class SecondaryIndexSearcher
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
protected ColumnFamilyStore |
baseCfs |
protected java.util.Set<java.nio.ByteBuffer> |
columns |
protected SecondaryIndexManager |
indexManager |
| Constructor and Description |
|---|
SecondaryIndexSearcher(SecondaryIndexManager indexManager,
java.util.Set<java.nio.ByteBuffer> columns) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canHandleIndexClause(java.util.List<IndexExpression> clause) |
SecondaryIndex |
highestSelectivityIndex(java.util.List<IndexExpression> clause) |
protected IndexExpression |
highestSelectivityPredicate(java.util.List<IndexExpression> clause,
boolean includeInTrace) |
java.util.List<Row> |
postReconciliationProcessing(java.util.List<IndexExpression> clause,
java.util.List<Row> rows)
Combines index query results from multiple nodes.
|
boolean |
requiresScanningAllRanges(java.util.List<IndexExpression> clause)
Returns
true if the specified list of IndexExpressions require a full scan of all the nodes. |
abstract java.util.List<Row> |
search(ExtendedFilter filter) |
void |
validate(IndexExpression indexExpression)
Validates the specified
IndexExpression. |
protected final SecondaryIndexManager indexManager
protected final java.util.Set<java.nio.ByteBuffer> columns
protected final ColumnFamilyStore baseCfs
public SecondaryIndexSearcher(SecondaryIndexManager indexManager, java.util.Set<java.nio.ByteBuffer> columns)
public SecondaryIndex highestSelectivityIndex(java.util.List<IndexExpression> clause)
public abstract java.util.List<Row> search(ExtendedFilter filter)
public boolean canHandleIndexClause(java.util.List<IndexExpression> clause)
public void validate(IndexExpression indexExpression) throws InvalidRequestException
IndexExpression. It will throw an InvalidRequestException
if the provided clause is not valid for the index implementation.indexExpression - An IndexExpression to be validatedInvalidRequestException - in case of validation errorsprotected IndexExpression highestSelectivityPredicate(java.util.List<IndexExpression> clause, boolean includeInTrace)
public boolean requiresScanningAllRanges(java.util.List<IndexExpression> clause)
true if the specified list of IndexExpressions require a full scan of all the nodes.clause - A list of IndexExpressionstrue if the IndexExpressions require a full scan, false otherwisepublic java.util.List<Row> postReconciliationProcessing(java.util.List<IndexExpression> clause, java.util.List<Row> rows)
clause - A list of IndexExpressionsrows - The index query results to be combinedCopyright © 2018 The Apache Software Foundation