org.apache.cassandra.db.compaction
Class LeveledCompactionTask

java.lang.Object
  extended by org.apache.cassandra.utils.WrappedRunnable
      extended by org.apache.cassandra.io.util.DiskAwareRunnable
          extended by org.apache.cassandra.db.compaction.AbstractCompactionTask
              extended by org.apache.cassandra.db.compaction.CompactionTask
                  extended by org.apache.cassandra.db.compaction.LeveledCompactionTask
All Implemented Interfaces:
java.lang.Runnable

public class LeveledCompactionTask
extends CompactionTask


Field Summary
 
Fields inherited from class org.apache.cassandra.db.compaction.CompactionTask
gcBefore, logger, totalBytesCompacted
 
Fields inherited from class org.apache.cassandra.db.compaction.AbstractCompactionTask
cfs, compactionType, isUserDefined, sstables
 
Constructor Summary
LeveledCompactionTask(ColumnFamilyStore cfs, java.util.Collection<SSTableReader> sstables, int gcBefore, int sstableSizeInMB)
           
 
Method Summary
protected  void cancel()
           
 int execute(CompactionManager.CompactionExecutorStatsCollector collector)
          For internal use and testing only.
protected  boolean isCompactionInteresting(java.util.Set<SSTableReader> toCompact)
           
 boolean isDone()
           
 boolean markSSTablesForCompaction(int min, int max)
           
protected  boolean newSSTableSegmentThresholdReached(SSTableWriter writer)
           
protected  boolean partialCompactionsAcceptable()
           
 
Methods inherited from class org.apache.cassandra.db.compaction.CompactionTask
addToTotalBytesCompacted, getExpectedWriteSize, getMaxDataAge, reduceScopeForLimitedSpace, runWith
 
Methods inherited from class org.apache.cassandra.db.compaction.AbstractCompactionTask
getColumnFamilyStore, getSSTables, isUserDefined, markSSTablesForCompaction, setCompactionType, toString, unmarkSSTables
 
Methods inherited from class org.apache.cassandra.io.util.DiskAwareRunnable
runMayThrow
 
Methods inherited from class org.apache.cassandra.utils.WrappedRunnable
run
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LeveledCompactionTask

public LeveledCompactionTask(ColumnFamilyStore cfs,
                             java.util.Collection<SSTableReader> sstables,
                             int gcBefore,
                             int sstableSizeInMB)
Method Detail

execute

public int execute(CompactionManager.CompactionExecutorStatsCollector collector)
Description copied from class: CompactionTask
For internal use and testing only. The rest of the system should go through the submit* methods, which are properly serialized. Caller is in charge of marking/unmarking the sstables as compacting.

Overrides:
execute in class CompactionTask

isDone

public boolean isDone()

markSSTablesForCompaction

public boolean markSSTablesForCompaction(int min,
                                         int max)
Overrides:
markSSTablesForCompaction in class AbstractCompactionTask

newSSTableSegmentThresholdReached

protected boolean newSSTableSegmentThresholdReached(SSTableWriter writer)
Overrides:
newSSTableSegmentThresholdReached in class CompactionTask

isCompactionInteresting

protected boolean isCompactionInteresting(java.util.Set<SSTableReader> toCompact)
Overrides:
isCompactionInteresting in class CompactionTask
Returns:
true if the proposed compaction is worth proceeding with. We allow leveled compaction to override this to allow "promoting" sstables from one level to another w/o rewriting them, if there is no overlapping.

partialCompactionsAcceptable

protected boolean partialCompactionsAcceptable()
Overrides:
partialCompactionsAcceptable in class CompactionTask

cancel

protected void cancel()
Overrides:
cancel in class AbstractCompactionTask


Copyright © 2012 The Apache Software Foundation