Class TsFileManager


  • public class TsFileManager
    extends java.lang.Object
    • Constructor Detail

      • TsFileManager

        public TsFileManager​(java.lang.String storageGroupName,
                             java.lang.String dataRegionId,
                             java.lang.String storageGroupDir)
    • Method Detail

      • getTsFileList

        public java.util.List<TsFileResource> getTsFileList​(boolean sequence)
      • getSequenceListByTimePartition

        public TsFileResourceList getSequenceListByTimePartition​(long timePartition)
      • getUnsequenceListByTimePartition

        public TsFileResourceList getUnsequenceListByTimePartition​(long timePartition)
      • getIterator

        public java.util.Iterator<TsFileResource> getIterator​(boolean sequence)
      • remove

        public void remove​(TsFileResource tsFileResource,
                           boolean sequence)
      • removeAll

        public void removeAll​(java.util.List<TsFileResource> tsFileResourceList,
                              boolean sequence)
      • insertToPartitionFileList

        public void insertToPartitionFileList​(TsFileResource tsFileResource,
                                              boolean sequence,
                                              int insertPos)
        insert tsFileResource to a target pos(targetPos = insertPos) e.g. if insertPos = 0, then to the first, if insert Pos = 1, then to the second.
      • add

        public void add​(TsFileResource tsFileResource,
                        boolean sequence)
      • keepOrderInsert

        public void keepOrderInsert​(TsFileResource tsFileResource,
                                    boolean sequence)
                             throws java.io.IOException
        Throws:
        java.io.IOException
      • addForRecover

        public void addForRecover​(TsFileResource tsFileResource,
                                  boolean sequence)
      • addAll

        public void addAll​(java.util.List<TsFileResource> tsFileResourceList,
                           boolean sequence)
      • replace

        public void replace​(java.util.List<TsFileResource> seqFileResources,
                            java.util.List<TsFileResource> unseqFileResources,
                            java.util.List<TsFileResource> targetFileResources,
                            long timePartition,
                            boolean isTargetSequence)
                     throws java.io.IOException
        This method is called after compaction to update memory.
        Throws:
        java.io.IOException
      • contains

        public boolean contains​(TsFileResource tsFileResource,
                                boolean sequence)
      • clear

        public void clear()
      • isEmpty

        public boolean isEmpty​(boolean sequence)
      • size

        public int size​(boolean sequence)
      • readLock

        public void readLock()
      • readUnlock

        public void readUnlock()
      • writeLock

        public void writeLock​(java.lang.String holder)
      • writeUnlock

        public void writeUnlock()
      • getStorageGroupName

        public java.lang.String getStorageGroupName()
      • getStorageGroupDir

        public java.lang.String getStorageGroupDir()
      • setStorageGroupDir

        public void setStorageGroupDir​(java.lang.String storageGroupDir)
      • getTimePartitions

        public java.util.Set<java.lang.Long> getTimePartitions()
      • isAllowCompaction

        public boolean isAllowCompaction()
      • setAllowCompaction

        public void setAllowCompaction​(boolean allowCompaction)
      • getDataRegionId

        public java.lang.String getDataRegionId()
      • setDataRegionId

        public void setDataRegionId​(java.lang.String dataRegionId)
      • getSequenceRecoverTsFileResources

        public java.util.List<TsFileResource> getSequenceRecoverTsFileResources()
      • getUnsequenceRecoverTsFileResources

        public java.util.List<TsFileResource> getUnsequenceRecoverTsFileResources()
      • collectHistoryTsFileForSync

        public java.util.List<java.io.File> collectHistoryTsFileForSync​(ISyncManager syncManager,
                                                                        long dataStartTime)
      • compareFileName

        public static int compareFileName​(java.io.File o1,
                                          java.io.File o2)
      • getNextCompactionTaskId

        public long getNextCompactionTaskId()
      • hasNextTimePartition

        public boolean hasNextTimePartition​(long timePartition,
                                            boolean sequence)