aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2022-03-28 15:47:23 +0200
committerAlex Auvolat <alex@adnab.me>2022-03-28 15:47:23 +0200
commit913f7754bbefa2899056b1af83d7789b01a4ba39 (patch)
treece25e04d3b4d729c2fc82777287652e8d5ec71e3
parent42dde541261d7cd16e638915d6c913e4c829128a (diff)
downloadgarage-913f7754bbefa2899056b1af83d7789b01a4ba39.tar.gz
garage-913f7754bbefa2899056b1af83d7789b01a4ba39.zip
Add blocks in errored state to `garage stats`
-rw-r--r--src/block/manager.rs5
-rw-r--r--src/garage/admin.rs6
2 files changed, 11 insertions, 0 deletions
diff --git a/src/block/manager.rs b/src/block/manager.rs
index 9cf72019..a3c4ec0d 100644
--- a/src/block/manager.rs
+++ b/src/block/manager.rs
@@ -265,6 +265,11 @@ impl BlockManager {
self.resync_queue.len()
}
+ /// Get number of blocks that have an error
+ pub fn resync_errors_len(&self) -> usize {
+ self.resync_errors.len()
+ }
+
/// Get number of items in the refcount table
pub fn rc_len(&self) -> usize {
self.rc.rc.len()
diff --git a/src/garage/admin.rs b/src/garage/admin.rs
index f9ec1593..0b20bb20 100644
--- a/src/garage/admin.rs
+++ b/src/garage/admin.rs
@@ -728,6 +728,12 @@ impl AdminRpcHandler {
self.garage.block_manager.resync_queue_len()
)
.unwrap();
+ writeln!(
+ &mut ret,
+ " blocks with resync errors: {}",
+ self.garage.block_manager.resync_errors_len()
+ )
+ .unwrap();
ret
}