Class Version

java.lang.Object
org.iq80.leveldb.impl.Version
All Implemented Interfaces:
Iterable<Map.Entry<InternalKey,Slice>>, SeekingIterable<InternalKey,Slice>

public class Version extends Object implements SeekingIterable<InternalKey,Slice>
  • Field Details

    • retained

      private final AtomicInteger retained
    • versionSet

      private final VersionSet versionSet
    • level0

      private final Level0 level0
    • levels

      private final List<Level> levels
    • compactionLevel

      private int compactionLevel
    • compactionScore

      private double compactionScore
    • fileToCompact

      private FileMetaData fileToCompact
    • fileToCompactLevel

      private int fileToCompactLevel
  • Constructor Details

  • Method Details

    • assertNoOverlappingFiles

      public void assertNoOverlappingFiles()
    • assertNoOverlappingFiles

      public void assertNoOverlappingFiles(int level)
    • getTableCache

      private TableCache getTableCache()
    • getInternalKeyComparator

      public final InternalKeyComparator getInternalKeyComparator()
    • getCompactionLevel

      public int getCompactionLevel()
    • setCompactionLevel

      public void setCompactionLevel(int compactionLevel)
    • getCompactionScore

      public double getCompactionScore()
    • setCompactionScore

      public void setCompactionScore(double compactionScore)
    • iterator

      public MergingIterator iterator()
      Specified by:
      iterator in interface Iterable<Map.Entry<InternalKey,Slice>>
      Specified by:
      iterator in interface SeekingIterable<InternalKey,Slice>
    • getLevel0Files

      List<InternalTableIterator> getLevel0Files()
    • getLevelIterators

      List<LevelIterator> getLevelIterators()
    • get

      public LookupResult get(LookupKey key)
    • pickLevelForMemTableOutput

      int pickLevelForMemTableOutput(Slice smallestUserKey, Slice largestUserKey)
    • overlapInLevel

      public boolean overlapInLevel(int level, Slice smallestUserKey, Slice largestUserKey)
    • numberOfLevels

      public int numberOfLevels()
    • numberOfFilesInLevel

      public int numberOfFilesInLevel(int level)
    • getFiles

      public com.google.common.collect.Multimap<Integer,FileMetaData> getFiles()
    • getFiles

      public List<FileMetaData> getFiles(int level)
    • addFile

      public void addFile(int level, FileMetaData fileMetaData)
    • updateStats

      private boolean updateStats(int seekFileLevel, FileMetaData seekFile)
    • getFileToCompact

      public FileMetaData getFileToCompact()
    • getFileToCompactLevel

      public int getFileToCompactLevel()
    • getApproximateOffsetOf

      public long getApproximateOffsetOf(InternalKey key)
    • retain

      public void retain()
    • release

      public void release()
    • isDisposed

      public boolean isDisposed()