aboutsummaryrefslogtreecommitdiff
path: root/src/garage/repair
Commit message (Collapse)AuthorAgeFilesLines
* [block-ref-repair] Block refcount recalculation and repairAlex Auvolat2024-03-191-0/+106
| | | | | | | | | | - We always recalculate the reference count of a block before deleting it locally, to make sure that it is indeed zero. - If we had to fetch a remote block but we were not able to get it, check that refcount is indeed > 0. - Repair procedure that checks everything
* Merge tag 'v0.8.5' into sync-08-09Alex Auvolat2024-01-161-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Garage v0.8.5 This minor release includes the following improvements and fixes: New features: - Configuration: make LMDB's `map_size` configurable and make `block_size` and `sled_cache_capacity` expressable as strings (such as `10M`) (#628, #630) - Add support for binding to Unix sockets for the S3, K2V, Admin and Web API servers (#640) - Move the `convert_db` command into the main Garage binary (#645) - Add support for specifying RPC secret and admin tokens as environment variables (#643) - Add `allow_world_readable_secrets` option to config file (#663, #685) Bug fixes: - Use `statvfs` instead of mount list to determine free space in metadata/data directories (#611, #631) - Add missing casts to fix 32-bit build (#632) - Fix error when none of the HTTP servers (S3/K2V/Admin/Web) is started and fix shutdown hang (#613, #633) - Add missing CORS headers to PostObject response (#609, #656) - Monitoring: finer histogram boundaries in Prometheus exported metrics (#531, #686) Other: - Documentation improvements (#641)
| * config: refactor secret sourcingAlex Auvolat2024-01-151-1/+1
| |
| * garage: support specifying token / secret as environment variablesnetworkException2023-10-191-1/+1
| | | | | | | | | | this patch adds support for specifying the `rpc_secret_file`, `metrics_token_file` and `admin_token_file` as environment variables.
* | block manager: add rebalance operation to rebalance multi-hdd setupsAlex Auvolat2023-09-071-0/+6
| |
* | comments and clippy lint fixesAlex Auvolat2023-06-091-2/+2
| |
* | Add multipart upload repairAlex Auvolat2023-06-091-30/+72
| |
* | refactor repair workers with a traitAlex Auvolat2023-06-091-68/+81
| |
* | fix online repairAlex Auvolat2023-06-091-17/+18
|/
* secrets can be passed directly in config, as file, or as envAlex Auvolat2023-02-031-2/+7
|
* Uniform framework for bg variable managementAlex Auvolat2023-01-041-1/+5
|
* Make it explicit when using nonversioned encodingAlex Auvolat2023-01-031-2/+3
|
* cargo fmtAlex Auvolat2023-01-021-7/+8
|
* online repair workers: retry on errorAlex Auvolat2022-12-141-14/+10
|
* Simplified and more aggressive worker exit logicAlex Auvolat2022-12-141-2/+2
|
* Refactor background runner and get rid of job workerAlex Auvolat2022-12-142-27/+12
|
* Spawn all background workers in a separate stepAlex Auvolat2022-12-141-7/+8
|
* Prettier worker list table; remove useless CLI log messagesAlex Auvolat2022-12-121-4/+10
|
* Background task manager (#332)Alex2022-07-081-85/+137
| | | | | | | | | | | | | | | | | | | | | - [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 Co-authored-by: Alex Auvolat <alex@adnab.me> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/332 Co-authored-by: Alex <alex@adnab.me> Co-committed-by: Alex <alex@adnab.me>
* improve internal item counter mechanisms and implement bucket quotas (#326)Alex2022-06-153-0/+220
- [x] Refactoring of internal counting API - [x] Repair procedure for counters (it's an offline procedure!!!) - [x] New counter for objects in buckets - [x] Add quotas to buckets struct - [x] Add CLI to manage bucket quotas - [x] Add admin API to manage bucket quotas - [x] Apply quotas by adding checks on put operations - [x] Proof-read Co-authored-by: Alex Auvolat <alex@adnab.me> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/326 Co-authored-by: Alex <alex@adnab.me> Co-committed-by: Alex <alex@adnab.me>