diff --git a/sdk/java/libjfs/main.go b/sdk/java/libjfs/main.go index 6342e4c3d579..bde07fe5e901 100644 --- a/sdk/java/libjfs/main.go +++ b/sdk/java/libjfs/main.go @@ -272,6 +272,7 @@ func freeHandle(fd int) { type javaConf struct { MetaURL string `json:"meta"` Bucket string `json:"bucket"` + StorageClass string `json:"storageClass"` ReadOnly bool `json:"readOnly"` NoBGJob bool `json:"noBGJob"` OpenCache float64 `json:"openCache"` @@ -468,13 +469,13 @@ func jfs_init(cname, jsonConf, user, group, superuser, supergroup *C.char) uintp go metric.UpdateMetrics(m, registerer) } - if jConf.Bucket != "" { - format.Bucket = jConf.Bucket - } blob, err := cmd.NewReloadableStorage(format, m, func(f *meta.Format) { if jConf.Bucket != "" { format.Bucket = jConf.Bucket } + if jConf.StorageClass != "" { + format.StorageClass = jConf.StorageClass + } }) if err != nil { logger.Errorf("object storage: %s", err) diff --git a/sdk/java/src/main/java/io/juicefs/JuiceFileSystemImpl.java b/sdk/java/src/main/java/io/juicefs/JuiceFileSystemImpl.java index 77a2c05f4e87..272019ded354 100644 --- a/sdk/java/src/main/java/io/juicefs/JuiceFileSystemImpl.java +++ b/sdk/java/src/main/java/io/juicefs/JuiceFileSystemImpl.java @@ -367,6 +367,7 @@ public void initialize(URI uri, Configuration conf) throws IOException { obj.put(key, Boolean.valueOf(getConf(conf, key, "false"))); } obj.put("bucket", getConf(conf, "bucket", "")); + obj.put("storageClass", getConf(conf, "storage-class", "")); obj.put("readOnly", Boolean.valueOf(getConf(conf, "read-only", "false"))); obj.put("noBGJob", Boolean.valueOf(getConf(conf, "no-bgjob", "false"))); obj.put("cacheDir", getConf(conf, "cache-dir", "memory")); @@ -579,7 +580,7 @@ public static Libjfs loadLibrary() throws IOException { LibraryLoader libjfsLibraryLoader = LibraryLoader.create(Libjfs.class); libjfsLibraryLoader.failImmediately(); - int soVer = 7; + int soVer = 8; String osId = "so"; String archId = "amd64"; String resourceFormat = "libjfs-%s.%s.gz";