NLnet task 3 #667

Merged
lx merged 60 commits from nlnet-task3 into next-0.10 2024-01-11 10:58:08 +00:00

60 commits

Author SHA1 Message Date
0041b013a4
layout: refactoring and fix in layout helper
Some checks reported errors
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build was killed
continuous-integration/drone Build is passing
2023-12-11 16:09:22 +01:00
adccce1145
layout: refactor/fix bad while loop
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-12-11 15:45:14 +01:00
85b5a6bcd1
fix some clippy lints
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-12-11 15:31:47 +01:00
e4f493b481
table: remove redundant tracing in insert_many
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-12-11 14:57:42 +01:00
f8df90b79b
table: fix insert_many to not send duplicates
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-12-08 14:54:11 +01:00
4dbf254512
layout: refactoring, merge two files
Some checks reported errors
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build was killed
2023-12-08 14:15:52 +01:00
64a6e557a4
rpc helper: small refactorings
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-12-08 12:18:12 +01:00
5dd200c015
layout: move block_read_nodes_of to rpc_helper to avoid double-locking
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
(in theory, this could have caused a deadlock)
2023-12-08 12:02:24 +01:00
063294dd56
layout version: refactor get_node_zone
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-12-08 11:50:58 +01:00
7f2541101f
cli: improvements to the layout commands when multiple layouts are live
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-12-08 11:24:23 +01:00
91b874c4ef
rpc: fix system::health
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-12-08 10:36:37 +01:00
431b28e0cf
fix build with discovery features
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is passing
2023-12-07 15:15:59 +01:00
9cecea64d4
layout: allow sync update tracker to progress with only quorums
Some checks reported errors
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
continuous-integration/drone Build was killed
2023-12-07 14:51:20 +01:00
aa59059a91
layout cli: safer skip-dead-nodes command
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-12-07 11:56:14 +01:00
d90de365b3
table sync: use write quorums to report global success or failure of sync
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-12-07 11:16:10 +01:00
95eb13eb08
rpc: refactor result tracking for quorum sets
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-12-07 10:57:21 +01:00
c8356a91d9
layout updates: fix the set of nodes among which minima are calculated
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-12-07 10:30:26 +01:00
c04dd8788a
admin: more info in admin GetClusterStatus
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-11-28 14:25:04 +01:00
539af6eac4
rpc helper: write comments + small refactoring of tracing
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-11-28 11:12:39 +01:00
c539077d30
cli: remove historic layout info from status
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-11-27 16:22:27 +01:00
11e6fef93c
cli: add layout history and layout assume-sync commands 2023-11-27 16:22:25 +01:00
539a920313
cli: show when nodes are draining metadata
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-27 13:18:59 +01:00
78362140f5
rpc: update system::health to take into account write sets for all partitions
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-11-27 12:10:21 +01:00
d6d239fc79
block manager: read_block using old layout versions if necessary
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-11-27 11:52:57 +01:00
3ecd14b9f6
table: implement write sets for insert_many
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-11-16 16:41:45 +01:00
22f38808e7
rpc_helper: don't use tokio::spawn for individual requests 2023-11-16 16:34:01 +01:00
707442f5de
layout: refactor digests and add "!=" assertions before epidemic bcast
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
continuous-integration/drone Build is passing
2023-11-16 13:51:40 +01:00
ad5c6f779f
layout: split helper in separate file; more precise difference tracking
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-11-16 13:26:43 +01:00
d4df03424f
layout: fix test
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
continuous-integration/drone Build is passing
2023-11-15 15:56:57 +01:00
33c8a489b0
layou: implement ack locking
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-15 15:40:44 +01:00
393c4d4515
layout: add helper for cached/external values to centralize recomputation
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-15 14:20:50 +01:00
65066c7064
layout: wip cache global mins 2023-11-15 13:28:30 +01:00
acd49de9f9
rpc: fix write set quorums
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-11-15 13:07:42 +01:00
46007bf01d
integration test: print stdout and stderr on subcommand crash 2023-11-15 12:56:52 +01:00
b3e729f4b8
layout history merge: rm invalid versions when valid versions are added
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-15 12:15:58 +01:00
7ef2c23120
layout: fix test
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-14 15:45:01 +01:00
90e1619b1e
table: take into account multiple write sets in inserts
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-14 15:40:46 +01:00
3b361d2959
layout: prepare for write sets
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-14 14:28:16 +01:00
866196750f
system: add todo wrt new layout 2023-11-14 13:36:58 +01:00
83a11374ca
layout: fixes in schema
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-14 13:29:26 +01:00
1aab1f4e68
layout: refactoring of all_nodes
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-14 13:12:32 +01:00
8e292e06b3
layout: some refactoring of nongateway nodes
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-14 12:48:38 +01:00
9a491fa137
layout: fix test
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-11-11 13:10:59 +01:00
df24bb806d
layout/sync: fix bugs and add tracing
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-11 12:44:27 +01:00
ce89d1ddab
table sync: adapt to new layout history
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-11 12:08:32 +01:00
df36cf3099
layout: add helpers to LayoutHistory and prepare integration with Table
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-09 16:32:31 +01:00
9d95f6f704
layout: fix tracker bugs
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-09 15:52:45 +01:00
bad7cc812e
layout admin: add missing calls to update_hash
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-09 15:42:10 +01:00
03ebf18830
layout: begin managing the update tracker values
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-09 15:31:59 +01:00
94caf9c0c1
layout: separate code path for synchronizing update trackers only
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-09 14:53:34 +01:00
bfb1845fdc
layout: refactor to use a RwLock on LayoutHistory
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-09 14:12:05 +01:00
19ef1ec8e7
layout: more refactoring 2023-11-09 13:34:14 +01:00
8a2b1dd422
wip: split out layout management from System into separate LayoutManager
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-09 12:55:36 +01:00
523d2ecb95
layout: use separate CRDT for staged layout changes
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-09 11:19:43 +01:00
1da0a5676e
bump garage protocol version tag to 0x000A (0.10)
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-08 19:30:58 +01:00
8dccee3ccf
cluster layout: adapt all uses of ClusterLayout to LayoutHistory
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-08 19:28:36 +01:00
fe9af1dcaa
WIP: garage_rpc: store layout version history 2023-11-08 17:49:06 +01:00
4a9c94514f
avoid using layout_watch in System directly
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-08 16:41:00 +01:00
12d1dbfc6b
remove Ring and use ClusterLayout everywhere
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-08 15:41:24 +01:00
0962313ebd
garage_rpc: reorder functions in layout.rs 2023-11-08 13:13:04 +01:00