public abstract class AbstractSimplePerColumnSecondaryIndex extends PerColumnSecondaryIndex
| Modifier and Type | Field and Description |
|---|---|
protected ColumnDefinition |
columnDef |
protected ColumnFamilyStore |
indexCfs |
baseCfs, columnDefs, CUSTOM_INDEX_OPTION_NAME, INDEX_ENTRIES_OPTION_NAME, INDEX_KEYS_OPTION_NAME, INDEX_VALUES_OPTION_NAME, keyComparator, logger| Constructor and Description |
|---|
AbstractSimplePerColumnSecondaryIndex() |
| Modifier and Type | Method and Description |
|---|---|
void |
delete(java.nio.ByteBuffer rowKey,
Cell cell,
OpOrder.Group opGroup)
Called when a column has been tombstoned or replaced.
|
void |
deleteForCleanup(java.nio.ByteBuffer rowKey,
Cell cell,
OpOrder.Group opGroup)
Called when a column has been removed due to a cleanup operation.
|
long |
estimateResultRows() |
java.lang.String |
expressionString(IndexExpression expr) |
void |
forceBlockingFlush()
Forces this indexes' in memory data to disk
|
protected abstract AbstractType |
getExpressionComparator() |
ColumnFamilyStore |
getIndexCfs()
Allow access to the underlying column family store if there is one
|
protected abstract java.nio.ByteBuffer |
getIndexedValue(java.nio.ByteBuffer rowKey,
Cell cell) |
protected AbstractType<?> |
getIndexKeyComparator() |
java.lang.String |
getIndexName() |
void |
init()
Perform any initialization work
|
void |
insert(java.nio.ByteBuffer rowKey,
Cell cell,
OpOrder.Group opGroup)
insert a column to the index
|
void |
invalidate()
Remove the index and unregisters this index's mbean if one exists
|
protected abstract CellName |
makeIndexColumnName(java.nio.ByteBuffer rowKey,
Cell cell) |
void |
reload()
Reload an existing index following a change to its configuration,
or that of the indexed column(s).
|
void |
removeIndex(java.nio.ByteBuffer columnName)
Delete all files and references to this index
|
void |
truncateBlocking(long truncatedAt)
Truncate all the data from the current index
|
void |
update(java.nio.ByteBuffer rowKey,
Cell oldCol,
Cell col,
OpOrder.Group opGroup)
update a column from the index
|
boolean |
validate(java.nio.ByteBuffer rowKey,
Cell cell) |
getNameForSystemKeyspace, validatebuildIndexAsync, buildIndexBlocking, createInstance, createSecondaryIndexSearcher, getBaseCfs, getColumnDefs, getIndexComparator, getIndexKeyFor, indexes, indexes, isIndexBuilt, isQueryable, setIndexBuilt, setIndexRemoved, supportsOperator, toString, validateOptionsprotected ColumnFamilyStore indexCfs
protected ColumnDefinition columnDef
public AbstractSimplePerColumnSecondaryIndex()
public void init()
SecondaryIndexinit in class SecondaryIndexprotected AbstractType<?> getIndexKeyComparator()
protected abstract CellName makeIndexColumnName(java.nio.ByteBuffer rowKey, Cell cell)
protected abstract java.nio.ByteBuffer getIndexedValue(java.nio.ByteBuffer rowKey,
Cell cell)
protected abstract AbstractType getExpressionComparator()
public java.lang.String expressionString(IndexExpression expr)
public void delete(java.nio.ByteBuffer rowKey,
Cell cell,
OpOrder.Group opGroup)
PerColumnSecondaryIndexdelete in class PerColumnSecondaryIndexrowKey - the underlying row key which is indexedcell - all the column infopublic void deleteForCleanup(java.nio.ByteBuffer rowKey,
Cell cell,
OpOrder.Group opGroup)
PerColumnSecondaryIndexdeleteForCleanup in class PerColumnSecondaryIndexpublic void insert(java.nio.ByteBuffer rowKey,
Cell cell,
OpOrder.Group opGroup)
PerColumnSecondaryIndexinsert in class PerColumnSecondaryIndexrowKey - the underlying row key which is indexedcell - all the column infopublic void update(java.nio.ByteBuffer rowKey,
Cell oldCol,
Cell col,
OpOrder.Group opGroup)
PerColumnSecondaryIndexupdate in class PerColumnSecondaryIndexrowKey - the underlying row key which is indexedoldCol - the previous column infocol - all the column infopublic void removeIndex(java.nio.ByteBuffer columnName)
SecondaryIndexremoveIndex in class SecondaryIndexcolumnName - the indexed column to removepublic void forceBlockingFlush()
SecondaryIndexforceBlockingFlush in class SecondaryIndexpublic void invalidate()
SecondaryIndexinvalidate in class SecondaryIndexpublic void truncateBlocking(long truncatedAt)
SecondaryIndextruncateBlocking in class SecondaryIndextruncatedAt - The truncation timestamp, all data before that timestamp should be rejected.public ColumnFamilyStore getIndexCfs()
SecondaryIndexgetIndexCfs in class SecondaryIndexpublic java.lang.String getIndexName()
getIndexName in class SecondaryIndexpublic void reload()
SecondaryIndexreload in class SecondaryIndexpublic long estimateResultRows()
estimateResultRows in class SecondaryIndexpublic boolean validate(java.nio.ByteBuffer rowKey,
Cell cell)
validate in class PerColumnSecondaryIndexCopyright © 2018 The Apache Software Foundation