This is an automated email from the ASF dual-hosted git repository.

heiming pushed a commit to branch tiered_storage
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/tiered_storage by this push:
     new 4cdd85feb9a fix isSeq in the TsFileResource
4cdd85feb9a is described below

commit 4cdd85feb9aea7f29e9000582ba41339c3c792bd
Author: HeimingZ <[email protected]>
AuthorDate: Tue May 23 20:32:11 2023 +0800

    fix isSeq in the TsFileResource
---
 .../java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java | 5 +++++
 .../main/java/org/apache/iotdb/tsfile/common/conf/TSFileConfig.java  | 4 +++-
 tsfile/src/main/java/org/apache/iotdb/tsfile/utils/FSUtils.java      | 4 ++++
 .../src/main/java/org/apache/iotdb/tsfile/utils/FilePathUtils.java   | 5 +++++
 4 files changed, 17 insertions(+), 1 deletion(-)

diff --git 
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
 
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
index 9ffc5fca31c..9f2fcf3320f 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
@@ -175,6 +175,7 @@ public class TsFileResource {
     this.minPlanIndex = other.minPlanIndex;
     this.version = FilePathUtils.splitAndGetTsFileVersion(this.file.getName());
     this.tsFileSize = other.tsFileSize;
+    this.isSeq = other.isSeq;
     this.tierLevel = other.tierLevel;
   }
 
@@ -183,6 +184,7 @@ public class TsFileResource {
     this.file = file;
     this.version = FilePathUtils.splitAndGetTsFileVersion(this.file.getName());
     this.timeIndex = CONFIG.getTimeIndexLevel().getTimeIndex();
+    this.isSeq = FilePathUtils.isSequence(this.file.getAbsolutePath());
     this.tierLevel = TierManager.getInstance().getFileTierLevel(file);
   }
 
@@ -198,6 +200,7 @@ public class TsFileResource {
     this.version = FilePathUtils.splitAndGetTsFileVersion(this.file.getName());
     this.timeIndex = CONFIG.getTimeIndexLevel().getTimeIndex();
     this.processor = processor;
+    this.isSeq = processor.isSequence();
     this.tierLevel = TierManager.getInstance().getFileTierLevel(file);
   }
 
@@ -214,6 +217,7 @@ public class TsFileResource {
     this.pathToChunkMetadataListMap.put(path, chunkMetadataList);
     this.originTsFileResource = originTsFileResource;
     this.version = originTsFileResource.version;
+    this.isSeq = originTsFileResource.isSeq;
     this.tierLevel = originTsFileResource.tierLevel;
   }
 
@@ -230,6 +234,7 @@ public class TsFileResource {
     generatePathToTimeSeriesMetadataMap();
     this.originTsFileResource = originTsFileResource;
     this.version = originTsFileResource.version;
+    this.isSeq = originTsFileResource.isSeq;
     this.tierLevel = originTsFileResource.tierLevel;
   }
 
diff --git 
a/tsfile/src/main/java/org/apache/iotdb/tsfile/common/conf/TSFileConfig.java 
b/tsfile/src/main/java/org/apache/iotdb/tsfile/common/conf/TSFileConfig.java
index cca02389716..8712ba0aba5 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/common/conf/TSFileConfig.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/common/conf/TSFileConfig.java
@@ -21,6 +21,7 @@ package org.apache.iotdb.tsfile.common.conf;
 import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
 import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
 import org.apache.iotdb.tsfile.fileSystem.FSType;
+import org.apache.iotdb.tsfile.utils.FSUtils;
 
 import java.io.Serializable;
 import java.nio.charset.Charset;
@@ -119,7 +120,7 @@ public class TSFileConfig implements Serializable {
   /** Default endian value is BIG_ENDIAN. */
   private String endian = "BIG_ENDIAN";
   /** Default storage is in local file system */
-  private FSType[] TSFileStorageFs = FSType.values();
+  private FSType[] TSFileStorageFs = new FSType[] {FSType.LOCAL};
   /** Default core-site.xml file path is /etc/hadoop/conf/core-site.xml */
   private String coreSitePath = "/etc/hadoop/conf/core-site.xml";
   /** Default hdfs-site.xml file path is /etc/hadoop/conf/hdfs-site.xml */
@@ -354,6 +355,7 @@ public class TSFileConfig implements Serializable {
 
   public void setTSFileStorageFs(FSType[] fileStorageFs) {
     this.TSFileStorageFs = fileStorageFs;
+    FSUtils.reload();
   }
 
   public String getCoreSitePath() {
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/FSUtils.java 
b/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/FSUtils.java
index 4897d75b441..53c135073fb 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/FSUtils.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/FSUtils.java
@@ -43,6 +43,10 @@ public class FSUtils {
   private FSUtils() {}
 
   static {
+    reload();
+  }
+
+  public static synchronized void reload() {
     for (FSType fsType : 
TSFileDescriptor.getInstance().getConfig().getTSFileStorageFs()) {
       if (fsType == FSType.OBJECT_STORAGE) {
         isSupported[0] = true;
diff --git 
a/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/FilePathUtils.java 
b/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/FilePathUtils.java
index 57b7a3b622f..d30e77f2632 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/FilePathUtils.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/FilePathUtils.java
@@ -65,6 +65,11 @@ public class FilePathUtils {
     return tsFileAbsolutePath.split(separator);
   }
 
+  public static boolean isSequence(String tsFileAbsolutePath) {
+    String[] pathSegments = splitTsFilePath(tsFileAbsolutePath);
+    return pathSegments[pathSegments.length - 5].equals("sequence");
+  }
+
   public static String getLogicalStorageGroupName(String tsFileAbsolutePath) {
     String[] pathSegments = splitTsFilePath(tsFileAbsolutePath);
     return pathSegments[pathSegments.length - 4];

Reply via email to