Class CollectionEntryIndex
java.lang.Object
org.apache.cassandra.index.internal.CassandraIndex
org.apache.cassandra.index.internal.composites.CollectionKeyIndexBase
org.apache.cassandra.index.internal.composites.CollectionEntryIndex
- All Implemented Interfaces:
Index
Index on the element and value of cells participating in a collection.
The row keys for this index are a composite of the collection element
and value of indexed columns.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.cassandra.index.Index
Index.CollatedViewIndexBuildingSupport, Index.Group, Index.IndexBuildingSupport, Index.Indexer, Index.LoadType, Index.QueryPlan, Index.Searcher, Index.Status -
Field Summary
Fields inherited from class org.apache.cassandra.index.internal.CassandraIndex
baseCfs, functions, indexCfs, indexedColumn, metadata, NAMEFields inherited from interface org.apache.cassandra.index.Index
INDEX_BUILDER_SUPPORT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetIndexedValue(ByteBuffer partitionKey, Clustering<?> clustering, CellPath path, ByteBuffer cellValue) Extract the value to be inserted into the index from the components of the base databooleanisStale(Row data, ByteBuffer indexValue, long nowInSec) Check whether a value retrieved from an index is still valid by comparing it to current row from the base table.Methods inherited from class org.apache.cassandra.index.internal.composites.CollectionKeyIndexBase
buildIndexClusteringPrefix, decodeEntryMethods inherited from class org.apache.cassandra.index.internal.CassandraIndex
customExpressionValueType, deleteStaleEntry, dependsOn, getBackingTable, getBlockingFlushTask, getEstimatedResultRows, getIndexCfs, getIndexComparator, getIndexedColumn, getIndexMetadata, getInitializationTask, getInvalidateTask, getMetadataReloadTask, getPostIndexQueryFilter, getTruncateTask, indexCfsMetadata, indexerFor, isQueryable, newIndex, register, searcherFor, shouldBuildBlocking, supportsExpression, supportsOperator, validate, validateMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.cassandra.index.Index
filtersMultipleContains, getBlockingFlushTask, getBuildTaskSupport, getComponents, getFlushObserver, getPostQueryOrdering, getPreJoinTask, getRecoveryTaskSupport, getSupportedLoadTypeOnFailure, isSSTableAttached, notifyIndexerAboutRowsInFullyExpiredSSTables, unregister
-
Constructor Details
-
CollectionEntryIndex
-
-
Method Details
-
getIndexedValue
public ByteBuffer getIndexedValue(ByteBuffer partitionKey, Clustering<?> clustering, CellPath path, ByteBuffer cellValue) Description copied from class:CassandraIndexExtract the value to be inserted into the index from the components of the base data- Specified by:
getIndexedValuein classCassandraIndex- Parameters:
partitionKey- from the primary dataclustering- from the primary datapath- from the primary datacellValue- from the primary data- Returns:
- a ByteBuffer containing the value to be inserted in the index. This will be used to make the partition key in the index table
-
isStale
Description copied from class:CassandraIndexCheck whether a value retrieved from an index is still valid by comparing it to current row from the base table. Used at read time to identify out of date index entries so that they can be excluded from search results and repaired- Specified by:
isStalein classCassandraIndex- Parameters:
data- the current row from the primary data tableindexValue- the value we retrieved from the index- Returns:
- true if the index is out of date and the entry should be dropped
-