Commit graph

1954 commits

Author SHA1 Message Date
Quentin e3cd6ed530
port GetLayout and AddLayout 2023-11-22 15:24:30 +01:00
Quentin 9b24d7c402
Upgrade GetNodes 2023-11-22 14:25:04 +01:00
Alex 36bd21a148 Merge pull request 'Allow 0 as a part number marker' (#670) from asonix/garage:main into main
Reviewed-on: Deuxfleurs/garage#670
2023-11-22 10:33:31 +00:00
Quentin d1d1940252
Health info message now advertises API v1 2023-11-22 09:28:50 +01:00
Quentin c63b446989
skeleton for api v1 2023-11-22 08:58:09 +01:00
asonix 92fd899fb6 Allow 0 as a part number marker 2023-11-21 17:39:51 -06:00
Alex 92dd2bbe15 jepsen: nlnet task3a seems to fix things 2023-11-16 18:09:13 +01:00
Alex 3ecd14b9f6
table: implement write sets for insert_many 2023-11-16 16:41:45 +01:00
Alex 22f38808e7
rpc_helper: don't use tokio::spawn for individual requests 2023-11-16 16:34:01 +01:00
Alex 707442f5de
layout: refactor digests and add "!=" assertions before epidemic bcast 2023-11-16 13:51:40 +01:00
Alex ad5c6f779f
layout: split helper in separate file; more precise difference tracking 2023-11-16 13:26:43 +01:00
Alex 18e5811159
jepsen: add patch and use more complete names 2023-11-16 12:57:21 +01:00
Alex d4df03424f
layout: fix test 2023-11-15 15:56:57 +01:00
Alex 33c8a489b0
layou: implement ack locking 2023-11-15 15:40:44 +01:00
Alex 393c4d4515
layout: add helper for cached/external values to centralize recomputation 2023-11-15 14:20:50 +01:00
Alex 65066c7064
layout: wip cache global mins 2023-11-15 13:28:30 +01:00
Alex acd49de9f9
rpc: fix write set quorums 2023-11-15 13:07:42 +01:00
Alex 46007bf01d
integration test: print stdout and stderr on subcommand crash 2023-11-15 12:56:52 +01:00
Alex b3e729f4b8
layout history merge: rm invalid versions when valid versions are added 2023-11-15 12:15:58 +01:00
Alex 7ef2c23120
layout: fix test 2023-11-14 15:45:01 +01:00
Alex 90e1619b1e
table: take into account multiple write sets in inserts 2023-11-14 15:40:46 +01:00
Alex 3b361d2959
layout: prepare for write sets 2023-11-14 14:28:16 +01:00
Alex 866196750f
system: add todo wrt new layout 2023-11-14 13:36:58 +01:00
Alex 83a11374ca
layout: fixes in schema 2023-11-14 13:29:26 +01:00
Alex 1aab1f4e68
layout: refactoring of all_nodes 2023-11-14 13:12:32 +01:00
Alex 8e292e06b3
layout: some refactoring of nongateway nodes 2023-11-14 12:48:38 +01:00
Alex 9a491fa137
layout: fix test 2023-11-11 13:10:59 +01:00
Alex df24bb806d
layout/sync: fix bugs and add tracing 2023-11-11 12:44:27 +01:00
Alex ce89d1ddab
table sync: adapt to new layout history 2023-11-11 12:08:32 +01:00
Alex df36cf3099
layout: add helpers to LayoutHistory and prepare integration with Table 2023-11-09 16:32:31 +01:00
Alex 9d95f6f704
layout: fix tracker bugs 2023-11-09 15:52:45 +01:00
Alex bad7cc812e
layout admin: add missing calls to update_hash 2023-11-09 15:42:10 +01:00
Alex 03ebf18830
layout: begin managing the update tracker values 2023-11-09 15:31:59 +01:00
Alex 94caf9c0c1
layout: separate code path for synchronizing update trackers only 2023-11-09 14:53:34 +01:00
Alex bfb1845fdc
layout: refactor to use a RwLock on LayoutHistory 2023-11-09 14:12:05 +01:00
Alex 19ef1ec8e7
layout: more refactoring 2023-11-09 13:34:14 +01:00
Alex 8a2b1dd422
wip: split out layout management from System into separate LayoutManager 2023-11-09 12:55:36 +01:00
Alex 523d2ecb95
layout: use separate CRDT for staged layout changes 2023-11-09 11:19:43 +01:00
Alex 1da0a5676e
bump garage protocol version tag to 0x000A (0.10) 2023-11-08 19:30:58 +01:00
Alex 8dccee3ccf
cluster layout: adapt all uses of ClusterLayout to LayoutHistory 2023-11-08 19:28:36 +01:00
Alex fe9af1dcaa
WIP: garage_rpc: store layout version history 2023-11-08 17:49:06 +01:00
Alex 4a9c94514f
avoid using layout_watch in System directly 2023-11-08 16:41:00 +01:00
Alex 12d1dbfc6b
remove Ring and use ClusterLayout everywhere 2023-11-08 15:41:24 +01:00
Alex 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
Deuxfleurs/garage#658 (comment))
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 Deuxfleurs/garage#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: Deuxfleurs/garage#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: Deuxfleurs/garage#655
2023-10-26 09:22:47 +00:00
Alex 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: Deuxfleurs/garage#656
2023-10-26 09:17:14 +00:00
Alex 5b1f50be65 jepsen: testing 2023-10-25 14:43:24 +02:00