Class FilePathUtils


  • public class FilePathUtils
    extends Object
    • Method Detail

      • regularizePath

        public static String regularizePath​(String filePath)
        Format file path to end with File.separator
        Parameters:
        filePath - origin file path
        Returns:
        Regularized Path
      • splitTsFilePath

        public static String[] splitTsFilePath​(String tsFileAbsolutePath)
        IMPORTANT, when the path of TsFile changes, the following methods should be changed accordingly. The sequence TsFile is located at ${IOTDB_DATA_DIR}/data/sequence/. The unsequence TsFile is located at ${IOTDB_DATA_DIR}/data/unsequence/. Where different database's TsFile is located at ///. For example, one sequence TsFile may locate at /data/data/sequence/root.group_9/0/0/1611199237113-4-0.tsfile
        Parameters:
        tsFileAbsolutePath - the tsFile Absolute Path
      • isSequence

        public static boolean isSequence​(String tsFileAbsolutePath)
      • getLogicalStorageGroupName

        public static String getLogicalStorageGroupName​(String tsFileAbsolutePath)
      • getDataRegionId

        public static String getDataRegionId​(String tsFileAbsolutePath)
      • getTimePartitionId

        public static long getTimePartitionId​(String tsFileAbsolutePath)
      • getTsFileNameWithoutHardLink

        public static String getTsFileNameWithoutHardLink​(String tsFileAbsolutePath)
        Parameters:
        tsFileAbsolutePath - the Remote TsFile Absolute Path
        Returns:
        the file in the snapshot is a hardlink, remove the hardlink suffix
      • getTsFilePrefixPath

        public static String getTsFilePrefixPath​(String tsFileAbsolutePath)
      • splitAndGetTsFileVersion

        public static long splitAndGetTsFileVersion​(String tsFileName)
      • getLogicalSgNameAndTimePartitionIdPair

        public static Pair<String,​Long> getLogicalSgNameAndTimePartitionIdPair​(String tsFileAbsolutePath)
      • getTsFilePrefixPathAndTsFileVersionPair

        public static Pair<String,​long[]> getTsFilePrefixPathAndTsFileVersionPair​(String tsFileAbsolutePath)
        pair.left tsFilePrefixPath, like data/data/sequence/root.sg1/0/0 pair.right is a long array whose length is 2 pair.right[0] is tsfile version pair.right[1] is compaction version, high 32 bit is compaction level, low 32 bit is merge count