aboutsummaryrefslogtreecommitdiff
path: root/src/garage/cli/structs.rs
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2023-12-07 11:50:00 +0100
committerAlex Auvolat <alex@adnab.me>2023-12-07 11:56:14 +0100
commitaa59059a910eb6e1e824b84413a66909d697ef8a (patch)
tree967e1ebbc2772b5d3edda68d28acc9f346a80ca8 /src/garage/cli/structs.rs
parentd90de365b3b30cb631b22fcd62c98bddb5a91549 (diff)
downloadgarage-aa59059a910eb6e1e824b84413a66909d697ef8a.tar.gz
garage-aa59059a910eb6e1e824b84413a66909d697ef8a.zip
layout cli: safer skip-dead-nodes command
Diffstat (limited to 'src/garage/cli/structs.rs')
-rw-r--r--src/garage/cli/structs.rs12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/garage/cli/structs.rs b/src/garage/cli/structs.rs
index c4b400f4..6bc3da22 100644
--- a/src/garage/cli/structs.rs
+++ b/src/garage/cli/structs.rs
@@ -117,9 +117,9 @@ pub enum LayoutOperation {
#[structopt(name = "history", version = garage_version())]
History,
- /// Assume all nodes are synchronized up to a certain layout version
- #[structopt(name = "assume-sync", version = garage_version())]
- AssumeSync(AssumeSyncOpt),
+ /// Skip dead nodes when awaiting for a new layout version to be synchronized
+ #[structopt(name = "skip-dead-nodes", version = garage_version())]
+ SkipDeadNodes(SkipDeadNodesOpt),
}
#[derive(StructOpt, Debug)]
@@ -178,11 +178,15 @@ pub struct RevertLayoutOpt {
}
#[derive(StructOpt, Debug)]
-pub struct AssumeSyncOpt {
+pub struct SkipDeadNodesOpt {
/// Version number of the layout to assume is currently up-to-date.
/// This will generally be the current layout version.
#[structopt(long = "version")]
pub(crate) version: u64,
+ /// Allow the skip even if a quorum of ndoes could not be found for
+ /// the data among the remaining nodes
+ #[structopt(long = "allow-missing-data")]
+ pub(crate) allow_missing_data: bool,
}
#[derive(Serialize, Deserialize, StructOpt, Debug)]