Background task manager #332

Merged
lx merged 35 commits from background-task-manager into main 2022-07-08 11:30:32 +00:00
Owner
  • New background worker trait
  • Adapt all current workers to use new API
  • Command to list currently running workers, and whether they are active, idle, or dead
  • Error reporting
  • Optimizations
    • Merkle updater: several items per iteration
    • Use tokio::task::spawn_blocking where appropriate so that CPU-intensive tasks don't block other things going on
  • scrub:
    • have only one worker with a channel to start/pause/cancel
    • automatic scrub
    • ability to view and change tranquility from CLI
    • persistence of a few info
  • Testing
- [x] New background worker trait - [x] Adapt all current workers to use new API - [x] Command to list currently running workers, and whether they are active, idle, or dead - [x] Error reporting - Optimizations - [x] Merkle updater: several items per iteration - [ ] Use `tokio::task::spawn_blocking` where appropriate so that CPU-intensive tasks don't block other things going on - scrub: - [x] have only one worker with a channel to start/pause/cancel - [x] automatic scrub - [x] ability to view and change tranquility from CLI - [x] persistence of a few info - [ ] Testing
lx added 3 commits 2022-06-21 12:08:06 +00:00
First try on background worker manager
Some checks failed
continuous-integration/drone/push Build is failing
e12bc3b595
New worker semantics applied to garage_table
Some checks failed
continuous-integration/drone/push Build is failing
3119ea59b0
Block manager with new worker
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
269f996fd0
lx added 1 commit 2022-06-21 12:24:11 +00:00
New worker for index counter propagator
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
b8338dea56
lx added 1 commit 2022-06-21 13:28:12 +00:00
Online repair new workers, except blocks and scrub
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
a855c54bdb
lx added 1 commit 2022-06-21 14:00:20 +00:00
Block repair with new worker semantics
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
ba1ace6cf6
lx added 1 commit 2022-06-21 14:27:21 +00:00
rename things
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
14337d2a56
lx added 1 commit 2022-06-21 15:18:38 +00:00
Rename things, garage worker list cmd
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
10c886111e
lx added 1 commit 2022-06-21 15:22:26 +00:00
fix clippy
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
708dab6e0f
lx added 1 commit 2022-06-21 16:04:22 +00:00
fix clippy
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
8fb8569912
lx added 1 commit 2022-06-21 16:07:07 +00:00
Update Cargo.nix
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
f82cf164f5
lx added 2 commits 2022-06-24 08:31:39 +00:00
Error reporting
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
95ffba343f
lx added 2 commits 2022-06-24 09:05:22 +00:00
Smaller batches for index counter propagation
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
e7810e9cb3
lx added 1 commit 2022-06-27 09:58:36 +00:00
(makefile with run release)
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
928394cc32
lx added 1 commit 2022-06-27 10:01:36 +00:00
Fix clippy lint
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
fdfe7dd60d
lx added 1 commit 2022-06-27 10:06:29 +00:00
Update cargo.nix
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
fc50724256
lx added 1 commit 2022-06-27 14:53:12 +00:00
Report progress of scrub and block repair
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
0e5175abee
lx added 1 commit 2022-06-27 15:58:16 +00:00
Only one scrub worker (wip)
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
247dbcd598
lx added 1 commit 2022-06-28 14:09:45 +00:00
update cargo.nix
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
f1c972289d
lx added 1 commit 2022-06-28 14:59:53 +00:00
Persist scrub worker thing in Persister
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
b053fc0518
lx added 1 commit 2022-06-28 15:11:16 +00:00
Count corruptions in scrub worker
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
b0a181e17e
lx added 1 commit 2022-06-28 15:31:36 +00:00
cargo fmt
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
fc2bc8b0ca
lx added 1 commit 2022-06-28 15:43:07 +00:00
Small things
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is passing
368414a261
lx added 1 commit 2022-06-28 15:44:04 +00:00
remove useless info!()
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
c4be56704d
lx added 1 commit 2022-07-04 10:46:51 +00:00
Merge branch 'main' into background-task-manager
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
17d0254c7c
lx added 1 commit 2022-07-04 10:53:52 +00:00
add delays in k2v test_items_and_indices
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
5ee9cb7768
lx changed title from WIP: Background task manager to Background task manager 2022-07-04 11:03:04 +00:00
lx added 1 commit 2022-07-08 07:55:41 +00:00
cleanup
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
0200eae679
lx added 1 commit 2022-07-08 08:10:42 +00:00
Small refactoring
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
4cc9a648ab
lx added 1 commit 2022-07-08 08:16:56 +00:00
whoops and small refactoring
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
4312623930
lx added 1 commit 2022-07-08 08:32:51 +00:00
fix comments
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
0f660b086c
lx added 1 commit 2022-07-08 08:40:01 +00:00
Rename WorkerStatus to WorkerState
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
d1cf1a0fa6
because it's a state in a state machine
lx added 4 commits 2022-07-08 08:43:29 +00:00
Fix poll item when item didn't change
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
b6d59ec19a
Publish k2v-client crate to crates.io (#337)
All checks were successful
continuous-integration/drone/push Build is passing
fe3fa83de7
Co-authored-by: Alex Auvolat <alex@adnab.me>
Reviewed-on: #337
Co-authored-by: Alex <alex@adnab.me>
Co-committed-by: Alex <alex@adnab.me>
add delays in k2v test_items_and_indices
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
aab34bfe54
Merge branch 'main' into background-task-manager
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
18d014dcc5
lx added 1 commit 2022-07-08 08:45:27 +00:00
cargo fmt
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
08cd5f2f1d
lx merged commit 4f38cadf6e into main 2022-07-08 11:30:32 +00:00
lx referenced this pull request from a commit 2022-07-08 11:30:32 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Deuxfleurs/garage#332
No description provided.