mirror of
https://github.com/rustfs/rustfs.git
synced 2026-08-08 14:23:13 +00:00
2832f0e089
* feat: integrate CancellationToken for unified background services management - Consolidate data scanner and auto heal cancellation tokens into single unified token - Move GLOBAL_BACKGROUND_SERVICES_CANCEL_TOKEN to global.rs for centralized management - Add graceful shutdown support to MRF heal routine with MinIO-compatible logic - Implement heal_routine_with_cancel method preserving original healing logic - Update main.rs to use unified background services shutdown mechanism - Enhance error handling with proper ecstore Result types - Fix clippy warnings for needless return statements - Maintain backward compatibility while adding modern cancellation support This change provides a cleaner architecture for background service lifecycle management and ensures all healing services can be gracefully shut down through a single token. Signed-off-by: junxiang Mu <1948535941@qq.com> * fix: Refact heal and scanner design Signed-off-by: junxiang Mu <1948535941@qq.com> * refact: step 2 Signed-off-by: junxiang Mu <1948535941@qq.com> * feat: refactor scanner module and add data usage statistics - Move scanner code to scanner/ subdirectory for better organization - Add data usage statistics collection and persistence - Implement histogram support for size and version distribution - Add global cancel token management for scanner operations - Integrate scanner with ECStore for comprehensive data analysis - Update error handling and improve test isolation - Add data usage API endpoints and backend integration Signed-off-by: junxiang Mu <1948535941@qq.com> * Chore: fix ref and fix comment Signed-off-by: junxiang Mu <1948535941@qq.com> * fix: fix clippy Signed-off-by: junxiang Mu <1948535941@qq.com> --------- Signed-off-by: junxiang Mu <1948535941@qq.com> Co-authored-by: dandan <dandan@dandandeMac-Studio.local>
36 lines
1.0 KiB
TOML
36 lines
1.0 KiB
TOML
[package]
|
|
name = "rustfs-ahm"
|
|
version = "0.0.3"
|
|
edition = "2021"
|
|
authors = ["RustFS Team"]
|
|
license = "Apache-2.0"
|
|
description = "RustFS AHM (Automatic Health Management) Scanner"
|
|
|
|
[dependencies]
|
|
rustfs-ecstore = { workspace = true }
|
|
rustfs-common = { workspace = true }
|
|
rustfs-filemeta = { workspace = true }
|
|
rustfs-madmin = { workspace = true }
|
|
rustfs-utils = { workspace = true }
|
|
tokio = { workspace = true, features = ["full"] }
|
|
tokio-util = { workspace = true }
|
|
tracing = { workspace = true }
|
|
serde = { workspace = true, features = ["derive"] }
|
|
serde_json = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
bytes = { workspace = true }
|
|
time = { workspace = true, features = ["serde"] }
|
|
uuid = { workspace = true, features = ["v4", "serde"] }
|
|
anyhow = { workspace = true }
|
|
async-trait = { workspace = true }
|
|
futures = { workspace = true }
|
|
url = { workspace = true }
|
|
rustfs-lock = { workspace = true }
|
|
|
|
lazy_static = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
rmp-serde = { workspace = true }
|
|
tokio-test = "0.4"
|
|
serde_json = "1.0"
|