Class IndexViewManager


  • public class IndexViewManager
    extends java.lang.Object
    Maintain an atomic view for read requests, so that requests can read all data during concurrent compactions.

    All per-column SSTableIndex updates should be proxied by StorageAttachedIndexGroup to make sure per-sstable SSTableContext are in-sync.

    • Method Detail

      • view

        public View view()
      • update

        public java.util.Collection<SSTableContext> update​(java.util.Collection<SSTableReader> oldSSTables,
                                                           java.util.Collection<SSTableContext> newSSTableContexts,
                                                           IndexValidation validation)
        Replaces old SSTables with new by creating new immutable view.
        Parameters:
        oldSSTables - A set of SSTables to remove.
        newSSTableContexts - A set of SSTableContexts to add to tracker.
        validation - Controls how indexes should be validated
        Returns:
        A set of SSTables which have attached to them invalid index components.
      • drop

        public void drop​(java.util.Collection<SSTableReader> sstablesToRebuild)
      • invalidate

        public void invalidate()
        Called when index is dropped. Mark all SSTableIndex as released and per-column index files will be removed when in-flight queries are completed.