aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex <lx@deuxfleurs.fr>2025-02-14 11:52:58 +0000
committerAlex <lx@deuxfleurs.fr>2025-02-14 11:52:58 +0000
commit63f20bdeabfef21cf4f8c91a542bf3d0f5e77ad6 (patch)
tree762e913d0e6450e7aa40aa2c8cbf27fe42ab4d8a
parentd3226bfa91d4500063c5c287c6256729dcbb3f88 (diff)
parenta2e134f036a5bdeca55ae0ce6d731d1ec37a454c (diff)
downloadgarage-63f20bdeabfef21cf4f8c91a542bf3d0f5e77ad6.tar.gz
garage-63f20bdeabfef21cf4f8c91a542bf3d0f5e77ad6.zip
Merge pull request 'db-snapshot: Add error handling to metadata snapshot creation' (#930) from handle_snapshot_errors into main
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/930 Reviewed-by: Armael <armael@noreply.localhost>
-rw-r--r--src/garage/admin/mod.rs8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/garage/admin/mod.rs b/src/garage/admin/mod.rs
index ea414b56..1a4ff853 100644
--- a/src/garage/admin/mod.rs
+++ b/src/garage/admin/mod.rs
@@ -484,7 +484,7 @@ impl AdminRpcHandler {
AdminRpc::MetaOperation(MetaOperation::Snapshot { all: false }),
PRIO_NORMAL,
)
- .await
+ .await?
}))
.await;
@@ -497,7 +497,11 @@ impl AdminRpcHandler {
ret.push(format!("{:?}\t{}", to, res_str));
}
- Ok(AdminRpc::Ok(format_table_to_string(ret)))
+ if resps.iter().any(Result::is_err) {
+ Err(GarageError::Message(format_table_to_string(ret)).into())
+ } else {
+ Ok(AdminRpc::Ok(format_table_to_string(ret)))
+ }
}
MetaOperation::Snapshot { all: false } => {
garage_model::snapshot::async_snapshot_metadata(&self.garage).await?;