public abstract class AbstractIndexCollection extends Object implements IndexCollection, Iterable<IndexDescriptor>
IndexCollection.IndexCollectionType
Modifier and Type | Field and Description |
---|---|
protected List<IndexDescriptor> |
indexes
A set of indexes for a particular table
|
Constructor and Description |
---|
AbstractIndexCollection() |
Modifier and Type | Method and Description |
---|---|
boolean |
addIndex(IndexDescriptor index)
Add a new index to the collection.
|
void |
clearAll()
Clears all entries from this index collection
|
double |
getRows(org.apache.calcite.rex.RexNode indexCondition)
Get the estimated row count for a single index condition
|
boolean |
isColumnIndexed(SchemaPath path)
Check if the field name is the leading key of any of the indexes in this collection
|
Iterator<IndexDescriptor> |
iterator() |
boolean |
removeIndex(IndexDescriptor index)
Remove an index (identified by table name and index name) from the collection.
|
boolean |
supportsFullTextSearch()
Whether or not the index supports full-text search (to allow pushing down such filters)
|
boolean |
supportsIndexSelection()
Whether or not this index collection supports index selection (selecting an
appropriate index out of multiple candidates).
|
boolean |
supportsRowCountStats()
Whether or not the index supports getting row count statistics
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getGroupScan, getIndexCollectionType
forEach, spliterator
protected List<IndexDescriptor> indexes
public boolean addIndex(IndexDescriptor index)
IndexCollection
addIndex
in interface IndexCollection
public boolean removeIndex(IndexDescriptor index)
IndexCollection
removeIndex
in interface IndexCollection
public void clearAll()
IndexCollection
clearAll
in interface IndexCollection
public boolean supportsIndexSelection()
IndexCollection
supportsIndexSelection
in interface IndexCollection
public double getRows(org.apache.calcite.rex.RexNode indexCondition)
IndexCollection
getRows
in interface IndexCollection
indexCondition
- The index condition (e.g index_col1 < 10 AND index_col2 = 'abc')public boolean supportsRowCountStats()
IndexCollection
supportsRowCountStats
in interface IndexCollection
public boolean supportsFullTextSearch()
IndexCollection
supportsFullTextSearch
in interface IndexCollection
public boolean isColumnIndexed(SchemaPath path)
IndexCollection
isColumnIndexed
in interface IndexCollection
public Iterator<IndexDescriptor> iterator()
iterator
in interface Iterable<IndexDescriptor>
Copyright © 1970 The Apache Software Foundation. All rights reserved.