Commit Graph

85 Commits

Author SHA1 Message Date
Alex Auvolat
6b008b5bd3 block manager: add rebalance operation to rebalance multi-hdd setups 2023-09-07 13:44:11 +02:00
Alex Auvolat
99ed18350f block manager: refactor and fix monitoring/statistics 2023-09-07 12:41:36 +02:00
Alex Auvolat
f38a31b330 block manager: avoid incorrect data_dir configs and avoid losing files 2023-09-06 17:49:30 +02:00
Alex Auvolat
e30865984a block manager: scrub checkpointing 2023-09-06 16:35:28 +02:00
Alex Auvolat
55c514999e block manager: fixes in layout 2023-09-06 16:35:28 +02:00
Alex Auvolat
a44f486931 block manager: refactoring & increase max worker count to 8 2023-09-06 16:35:28 +02:00
Alex Auvolat
3a74844df0 block manager: fix dir_not_empty 2023-09-06 16:35:28 +02:00
Alex Auvolat
93114a9747 block manager: refactoring 2023-09-06 16:35:28 +02:00
Alex Auvolat
1b8c265c14 block manager: get rid of check_block_status 2023-09-06 16:35:28 +02:00
Alex Auvolat
a09f86729c block manager: move blocks in write_block if necessary 2023-09-06 16:35:28 +02:00
Alex Auvolat
887b3233f4 block manager: use data paths from layout 2023-09-06 16:35:28 +02:00
Alex Auvolat
6c420c0880 block manager: multi-directory layout computation 2023-09-06 16:35:28 +02:00
Alex Auvolat
71c0188055 block manager: skeleton for multi-hdd support 2023-09-06 16:35:28 +02:00
Alex Auvolat
2e90e1c124 Merge branch 'main' into next 2023-08-29 11:32:42 +02:00
Alex Auvolat
cece1be1bb bump version to 0.8.3 2023-08-28 13:17:26 +02:00
Jonathan Davies
aee0d97f22 cargo: Updated async-compression to 0.4. 2023-06-28 11:17:16 +01:00
Alex Auvolat
90b2d43eb4 Merge branch 'main' into next 2023-06-13 17:14:11 +02:00
Alex Auvolat
e7e164a280 Make fsync an option for meta and data 2023-06-09 16:23:21 +02:00
Alex
ea9b15f669 Merge pull request 'cargo: tokio-1.28 and hyper-0.14.26 update' (#569) from jpds/garage:tokio-1.28 into main
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/569
2023-05-11 10:16:33 +00:00
Jonathan Davies
c783194e8b *: apply clippy recommendations. 2023-05-09 20:49:34 +01:00
Jonathan Davies
0f0795103d block/Cargo.toml: Bump tokio-util to 0.7. 2023-05-09 14:33:21 +01:00
Alex
2f495575d8 Merge pull request 'block/manager.rs: Prioritize raw blocks when no compression configured' (#566) from jpds/garage:skip-compressed-blocks-scrub-no-compression into main
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/566
2023-05-09 09:39:48 +00:00
Jonathan Davies
9c788059e2 block/manager.rs: In is_block_compressed - check which compression_level
is configured on a node and check for raw block first if compression is
disabled (to help reduce syscalls during a scrub).
2023-05-09 10:28:19 +01:00
Jakub Jirutka
d2deee0b8b Declare garage crates using workspace.dependencies
This will allow to really disable "sled" feature without declaring
`default-features = false` in every Cargo.toml where garage_db and
garage_model is used.

See https://doc.rust-lang.org/cargo/reference/workspaces.html#the-dependencies-table
2023-05-09 08:46:15 +00:00
Jonathan Davies
fb3bd11dce block/repair.rs: Added log entries for scrub start/finish. 2023-04-23 22:22:26 +01:00
Alex Auvolat
0a1ddcf630 Prepare for v0.8.2 2023-03-13 18:46:31 +01:00
Jonathan Davies
d218f475cb block/manager.rs: Set defaults for scrub_persister. 2023-03-09 17:08:47 +00:00
Jonathan Davies
7b65dd24e2 block/repair.rs: Added a timestamp argument to
randomize_next_scrub_run_time().
2023-03-09 16:38:41 +00:00
Jonathan Davies
b70cc0a940 block/repair.rs: Added migration for ScrubWorkerPersisted's time_next_run_scrub.
Fixes: #520.
2023-03-09 16:38:36 +00:00
Jonathan Davies
148b66b843 block/manager.rs: Display scrub-next-run. 2023-03-06 13:43:09 +00:00
Jonathan Davies
53d09eb00f block/repair.rs: Added function and time_next_run_scrub with a random element of
10 days to SCRUB_INTERVAL to help balance scrub load across cluster.
2023-03-06 13:43:04 +00:00
Alex Auvolat
8e93d69974 More clippy fixes 2023-01-26 17:26:32 +01:00
Jonathan Davies
20c1cdf662 Cargo.toml: Loosen tracing dependency to just 0.1. 2023-01-26 11:13:11 +00:00
Jonathan Davies
5c3075fe01 Cargo.toml: Updated zstd from 0.9 to 0.12. 2023-01-23 18:08:14 +00:00
Jonathan Davies
4cfb469d2b block/metrics.rs: Added compression_level metric. 2023-01-10 10:40:03 +00:00
Alex
02e8eb167e Merge pull request 'PutObject: better cleanup when request is interrupted in the middle' (#462) from interrupted-cleanup into main
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/462
2023-01-04 14:43:45 +00:00
Alex Auvolat
f3f27293df
Uniform framework for bg variable management 2023-01-04 13:07:13 +01:00
Alex Auvolat
936b6cb563
When saving block, delete .tmp file if we could not complete 2023-01-03 17:34:26 +01:00
Alex Auvolat
8d5505514f
Make it explicit when using nonversioned encoding 2023-01-03 15:27:36 +01:00
Alex Auvolat
cdb2a591e9
Refactor how things are migrated 2023-01-03 14:44:47 +01:00
Alex Auvolat
939a6d67e8
Merge branch 'main' into internals-rework 2023-01-02 15:07:44 +01:00
Alex Auvolat
6775569525
Bump everything to v0.8.1 2023-01-02 14:15:33 +01:00
Alex Auvolat
dfc131850a
Simplified and more aggressive worker exit logic 2022-12-14 15:25:29 +01:00
Alex Auvolat
d56c472712
Refactor background runner and get rid of job worker 2022-12-14 12:51:42 +01:00
Alex Auvolat
2183518edc
Spawn all background workers in a separate step 2022-12-14 12:28:07 +01:00
Alex Auvolat
041b60ed1d
Add block.rc_size, table.size and table.merkle_tree_size metrics 2022-12-13 15:54:03 +01:00
Alex Auvolat
d6040e32a6
cli: prettier table in garage stats 2022-12-13 15:43:22 +01:00
Alex Auvolat
d7f90cabb0
Implement block retry-now and block purge 2022-12-13 15:02:42 +01:00
Alex Auvolat
687660b27f
Implement block list-errors and block info 2022-12-13 14:23:45 +01:00
Alex Auvolat
9d82196945
cli: new worker info command 2022-12-13 12:24:30 +01:00