1488 Commits

Author SHA1 Message Date
Alex Auvolat 7c86ff6c37 [disable-scrub] implement a disable_scrub configuration option 2024-03-14 17:01:16 +01:00
Alex 81191d2d92 Merge pull request 'Remove Sled' (#767) from rm-sled into next-0.10
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/767
2024-03-12 10:45:57 +00:00
Alex Auvolat 2795b53b8b [rm-sled] factorize some code in sqlite backend 2024-03-12 11:15:26 +01:00
Alex Auvolat 32aa246300 [rm-sled] Make proper use of pinning in LMDB adapter + comment unsafe 2024-03-08 17:39:17 +01:00
Alex Auvolat b942949940 [rm-sled] Implement iterators in sqlite & lmdb transactions
with way too much unsafe code
2024-03-08 16:38:01 +01:00
Alex Auvolat 66c23890c1 [rm-sled] Implement some missing functionality in garage_db 2024-03-08 16:02:58 +01:00
Alex Auvolat 05c92204ec [rm-sled] Remove counted_tree_hack 2024-03-08 15:09:57 +01:00
Alex 2128b5febd Merge pull request 'Remove migration path from Garage v0.5' (#766) from rm-migration into next-0.10
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/766
2024-03-08 13:43:42 +00:00
Alex Auvolat 44454aac01 [rm-sled] Remove the Sled database engine 2024-03-08 14:11:02 +01:00
Alex Auvolat 1ace34adbb Merge branch 'main' into next-0.10 2024-03-08 13:57:10 +01:00
Alex Auvolat f537f76681 [rm-migration] Remove migration path from Garage v0.5 2024-03-08 13:24:47 +01:00
Alex Auvolat ec34728b27 [factor-db-open] Combine logic for opening db engines 2024-03-08 12:58:17 +01:00
Alex 20c0b4ffb2 Merge pull request 'ReplicationMode -> ConsistencyMode+ReplicationFactor' (#750) from yuka/garage:split-consistency-mode into next-0.10
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/750
2024-03-07 16:32:52 +00:00
Alex Auvolat 3fcb54e3cf [sse-c] Remove special case for Content-Type header 2024-03-07 15:43:48 +01:00
Alex Auvolat fa4878bad6 [sse-c] Testing for SSE-C encryption 2024-03-07 15:43:48 +01:00
Alex Auvolat 57acc60082 [sse-c] Implement SSE-C encryption 2024-03-07 15:43:47 +01:00
Alex Auvolat fe2dc5d51c Merge branch 'main' into next-0.10 2024-03-07 14:00:34 +01:00
Alex Auvolat eab2b81be2 [unicode-headers] allow utf-8 in headers + add test for object metadata 2024-03-07 13:42:01 +01:00
Yureka c1769bbe69 ReplicationMode -> ConsistencyMode+ReplicationFactor 2024-03-07 12:45:33 +01:00
Yureka 6760895926 refactor: remove max_write_errors and max_faults 2024-03-04 18:39:56 +01:00
Alex Auvolat bbde9bc912 Merge branch 'main' into next-0.10 2024-03-04 15:56:10 +01:00
Alex 3168bb34a0 Merge pull request 'add request context helper' (#751) from yuka/garage:req-ctx into main
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/751
2024-03-04 14:51:05 +00:00
Alex Auvolat 8670140358 [rel-0.9.3] Bump version to 0.9.3 2024-03-04 14:00:55 +01:00
Alex Auvolat c8e416aaa5 [test-presigned] Use a HeaderMap type for QueryMap 2024-03-04 13:33:14 +01:00
Yureka fb55682c66 add request context helper 2024-03-04 13:26:39 +01:00
asonix c94bf45cba Store original-cased query keys alongside query values 2024-03-04 13:03:27 +01:00
asonix 7c4f3473af Lowercase query parameter keys when parsing 2024-03-04 13:03:16 +01:00
Alex Auvolat b6a91e549b [test-presigned] Add API test for presigned requests 2024-03-04 13:02:07 +01:00
Alex Auvolat 6a7623e90d [rel-0.9.2] Bump version to v0.9.2 2024-03-01 16:54:39 +01:00
Alex Auvolat a36248a169 [fix-signed-headers] aws signatures v4: don't actually check Content-Type is signed
This page of the AWS docs indicate that Content-Type should be part of
the CanonicalHeaders (and therefore SignedHeaders) strings in signature
calculation:

https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-header-based-auth.html

However, testing with Minio Client revealed that it did not sign the
Content-Type header, and therefore we broke CI by expecting it to be
signed. With this commit, we don't mandate Content-Type to be signed
anymore, for better compatibility with the ecosystem. Testing against
the official behavior of S3 on AWS has not been done.
2024-03-01 13:12:18 +01:00
Alex Auvolat 6d33e721c4 [fix-auth-ct-eq] use consant time comparison for awsv4 signature verification 2024-02-29 13:07:18 +01:00
Alex Auvolat eaac4924ef [fix-auth-ct-eq] use argon2 hashing and verification for admin/metrics token checking 2024-02-29 13:07:15 +01:00
Alex Auvolat 90cab5b8f2 [fix-presigned] add comments and reorganize 2024-02-28 12:24:21 +01:00
Alex Auvolat e9f759d4cb [fix-presigned] presigned requests: allow x-amz-* query parameters to stand in for equivalent headers 2024-02-28 12:24:21 +01:00
Alex Auvolat a5e4bfeae9 [fix-presigned] write comments 2024-02-28 12:24:21 +01:00
Alex Auvolat 4c1d42cc5f [fix-presigned] add back anonymous request code path + refactoring 2024-02-28 12:24:21 +01:00
Alex Auvolat 2efa9c5a1a [fix-presigned] PostObject: verify X-Amz-Algorithm 2024-02-28 12:24:20 +01:00
Alex Auvolat a8cb8e8a8b [fix-presigned] split presigned/normal signature verification 2024-02-28 12:24:13 +01:00
Alex Auvolat 4b978b7533 Merge branch 'main' into next-0.10 2024-02-26 18:55:24 +01:00
Alex Auvolat b76c0c102e [refactor-put] add ordering tag to blocks being sent to storage nodes 2024-02-26 18:35:11 +01:00
Alex Auvolat babccd2ad3 [refactor-put] send several blocks in parallel to storage nodes 2024-02-26 18:22:37 +01:00
Alex Auvolat 3fe94cc14f [refactor-put] rewrite read_and_put_block as a series of steps with channels 2024-02-26 17:55:37 +01:00
Alex Auvolat 3692af7052 Merge branch 'main' into next-0.10 2024-02-23 18:28:05 +01:00
Alex Auvolat d640102b76 [split_getobject] GetObject: split out handle_get_full 2024-02-23 18:14:50 +01:00
Quentin Dufour 8b35a946d9 Allow external HTTP client 2024-02-23 17:09:47 +01:00
Alex Auvolat 916c67ccf4 Merge branch 'main' into next-0.10 2024-02-23 16:50:34 +01:00
Alex Auvolat 6ee691e65f [refactor-block] simplify some more 2024-02-23 12:50:10 +01:00
Alex Auvolat e9c42bca34 [refactor-block] add DataBlockStream type 2024-02-23 12:22:29 +01:00
Alex Auvolat cd1069c1d4 [refactor-block] refactor DataBlock and DataBlockPath 2024-02-23 12:15:52 +01:00
Alex Auvolat 07c7895948 [refactor-block] simplify rpc_get_block 2024-02-23 11:54:40 +01:00