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];