Alex Auvolat
8a2b1dd422
wip: split out layout management from System into separate LayoutManager
2023-11-09 12:55:36 +01:00
Alex Auvolat
523d2ecb95
layout: use separate CRDT for staged layout changes
2023-11-09 11:19:43 +01:00
Alex Auvolat
1da0a5676e
bump garage protocol version tag to 0x000A (0.10)
2023-11-08 19:30:58 +01:00
Alex Auvolat
8dccee3ccf
cluster layout: adapt all uses of ClusterLayout to LayoutHistory
2023-11-08 19:28:36 +01:00
Alex Auvolat
fe9af1dcaa
WIP: garage_rpc: store layout version history
2023-11-08 17:49:06 +01:00
Alex Auvolat
4a9c94514f
avoid using layout_watch in System directly
2023-11-08 16:41:00 +01:00
Alex Auvolat
12d1dbfc6b
remove Ring and use ClusterLayout everywhere
2023-11-08 15:41:24 +01:00
Alex Auvolat
0962313ebd
garage_rpc: reorder functions in layout.rs
2023-11-08 13:13:04 +01:00
Félix Baylac Jacqué
f83fa02193
Add allow_world_readable_secrets option to config file
...
Sometimes, the secret files permissions checks gets in the way. It's
by no mean complete, it doesn't take the Posix ACLs into account among
other things. Correctly checking the ACLs would be too involving (see
https://git.deuxfleurs.fr/Deuxfleurs/garage/issues/658#issuecomment-7102 )
and would likely still fail in some weird chmod settings.
We're adding a new configuration file key allowing the user to disable
this permission check altogether.
The (already existing) env variable counterpart always take precedence
to this config file option. That's useful in cases where the
configuration file is static and cannot be easily altered.
Fixes https://git.deuxfleurs.fr/Deuxfleurs/garage/issues/658
Co-authored-by: Florian Klink <flokli@flokli.de>
2023-10-26 18:25:13 +02:00
Alex
f4d3905d15
Merge pull request 'nix: add clang to flake.nix and shell.nix' ( #664 ) from add-clang into main
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/664
2023-10-26 09:25:53 +00:00
Alex
a0fa50dfcd
Merge pull request 's3 api: refactoring and bug fix in ListObjects' ( #655 ) from fix-list-objects into main
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/655
2023-10-26 09:22:47 +00:00
Alex Auvolat
d50fa2a562
nix: add clang to flake.nix and shell.nix
2023-10-26 11:19:22 +02:00
Alex
4b3dee2ca3
Merge pull request 's3 api: add missing CORS headers to PostObject responses ( fix #609 )' ( #656 ) from fix-cors-post-object into main-0.8.x
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/656
2023-10-26 09:17:14 +00:00
Alex Auvolat
5b1f50be65
jepsen: testing
2023-10-25 14:43:24 +02:00
Alex Auvolat
9df7fa0bcd
jepsen: use 7 nodes
2023-10-25 14:04:39 +02:00
Alex Auvolat
fd85010a40
jepsen: failures with set2 test in --scenario r
2023-10-25 12:13:27 +02:00
Alex Auvolat
cfbfa09d24
jepsen: fix set2 test omg finally this is so stupid
2023-10-25 11:50:16 +02:00
Alex Auvolat
db921cc05f
jepsen: reconfigure nemesis + add db nemesis
2023-10-25 11:41:34 +02:00
Alex Auvolat
4fa2646a75
jepsen: got a failure with set1
2023-10-24 17:45:22 +02:00
Alex Auvolat
d7ab2c639e
jepsen: fix nemesis to actually generate many operations
2023-10-24 16:39:50 +02:00
Alex Auvolat
d13bde5e26
jepsen: set1 and set2 don't fail anymore ??
2023-10-24 15:44:05 +02:00
Alex
75d5d08ee1
Merge pull request 'Ensure increasing version timestamps when writing new object versions' ( #543 ) from increasing-timestamps into main
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/543
2023-10-24 10:07:16 +00:00
Alex Auvolat
d2c365767b
jepsen: more testing
2023-10-24 11:39:45 +02:00
Alex Auvolat
fb6c9a1243
jepsen: update readme
2023-10-20 15:55:09 +02:00
Alex Auvolat
9030c1eef8
jepsen: code path for nemesis final generator
2023-10-20 15:53:46 +02:00
Alex Auvolat
654775308e
jepsen: add cluster reconfiguration nemesis
2023-10-20 15:48:37 +02:00
Alex Auvolat
f5b0972781
jepsen: register crdt read-after-write is fixed with deleteobject patch
2023-10-20 15:00:10 +02:00
Alex Auvolat
c82d91c6bc
DeleteObject: always insert a deletion marker with a bigger timestamp than everything before
2023-10-20 13:56:35 +02:00
Alex Auvolat
8686cfd0b1
s3 api: also ensure increasing timestamps for create_multipart_upload
2023-10-20 13:37:37 +02:00
Alex Auvolat
d148b83d4f
jepsen: reg2 failure seems to happen only with deleteobject
2023-10-20 13:36:48 +02:00
Alex Auvolat
c6cde1f143
remove now-unused key parameter in check_quotas
2023-10-20 13:20:47 +02:00
Alex Auvolat
4b93ce179a
jepsen: errors in reg2 workload under investigation
2023-10-20 12:56:55 +02:00
Alex Auvolat
4ba18ce9cc
jepsen: wip checker for register-like behavior
2023-10-20 12:13:11 +02:00
Alex Auvolat
ac04934dae
s3 api: add missing CORS headers to PostObject responses ( fix #609 )
2023-10-20 10:37:48 +02:00
Alex Auvolat
ef662822c9
jepsen: fix the list-objects call (?)
2023-10-19 23:40:55 +02:00
Alex Auvolat
da8b170748
jepsen: investigating listobjects error
2023-10-19 16:45:24 +02:00
Alex Auvolat
58b0ee1b1a
list objects: prettyness and add asserts
2023-10-19 15:26:17 +02:00
Alex Auvolat
158dc17a06
listobjects: fix panic if continuation token is an empty string
2023-10-19 15:08:47 +02:00
Alex Auvolat
74e50edddd
jepsen: refactoring
2023-10-19 14:34:19 +02:00
Alex
0215b11402
Merge pull request 'Add support for specifying rpc_secret_file
, metrics_token_file
and admin_token_file
using environment variables' ( #643 ) from networkException/garage:token-file-env into main-0.8.x
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/643
2023-10-19 09:33:12 +00:00
networkException
8599051c49
garage: support specifying token / secret as environment variables
...
this patch adds support for specifying the `rpc_secret_file`,
`metrics_token_file` and `admin_token_file` as environment variables.
2023-10-19 03:39:02 +02:00
networkException
4a19ee94bb
garage: fix admin-token description
2023-10-19 03:31:50 +02:00
networkException
c99cb58d71
util: move reading secret file into seperate helper
...
this patch moves the logic to read a secret file (and check for correct
permissions) from `secret_from_file` into a new `read_secret_file`
helper.
2023-10-19 03:29:48 +02:00
networkException
5feb6a1f64
docs: add documentation for specifying token / secret file as environment variables
2023-10-19 03:28:44 +02:00
Alex Auvolat
b3bf16ee27
make jepsen test more robust: handle errors and timeouts, fixed access key
2023-10-18 17:51:34 +02:00
Alex Auvolat
d146cdd5b6
cargo fmt
2023-10-18 16:38:26 +02:00
Alex Auvolat
3d6ed63824
check_quotas: avoid re-fetching object from object table
2023-10-18 16:36:48 +02:00
Alex Auvolat
45b0453d0f
Ensure increasing version timestamps in PutObject
2023-10-18 16:31:50 +02:00
Alex Auvolat
ddd3de7fce
refactor jepsen code
2023-10-18 16:30:45 +02:00
Alex Auvolat
84d43501ce
refactor jepsen setup logic
2023-10-18 15:34:12 +02:00