yhjiango
9eb43bb51c
feat(objectnode): support post object
...
Signed-off-by: yhjiango <jiangyunhua@oppo.com>
2023-10-31 15:25:28 +08:00
yhjiango
26f6923afd
feat(objectnode): support post object
...
Signed-off-by: yhjiango <jiangyunhua@oppo.com>
2023-10-31 11:03:49 +08:00
tangdeyi
831d9103fb
fix(objectnode): fix delete object 5xx error
...
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-10-24 17:44:01 +08:00
tangdeyi
dd46c24873
fix(objectnode): fix read body entirely into memory and without an upper boundary
...
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-10-20 17:06:26 +08:00
tangdeyi
fcdeaebb69
fix(objectnode): lifecycle skip locked object
...
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-10-13 15:30:37 +08:00
tangdeyi
b24525a027
fix(objectnode): fix superfluous writeheader
...
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-08-31 16:36:14 +08:00
tangdeyi
14f0f67c73
feat(objnode): s3 api qos
...
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-08-31 16:36:14 +08:00
tangdeyi
adb37a02ee
fix(objectnode): fix listobjectv1 err with delimiter
...
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-08-30 20:05:32 +08:00
yhjiango
4401624f96
feat(objectnode): s3 sts and signature auth
...
1. sts federation token
2. signature auth code refactor
Signed-off-by: yhjiango <jiangyunhua@oppo.com>
2023-08-30 20:05:32 +08:00
tangdeyi
d11e9142a2
feat(objectnode): object lock
...
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-08-30 20:05:32 +08:00
yhjiango
13dfb462f3
fix(objectnode): save the ACL of the object uploaded by the non-volume owner
...
Signed-off-by: yhjiango <jiangyunhua@oppo.com>
2023-08-09 14:01:52 +08:00
tangdeyi
7613a0fadb
refactor(objectnode): refactor some redundant code
...
Signed-off-by: tangdeyi <deyitang94@gmail.com>
2023-08-09 14:01:52 +08:00
yhjiango
7339d6a6d7
feat(objectnode): reduce acl meta storage space usage
...
Signed-off-by: yhjiango <jiangyunhua@oppo.com>
2023-08-09 14:01:52 +08:00
tangdeyi
b036d1fa7c
fix(objnode): fix code scan error
...
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-08-04 18:08:38 +08:00
tangdeyi
7df19f730a
fix(objectnode): volume view cache
...
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-05-18 10:48:57 +08:00
tangdeyi
b27a7c4ba0
fix(objectnode): listobject bugfix
...
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-05-18 10:48:57 +08:00
yhjiango
2b6b00126a
fix(objectnode): error adjustment in complete multipart
...
Signed-off-by: yhjiango <jiangyunhua@oppo.com>
2023-05-18 10:48:57 +08:00
yhjiango
0a4830dd93
fix(objectnode): fix the list multipart uploads and dir object inaccessible
...
Signed-off-by: yhjiango <jiangyunhua@oppo.com>
2023-05-18 10:48:57 +08:00
yhjiango
a56250817d
fix(objectnode): fix the volume load call and error return
...
Signed-off-by: yhjiango <jiangyunhua@oppo.com>
2023-05-18 10:48:57 +08:00
tangdeyi
862fde677a
fix(objectnode):
...
1. MultipartUpload with nonexistent uploadId return NoSuchUploadID
2. NoSuchBucket err handle
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-05-18 10:48:57 +08:00
yhjiango
e2112e892a
fix(objectnode): fix the copy object
...
Signed-off-by: yhjiango <jiangyunhua@oppo.com>
2023-05-18 10:48:57 +08:00
yhjiango
e5989dec41
fix(objectnode): fix md5 check failure when uploading keys with all empty characters
...
Signed-off-by: yhjiango <jiangyunhua@oppo.com>
2023-05-18 10:48:57 +08:00
yhjiango
2011f3d4b1
fix(objectnode): fix the delete objects
...
Signed-off-by: yhjiango <jiangyunhua@oppo.com>
2023-05-18 10:48:57 +08:00
yhjiango
0affc88413
fix(objectnode): fully compatible with s3
...
Signed-off-by: yhjiango <jiangyunhua@oppo.com>
2023-05-18 10:48:57 +08:00
tangdeyi
831ea00d5d
fix(objectnode): enhance s3 compatibility
...
1.CORS supports preflight request;
2.S3-compatible err reply;
3.Small parts upload bugfix;
4.Specific status code when panic;
5.UploadPartCopy;
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-05-18 10:48:57 +08:00
tangdeyi
9f0d7810a0
feature: bucket policy fully compatible with s3
...
Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2023-05-18 10:48:57 +08:00
Patrick Wu
4e61b2801c
fix: fix problem when copying object between different buckets
...
Signed-off-by: Patrick Wu <wuchunhuan@oppo.com>
2023-03-16 19:43:27 +08:00
Patrick Wu
c8bf55ae69
S3 bugfix
...
Signed-off-by: Patrick Wu <wuchunhuan@oppo.com>
2023-03-04 16:13:35 +08:00
Patrick Wu
6dfb9380c6
add meta cache for objectnode
...
Signed-off-by: Patrick Wu <wuchunhuan@oppo.com>
2023-03-04 16:13:35 +08:00
Huweicai
d116b7081b
fix: header 'x-amz-copy-source' may be url encoded
...
Signed-off-by: Huweicai <i@huweicai.com>
2022-12-08 10:38:05 +08:00
leonrayang
9a30b9f884
update: update to CubeFS
...
Signed-off-by: leonrayang <chl696@sina.com>
2022-08-22 18:16:09 +08:00
leonrayang
2970e2c3d1
update. go import path change from chubaofs to cubefs
...
Signed-off-by: leonrayang <chl696@sina.com>
2022-01-25 18:17:02 +08:00
justice
10ebbd6760
fix: fix objectnode get object range 0-
...
Signed-off-by: justice <justice_103@126.com>
2022-01-04 11:42:29 +08:00
Shuoran Liu
1cb6e0bbbd
fix: s3 get range zero to zero EOF
...
Signed-off-by: Shuoran Liu <shuoranliu@gmail.com>
2021-12-24 11:37:58 +08:00
Belhorma Bendebiche
972aa4cfcf
fix: handle bytes=0- correctly in objectnode
...
Some clients (e.g. docker registry) send a get to fetch the whole file
by specifying `bytes=0-` as the range. In this case, ChubaoFS will set
the range to 0-0 and the `Content-Length` to 1 (upper - lower + 1). It
will then error out when writing the object, since it will write more
than the specified `Content-Length`.
As a simple fix, we can treat a rangeUpper of 0 the same as max, which
should result in correct behavior.
Signed-off-by: Belhorma Bendebiche <amro@bndb.sh>
2021-12-23 16:43:59 +08:00
zhuzhengyi001
4875a7009a
Enhancement: add subdir authorized check for objectnode
...
Signed-off-by: zhuzhengyi001 <zhuzhengyi001@ke.com>
2021-08-27 19:29:23 +08:00
Mofei Zhang
fb9750c480
Fix: key encoding issue of S3 ListObjects API.
...
Parse parameter 'encoding-type' from request. It this parameter
specified and match with 'url', then encode content keys by using url
encoding function.
Signed-off-by: Mofei Zhang <mofei2816@gmail.com>
2020-09-27 18:20:27 +08:00
Shuoran Liu
1054c00fd8
feature: introduce subdir permissions
...
Originally the permission control for users are on volume level. This
commit introduces subdir level permission control.
Signed-off-by: Shuoran Liu <shuoranliu@gmail.com>
2020-08-14 20:48:05 +08:00
Mofei Zhang
dd45cd8ac5
Enhancement: error handling of ObjectNode
...
- Response Http400 after got unexpected EOF error when reading data from
request connection.
- Fix ldflag issue from 'cli/build.sh'.
- Do not write failure status code if request connect closed by peer.
Signed-off-by: Mofei Zhang <mofei2816@gmail.com>
2020-08-06 12:12:50 +08:00
yuboLee
ce4f466f0f
Fix: some bugs about object tagging and bucket tagging
...
Signed-off-by: yuboLee <pangbolee@gmail.com>
2020-07-10 12:17:40 +08:00
yuboLee
9888905791
Fix: Change the logic of listing multipart uploads while just having upload id marker.
...
Signed-off-by: yuboLee <pangbolee@gmail.com>
2020-06-17 14:01:33 +08:00
wenjia322
5b587bf0ce
enhancement: add 'Expires' and 'Cache-Control' when putObject/copyObject/getObject/headObject
...
Signed-off-by: wenjia322 <buaa1214wwj@126.com>
2020-05-29 10:57:13 +08:00
张墨飞
0bbb11014b
Enhancement: case sensitive content disposition header in response
...
Signed-off-by: 张墨飞 <zhangmofei@jd.com>
2020-05-21 17:39:20 +08:00
张墨飞
a87d8dcfcb
Merge branch 'master' into pr/574
2020-05-21 17:37:36 +08:00
yuboLee
6eb165c895
Add support for header Content-Disposition
...
Signed-off-by: yuboLee <pangbolee@gmail.com>
2020-05-21 16:00:38 +08:00
Mofei Zhang
df4b7f9a42
Fix: parallel-safe issue in conn pool and metanode conn serve
...
1. Fix: parallel-safe issue in conn pool and metanode conn serve
2. Fix: nil pointer issue when list parts for non-exist uploadId
3. Enhancement: validate read size while read from connnect.
4. Enhancement: clean up useless data on failure while upload part.
5. Enhancement: generate ETag if do not exist when listing.
6. Enhancement: include error message when formatting packet to string.
7. Enhancement: improve compatile with old version SDK.
8. Enhancement: success when retry add exist multipart part.
Signed-off-by: Mofei Zhang <mofei2816@gmail.com>
Signed-off-by: 张墨飞 <zhangmofei@jd.com>
2020-05-21 12:28:18 +08:00
yuboLee
b74bf88b2f
Fix: rewrite copy object function
...
Signed-off-by: yuboLee <pangbolee@gmail.com>
2020-05-19 11:19:02 +08:00
yuboLee
14d3d64ab4
Enhancement: add support for parallel download
...
Signed-off-by: yuboLee <pangbolee@gmail.com>
2020-05-08 17:39:05 +08:00
Mofei Zhang
01240bd867
Enhancement: partial support user-defined metadata
...
The PutObject interface supports setting user-defined metadata. The
GetObject and HeadObject interfaces can correctly return the stored
user-defined metadata.
Signed-off-by: Mofei Zhang <mofei2816@gmail.com>
2020-05-06 00:52:04 +08:00
Mofei Zhang
a4ec2c88d5
Enhancement: improve tagging storage and add tests
...
1. Add tests for tagging operations.
2. Support setup tagging when put an object.
3. Fix routing issue on DeleteObjectTagging interface.
4. Improve tagging encoding for storage.
Signed-off-by: Mofei Zhang <mofei2816@gmail.com>
2020-05-05 22:38:34 +08:00