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 f31a7764e7 add os type in the construction method
f31a7764e7 is described below
commit f31a7764e7f3bf988a6dcd102ef79d3bdeef2d67
Author: HeimingZ <[email protected]>
AuthorDate: Thu May 18 17:33:17 2023 +0800
add os type in the construction method
---
.../src/main/java/org/apache/iotdb/os/cache/OSFileCache.java | 6 +++---
.../main/java/org/apache/iotdb/os/conf/ObjectStorageConfig.java | 2 +-
.../src/main/java/org/apache/iotdb/os/fileSystem/OSFile.java | 6 +++++-
.../main/java/org/apache/iotdb/os/utils/ObjectStorageType.java | 8 ++++++--
.../src/test/java/org/apache/iotdb/os/cache/OSFileCacheTest.java | 9 +++++++--
5 files changed, 22 insertions(+), 9 deletions(-)
diff --git
a/object-storage/src/main/java/org/apache/iotdb/os/cache/OSFileCache.java
b/object-storage/src/main/java/org/apache/iotdb/os/cache/OSFileCache.java
index ade8ce98a7..a11c140d84 100644
--- a/object-storage/src/main/java/org/apache/iotdb/os/cache/OSFileCache.java
+++ b/object-storage/src/main/java/org/apache/iotdb/os/cache/OSFileCache.java
@@ -47,8 +47,8 @@ public class OSFileCache {
*/
private final LoadingCache<OSFileCacheKey, OSFileCacheValue>
remotePos2LocalCacheFile;
- OSFileCache() {
- connector = ObjectStorageType.getConnector();
+ OSFileCache(ObjectStorageType osType) {
+ connector = ObjectStorageType.getConnector(osType);
remotePos2LocalCacheFile =
Caffeine.newBuilder()
.maximumWeight(config.getCacheMaxDiskUsage())
@@ -93,6 +93,6 @@ public class OSFileCache {
private static class InstanceHolder {
private InstanceHolder() {}
- private static final OSFileCache INSTANCE = new OSFileCache();
+ private static final OSFileCache INSTANCE = new
OSFileCache(config.getOsType());
}
}
diff --git
a/object-storage/src/main/java/org/apache/iotdb/os/conf/ObjectStorageConfig.java
b/object-storage/src/main/java/org/apache/iotdb/os/conf/ObjectStorageConfig.java
index 2c41e7c869..1375ada8b5 100644
---
a/object-storage/src/main/java/org/apache/iotdb/os/conf/ObjectStorageConfig.java
+++
b/object-storage/src/main/java/org/apache/iotdb/os/conf/ObjectStorageConfig.java
@@ -24,7 +24,7 @@ import org.apache.iotdb.os.utils.ObjectStorageType;
import java.io.File;
public class ObjectStorageConfig {
- private ObjectStorageType osType = ObjectStorageType.TEST;
+ private ObjectStorageType osType = ObjectStorageType.AWS_S3;
private AWSS3Config awss3Config = new AWSS3Config();
diff --git
a/object-storage/src/main/java/org/apache/iotdb/os/fileSystem/OSFile.java
b/object-storage/src/main/java/org/apache/iotdb/os/fileSystem/OSFile.java
index d5c9fa060c..31de138b9a 100644
--- a/object-storage/src/main/java/org/apache/iotdb/os/fileSystem/OSFile.java
+++ b/object-storage/src/main/java/org/apache/iotdb/os/fileSystem/OSFile.java
@@ -57,9 +57,13 @@ public class OSFile extends File {
private long length = 0L;
public OSFile(OSURI osUri) {
+ this(osUri, config.getOsType());
+ }
+
+ public OSFile(OSURI osUri, ObjectStorageType osType) {
super(osUri.getURI().toString());
this.osUri = osUri;
- connector = ObjectStorageType.getConnector();
+ connector = ObjectStorageType.getConnector(osType);
}
public OSFile(String pathname) {
diff --git
a/object-storage/src/main/java/org/apache/iotdb/os/utils/ObjectStorageType.java
b/object-storage/src/main/java/org/apache/iotdb/os/utils/ObjectStorageType.java
index 74a2ab0055..cb793bd366 100644
---
a/object-storage/src/main/java/org/apache/iotdb/os/utils/ObjectStorageType.java
+++
b/object-storage/src/main/java/org/apache/iotdb/os/utils/ObjectStorageType.java
@@ -26,8 +26,8 @@ public enum ObjectStorageType {
TEST,
AWS_S3;
- public static ObjectStorageConnector getConnector() {
- switch (ObjectStorageDescriptor.getInstance().getConfig().getOsType()) {
+ public static ObjectStorageConnector getConnector(ObjectStorageType type) {
+ switch (type) {
case AWS_S3:
return new S3ObjectStorageConnector();
case TEST:
@@ -35,4 +35,8 @@ public enum ObjectStorageType {
return null;
}
}
+
+ public static ObjectStorageConnector getConnector() {
+ return
getConnector(ObjectStorageDescriptor.getInstance().getConfig().getOsType());
+ }
}
diff --git
a/object-storage/src/test/java/org/apache/iotdb/os/cache/OSFileCacheTest.java
b/object-storage/src/test/java/org/apache/iotdb/os/cache/OSFileCacheTest.java
index 7ddcd56050..51b8e35175 100644
---
a/object-storage/src/test/java/org/apache/iotdb/os/cache/OSFileCacheTest.java
+++
b/object-storage/src/test/java/org/apache/iotdb/os/cache/OSFileCacheTest.java
@@ -23,6 +23,7 @@ import org.apache.iotdb.os.conf.ObjectStorageDescriptor;
import org.apache.iotdb.os.fileSystem.OSFile;
import org.apache.iotdb.os.fileSystem.OSURI;
import org.apache.iotdb.os.io.ObjectStorageConnector;
+import org.apache.iotdb.os.utils.ObjectStorageType;
import org.junit.After;
import org.junit.Before;
@@ -48,8 +49,12 @@ public class OSFileCacheTest {
private static final File cacheDir = new File("target" + File.separator +
"cache");
private static final ObjectStorageConfig config =
ObjectStorageDescriptor.getInstance().getConfig();
- @InjectMocks private OSFileCache cache = new OSFileCache();
- @InjectMocks private OSFile testFile = new OSFile(new OSURI("test_bucket",
"test_key"));
+ @InjectMocks private OSFileCache cache = new
OSFileCache(ObjectStorageType.TEST);
+
+ @InjectMocks
+ private OSFile testFile =
+ new OSFile(new OSURI("test_bucket", "test_key"), ObjectStorageType.TEST);
+
@Mock private ObjectStorageConnector connector;
private int prevCachePageSize;
private String[] prevCacheDirs;