org.apache.cassandra.db.compaction

## Class TimeWindowCompactionController

- java.lang.Object
- - org.apache.cassandra.db.compaction.CompactionController
  - - org.apache.cassandra.db.compaction.TimeWindowCompactionController

- All Implemented Interfaces:
    java.lang.AutoCloseable

      public class TimeWindowCompactionController
      extends CompactionController

- - ### Field Summary

    - ### Fields inherited from class org.apache.cassandra.db.compaction.CompactionController

      `cfs, gcBefore`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TimeWindowCompactionController(ColumnFamilyStore cfs, java.util.Set<SSTableReader> compacting, int gcBefore, boolean ignoreOverlaps)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected boolean` | `ignoreOverlaps()` Is overlapped sstables ignored Control whether or not we are taking into account overlapping sstables when looking for fully expired sstables.

    - ### Methods inherited from class org.apache.cassandra.db.compaction.CompactionController

      `close, compactingRepaired, getColumnFamily, getFullyExpiredSSTables, getFullyExpiredSSTables, getFullyExpiredSSTables, getKeyspace, getPurgeEvaluator, maybeRefreshOverlaps, shadowSources`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### TimeWindowCompactionController

          public TimeWindowCompactionController(ColumnFamilyStore cfs,
                                                java.util.Set<SSTableReader> compacting,
                                                int gcBefore,
                                                boolean ignoreOverlaps)

  - ### Method Detail

    - #### ignoreOverlaps

          protected boolean ignoreOverlaps()

      Description copied from class: `CompactionController`
      Is overlapped sstables ignored Control whether or not we are taking into account overlapping sstables when looking for fully expired sstables. In order to reduce the amount of work needed, we look for sstables that can be dropped instead of compacted. As a safeguard mechanism, for each time range of data in a sstable, we are checking globally to see if all data of this time range is fully expired before considering to drop the sstable. This strategy can retain for a long time a lot of sstables on disk (see CASSANDRA-13418) so this option control whether or not this check should be ignored.
      Overrides:
        `ignoreOverlaps` in class `CompactionController`
      Returns:
        false by default

Copyright © 2018 The Apache Software Foundation