From 8dae0af0c99c94755b0e346f4ece71c4939d3f6b Mon Sep 17 00:00:00 2001 From: Sandy Xu Date: Thu, 14 Mar 2024 15:50:28 +0800 Subject: [PATCH 1/3] gateway: add open flag when downloading an object --- pkg/gateway/gateway.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/gateway/gateway.go b/pkg/gateway/gateway.go index 647764a13d68..117798b20ed1 100644 --- a/pkg/gateway/gateway.go +++ b/pkg/gateway/gateway.go @@ -479,7 +479,7 @@ func (n *jfsObjects) GetObjectNInfo(ctx context.Context, bucket, object string, if err != nil { return } - f, eno := n.fs.Open(mctx, n.path(bucket, object), 0) + f, eno := n.fs.Open(mctx, n.path(bucket, object), vfs.MODE_MASK_R) if eno != 0 { return nil, jfsToObjectErr(ctx, eno, bucket, object) } From b0648006d9a8c26988022727b6b9bbe68de77260 Mon Sep 17 00:00:00 2001 From: Sandy Xu Date: Thu, 14 Mar 2024 17:19:15 +0800 Subject: [PATCH 2/3] fix object.go as well --- cmd/object.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/object.go b/cmd/object.go index beb7c474577f..d3ca28cf5d44 100644 --- a/cmd/object.go +++ b/cmd/object.go @@ -96,7 +96,7 @@ func (f *jFile) Close() error { } func (j *juiceFS) Get(key string, off, limit int64) (io.ReadCloser, error) { - f, err := j.jfs.Open(ctx, j.path(key), 0) + f, err := j.jfs.Open(ctx, j.path(key), vfs.MODE_MASK_R) if err != 0 { return nil, err } From b55e949d75d1df2122f1f7eba055f353fad89de2 Mon Sep 17 00:00:00 2001 From: Sandy Xu Date: Thu, 14 Mar 2024 17:28:07 +0800 Subject: [PATCH 3/3] fix --- cmd/object.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/object.go b/cmd/object.go index d3ca28cf5d44..1a281c33f329 100644 --- a/cmd/object.go +++ b/cmd/object.go @@ -139,7 +139,7 @@ func (j *juiceFS) Put(key string, in io.Reader) (err error) { } }() } - f, eno := j.jfs.Open(ctx, tmp, 0666) + f, eno := j.jfs.Open(ctx, tmp, vfs.MODE_MASK_W) if eno == syscall.ENOENT { _ = j.jfs.MkdirAll(ctx, path.Dir(tmp), 0777, j.umask) f, eno = j.jfs.Create(ctx, tmp, 0666, j.umask)