Package org.rocksdb

Enum Class CompactionReason

java.lang.Object
java.lang.Enum<CompactionReason>
org.rocksdb.CompactionReason
All Implemented Interfaces:
Serializable, Comparable<CompactionReason>, Constable

public enum CompactionReason extends Enum<CompactionReason>
  • Enum Constant Details

    • kUnknown

      public static final CompactionReason kUnknown
    • kLevelL0FilesNum

      public static final CompactionReason kLevelL0FilesNum
      [Level] number of L0 files > level0_file_num_compaction_trigger
    • kLevelMaxLevelSize

      public static final CompactionReason kLevelMaxLevelSize
      [Level] total size of level > MaxBytesForLevel()
    • kUniversalSizeAmplification

      public static final CompactionReason kUniversalSizeAmplification
      [Universal] Compacting for size amplification
    • kUniversalSizeRatio

      public static final CompactionReason kUniversalSizeRatio
      [Universal] Compacting for size ratio
    • kUniversalSortedRunNum

      public static final CompactionReason kUniversalSortedRunNum
      [Universal] number of sorted runs > level0_file_num_compaction_trigger
    • kFIFOMaxSize

      public static final CompactionReason kFIFOMaxSize
      [FIFO] total size > max_table_files_size
    • kFIFOReduceNumFiles

      public static final CompactionReason kFIFOReduceNumFiles
      [FIFO] reduce number of files.
    • kFIFOTtl

      public static final CompactionReason kFIFOTtl
      [FIFO] files with creation time < (current_time - interval)
    • kManualCompaction

      public static final CompactionReason kManualCompaction
      Manual compaction
    • kFilesMarkedForCompaction

      public static final CompactionReason kFilesMarkedForCompaction
      DB::SuggestCompactRange() marked files for compaction
    • kBottommostFiles

      public static final CompactionReason kBottommostFiles
      [Level] Automatic compaction within bottommost level to cleanup duplicate versions of same user key, usually due to a released snapshot.
    • kTtl

      public static final CompactionReason kTtl
      Compaction based on TTL
    • kFlush

      public static final CompactionReason kFlush
      According to the comments in flush_job.cc, RocksDB treats flush as a level 0 compaction in internal stats.
    • kExternalSstIngestion

      public static final CompactionReason kExternalSstIngestion
      Compaction caused by external sst file ingestion
    • kPeriodicCompaction

      public static final CompactionReason kPeriodicCompaction
      Compaction due to SST file being too old
    • kChangeTemperature

      public static final CompactionReason kChangeTemperature
      Compaction in order to move files to temperature
    • kForcedBlobGC

      public static final CompactionReason kForcedBlobGC
      Compaction scheduled to force garbage collection of blob files
    • kRoundRobinTtl

      public static final CompactionReason kRoundRobinTtl
      A special TTL compaction for RoundRobin policy, which basically the same as kLevelMaxLevelSize, but the goal is to compact TTLed files.
    • kRefitLevel

      public static final CompactionReason kRefitLevel
      Compaction by calling DBImpl::ReFitLevel
  • Method Details

    • values

      public static CompactionReason[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static CompactionReason valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null