Denis Kirillov
6617adc22b
[ #185 ] Use correct object size when object is combined or encrypted
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-08-24 18:03:08 +03:00
Denis Kirillov
8898c2ec08
[ #185 ] Add tests for list multipart uploads
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-08-24 18:01:08 +03:00
Roman Loginov
8efcc957ea
[ #96 ] Move log messages to constants
...
/ DCO (pull_request) Successful in 1m35s
Details
/ Builds (1.19) (pull_request) Successful in 2m14s
Details
/ Builds (1.20) (pull_request) Successful in 2m9s
Details
/ Vulncheck (pull_request) Successful in 5m39s
Details
/ Lint (pull_request) Successful in 2m49s
Details
/ Tests (1.19) (pull_request) Successful in 7m34s
Details
/ Tests (1.20) (pull_request) Successful in 1m44s
Details
Signed-off-by: Roman Loginov <r.loginov@yadro.com>
2023-08-23 18:32:31 +03:00
Denis Kirillov
6b728fef87
[ #192 ] Add tests to make sure client_cut flag is passed to sdk
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-08-23 06:26:55 +00:00
Denis Kirillov
6b1f365e65
[ #192 ] Support client cut
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-08-23 06:26:55 +00:00
Denis Kirillov
fcf1c45ad2
[ #188 ] Fix url escaping
...
/ Vulncheck (pull_request) Successful in 2m41s
Details
/ Builds (1.19) (pull_request) Successful in 3m51s
Details
/ Builds (1.20) (pull_request) Successful in 3m22s
Details
/ DCO (pull_request) Successful in 5m9s
Details
/ Lint (pull_request) Successful in 5m22s
Details
/ Tests (1.19) (pull_request) Successful in 5m39s
Details
/ Tests (1.20) (pull_request) Successful in 5m18s
Details
Url escaping has already been done in `net/http/request.go`
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-08-22 11:27:39 +03:00
Artem Tataurov
94a42fa273
[ #51 ] Update frostfs-sdk-go
...
Signed-off-by: Artem Tataurov <a.tataurov@yadro.com>
2023-08-17 14:26:25 +03:00
Roman Loginov
40d7f844e3
[ #137 ] Refactor context data retrievers
...
Signed-off-by: Roman Loginov <r.loginov@yadro.com>
2023-08-16 14:05:38 +00:00
Denis Kirillov
6b109eee92
[ #182 ] Fix parsing signed headers in presigned urls
...
/ Vulncheck (pull_request) Failing after 3s
Details
/ Builds (1.19) (pull_request) Successful in 8m22s
Details
/ Builds (1.20) (pull_request) Failing after 3s
Details
/ Lint (pull_request) Successful in 9m51s
Details
/ Tests (1.19) (pull_request) Failing after 3s
Details
/ Tests (1.20) (pull_request) Failing after 2s
Details
/ DCO (pull_request) Failing after 2s
Details
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-08-08 13:04:53 +03:00
Denis Kirillov
18878b66d3
[ #175 ] Use gate owner as object owner
...
/ DCO (pull_request) Failing after 3s
Details
/ Vulncheck (pull_request) Failing after 2s
Details
/ Builds (1.19) (pull_request) Failing after 3s
Details
/ Builds (1.20) (pull_request) Successful in 7m47s
Details
/ Lint (pull_request) Failing after 4s
Details
/ Tests (1.19) (pull_request) Successful in 8m8s
Details
/ Tests (1.20) (pull_request) Failing after 3s
Details
This is required because node check session token owner
TrueCloudLab/frostfs-node#528
For client cut TrueCloudLab/frostfs-sdk-go#114
such owner will be gate owner
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-08-08 12:22:33 +03:00
Denis Kirillov
fe897ec588
[ #178 ] wrapReader: Fix goroutine leak
...
/ Vulncheck (pull_request) Successful in 59s
Details
/ Builds (1.19) (pull_request) Successful in 1m28s
Details
/ Builds (1.20) (pull_request) Successful in 1m19s
Details
/ DCO (pull_request) Successful in 45s
Details
/ Lint (pull_request) Successful in 1m45s
Details
/ Tests (1.19) (pull_request) Successful in 7m51s
Details
/ Tests (1.20) (pull_request) Successful in 1m43s
Details
In case of error in FrostFS.CreateObject wrapped reader
can be blocked because of synchronous pipe. We have to read out all payload in such case.
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-08-01 17:59:34 +03:00
Denis Kirillov
52931663e1
[ #176 ] multipart: Replace part on re-upload
...
/ Builds (1.19) (pull_request) Successful in 2m57s
Details
/ Builds (1.20) (pull_request) Successful in 2m36s
Details
/ DCO (pull_request) Successful in 1m15s
Details
/ Vulncheck (pull_request) Successful in 5m15s
Details
/ Lint (pull_request) Successful in 3m50s
Details
/ Tests (1.19) (pull_request) Successful in 8m14s
Details
/ Tests (1.20) (pull_request) Successful in 3m17s
Details
We want to have exactly one object and tree node for each part number
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-21 16:20:04 +03:00
Denis Kirillov
1a09041cd1
[ #63 ] Simplify multiObjectReader and add tests
...
/ DCO (pull_request) Successful in 1m19s
Details
/ Vulncheck (pull_request) Successful in 2m31s
Details
/ Builds (1.19) (pull_request) Successful in 2m51s
Details
/ Builds (1.20) (pull_request) Successful in 2m34s
Details
/ Lint (pull_request) Successful in 5m51s
Details
/ Tests (1.19) (pull_request) Successful in 9m36s
Details
/ Tests (1.20) (pull_request) Successful in 10m20s
Details
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-20 14:00:15 +03:00
Denis Kirillov
631b7f67b4
[ #63 ] multipart: Log upload id for every failed request
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-20 14:00:15 +03:00
Denis Kirillov
bcf5a85aab
[ #63 ] multipart: Fix copying
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-20 14:00:15 +03:00
Denis Kirillov
ad81b599dd
[ #63 ] Add fast multipart upload
...
Add new flag to object tree meta `isCombined` that means
the object payload is list of parts that forms real payload.
Set this attribute when complete multipart upload not to do unnecessary copying.
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-20 14:00:15 +03:00
Denis Kirillov
361d10cc78
[ #174 ] Fix query for listing multipart uploads
...
/ Builds (1.19) (pull_request) Successful in 3m2s
Details
/ Builds (1.20) (pull_request) Successful in 2m50s
Details
/ DCO (pull_request) Successful in 3m59s
Details
/ Vulncheck (pull_request) Successful in 2m39s
Details
/ Lint (pull_request) Successful in 3m56s
Details
/ Tests (1.19) (pull_request) Successful in 3m5s
Details
/ Tests (1.20) (pull_request) Successful in 3m12s
Details
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-20 12:30:17 +03:00
Denis Kirillov
62e6b49254
[ #174 ] Log unmatched requests
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-20 12:30:17 +03:00
Denis Kirillov
80c4982bd4
[ #174 ] Add router tests
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-20 12:30:17 +03:00
Denis Kirillov
73ed3f7782
[ #174 ] Fix router filter query matching
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-20 12:30:17 +03:00
Denis Kirillov
6e3595e35b
[ #174 ] Fix object keys with slashes in chi
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-20 12:30:17 +03:00
Denis Kirillov
b59aa06637
[ #146 ] Add kludge.bypass_content_encoding_check_in_chunks flag
...
/ Builds (1.19) (pull_request) Successful in 3m0s
Details
/ Builds (1.20) (pull_request) Successful in 2m50s
Details
/ DCO (pull_request) Failing after 1m9s
Details
/ Vulncheck (pull_request) Successful in 1m20s
Details
/ Lint (pull_request) Successful in 7m50s
Details
/ Tests (1.19) (pull_request) Successful in 3m1s
Details
/ Tests (1.20) (pull_request) Successful in 3m21s
Details
Flag allows to skip checking `Content-Encoding` for `aws-chunked` value
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-18 14:49:52 +03:00
Denis Kirillov
d62aa7b979
[ #146 ] Fix preconditions: trim quotes in etags
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-18 14:49:03 +03:00
Denis Kirillov
751a9be7cc
[ #146 ] Move getting chunk payload reader to separate function
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-18 14:49:03 +03:00
Denis Kirillov
14ef9ff091
[ #158 ] Separate init object reader from read itself
...
/ Vulncheck (pull_request) Successful in 1m40s
Details
/ Builds (1.19) (pull_request) Successful in 2m54s
Details
/ Builds (1.20) (pull_request) Successful in 2m39s
Details
/ DCO (pull_request) Successful in 3m48s
Details
/ Lint (pull_request) Successful in 3m32s
Details
/ Tests (1.19) (pull_request) Successful in 2m38s
Details
/ Tests (1.20) (pull_request) Successful in 2m55s
Details
To be able to handle cases and return appropriate http status code
when object missed in storage but gate cache contains its metadata
we need write code after init object reader.
So we separate init reader from actual reading.
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-11 17:32:05 +03:00
Denis Kirillov
fc90981c03
[ #149 ] Update inner imports after moving middlewares
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-11 17:25:09 +03:00
Denis Kirillov
83cdfbee78
[ #149 ] Move middlewares to separate package
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-11 17:25:09 +03:00
Denis Kirillov
37f2f468fe
[ #149 ] Add host bucket router
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-11 17:25:09 +03:00
Denis Kirillov
e30a452cdb
[ #149 ] Use chi instead of gorilla mux
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-11 17:25:09 +03:00
Denis Kirillov
7f708b3a2d
[ #111 ] auth: Get log from real request context
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-06 11:57:04 +00:00
Denis Kirillov
d531b13866
[ #143 ] Add more context to some s3 errors
...
/ DCO (pull_request) Successful in 1m18s
Details
/ Vulncheck (pull_request) Successful in 1m50s
Details
/ Lint (pull_request) Successful in 3m1s
Details
/ Tests (1.19) (pull_request) Successful in 2m47s
Details
/ Tests (1.20) (pull_request) Successful in 3m2s
Details
/ Builds (1.19) (pull_request) Successful in 2m54s
Details
/ Builds (1.20) (pull_request) Successful in 7m58s
Details
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-06-30 12:08:33 +03:00
Denis Kirillov
f921bc8af5
[ #143 ] Fix typo
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-06-30 12:04:52 +03:00
Denis Kirillov
be03c5178f
[ #143 ] Fix NoSuchKey error on get/head
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-06-30 12:04:52 +03:00
Denis Kirillov
9df8695463
[ #143 ] Fix transformToS3Error function
...
/ Builds (1.19) (pull_request) Successful in 3m11s
Details
/ Builds (1.20) (pull_request) Successful in 2m57s
Details
/ DCO (pull_request) Successful in 4m7s
Details
/ Lint (pull_request) Successful in 2m25s
Details
/ Tests (1.19) (pull_request) Successful in 3m9s
Details
/ Tests (1.20) (pull_request) Successful in 3m18s
Details
/ Vulncheck (pull_request) Successful in 1m15s
Details
Unwrap error before checking for s3 error
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-06-21 17:16:40 +03:00
Artem Tataurov
614d703726
[ #106 ] Add chunk uploading
...
/ DCO (pull_request) Successful in 1m4s
Details
/ Vulncheck (pull_request) Successful in 1m50s
Details
/ Builds (1.19) (pull_request) Successful in 9m1s
Details
/ Builds (1.20) (pull_request) Successful in 2m20s
Details
/ Lint (pull_request) Successful in 10m19s
Details
/ Tests (1.19) (pull_request) Successful in 2m45s
Details
/ Tests (1.20) (pull_request) Successful in 3m19s
Details
Signed-off-by: Artem Tataurov <a.tataurov@yadro.com>
2023-06-21 10:23:57 +03:00
Denis Kirillov
23593eee3d
[ #111 ] Use request scope logger
...
/ Lint (pull_request) Failing after 32s
Details
/ Tests (1.19) (pull_request) Failing after 32s
Details
/ Tests (1.20) (pull_request) Failing after 32s
Details
/ Builds (1.19) (pull_request) Failing after 32s
Details
/ Builds (1.20) (pull_request) Failing after 32s
Details
/ Vulncheck (pull_request) Failing after 57s
Details
/ DCO (pull_request) Failing after 1m0s
Details
Store child zap logger with request scope fields into context.
Request scoped fields: request_id, api/method, bucket, object
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-06-19 13:54:51 +03:00
Denis Kirillov
84358f6742
[ #135 ] authmate: Support CRDT GSet for credentials
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-06-16 09:42:49 +03:00
Denis Kirillov
7a380fa46c
[ #135 ] frostfs: Add SEARCH operation
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-06-16 09:42:41 +03:00
Denis Kirillov
462589fc0c
[ #103 ] Return 504 http code on timeout errors
...
/ Vulncheck (pull_request) Successful in 1m42s
Details
/ Lint (pull_request) Successful in 3m31s
Details
/ Tests (1.19) (pull_request) Successful in 2m57s
Details
/ Tests (1.20) (pull_request) Successful in 3m4s
Details
/ Builds (1.19) (pull_request) Successful in 2m35s
Details
/ Builds (1.20) (pull_request) Successful in 2m39s
Details
/ DCO (pull_request) Successful in 1m7s
Details
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-06-14 09:16:21 +03:00
Denis Kirillov
9dabaf6ecd
[ #133 ] Use tree pool from SDK
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-06-09 09:34:04 +03:00
Pavel Pogodaev
4e1fd9589b
[ #84 ] add tracing support
...
Signed-off-by: Pavel Pogodaev <p.pogodaev@yadro.com>
2023-06-06 10:25:27 +03:00
Denis Kirillov
4a6e3a19ce
[ #125 ] Handle negative Content-Length on put
...
Add computing actual object size during calculating hash on put.
Use this actual value to save in tree and cache
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-06-02 14:16:19 +00:00
Denis Kirillov
b445f7bbf9
[ #125 ] api/auth: DisableURIPathEscaping for presign
...
Don't use escaping when presign url.
Escape manually before.
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-06-02 14:16:19 +00:00
Alexey Vanin
868edfdb31
[ #78 ] Add test of bucket removal with object not found error
...
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2023-06-01 16:13:28 +03:00
Alexey Vanin
34bbbcf1ed
[ #78 ] Do not show objects missing from object service
...
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2023-06-01 16:13:28 +03:00
Alexey Vanin
fae03c2b50
[ #78 ] Process 'not found' error when object exists in tree
...
When object exists in tree but missing in storage, we can't remove
bucket. While storage node does not sync tree service and object
service, the only way to delete such broken bucket is to ignore
'object not found' error, clear cache and do not include missing
objects in the listing result.
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2023-06-01 15:31:22 +03:00
Alexey Vanin
81e860481d
[ #122 ] Fix linter warnings
...
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2023-05-31 19:43:03 +03:00
Artem Tataurov
a0f0d792b8
[ #78 ] layer: Clean up already removed object from tree
...
Signed-off-by: Artem Tataurov <a.tataurov@yadro.com>
2023-05-24 17:42:46 +03:00
Artem Tataurov
9f186d9aba
[ #104 ] app: Reload copies numbers on SIGHUP
...
Signed-off-by: Artem Tataurov <a.tataurov@yadro.com>
2023-05-23 13:19:58 +03:00
Alexey Vanin
3fbad97ae4
[ #1 ] Rename files with mentions of previous project
...
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2023-05-19 07:30:04 +00:00