diff options
| author | tv <tv@krebsco.de> | 2026-10-30 15:10:29 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-10-30 15:10:29 +0100 |
| commit | 4250d9843133d38c7ace1a1b510265a15ebaa0fd (patch) | |
| tree | 3f996542020c3b44351a765fcf27119bc181f767 /src/config | |
| parent | 65d2118bcc9b7465c8086f2ca9c2b26c8ae7e57c (diff) | |
add dormant-probe-max option
Diffstat (limited to 'src/config')
| -rw-r--r-- | src/config/mod.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/config/mod.rs b/src/config/mod.rs index 85d71d2..99690ae 100644 --- a/src/config/mod.rs +++ b/src/config/mod.rs @@ -229,6 +229,13 @@ pub(crate) const OPTIONS: &[OptionSpec] = &[ "Keepalive interval; dormancy, resync and probe timings derive from it.", ), option( + "dormant-probe-max", + Kind::Duration, + "DURATION", + None, + "Longest wait between HELLOs to a member that doesn't answer (dormant, or unanswered HELLOs): they start at 10 keepalives and double up to this. It bounds how long a returning member, or the other side of a partition, takes to be noticed. Default: 60 keepalives (1h at 1m). Shorter than 10 keepalives, it is every wait.", + ), + option( "neighbours", Kind::Integer, "COUNT", @@ -443,6 +450,12 @@ pub(crate) struct Settings { pub(crate) alias: Option<String>, #[serde(default = "default_keepalive", with = "crate::units::duration_option")] pub(crate) keepalive: Duration, + #[serde( + default, + deserialize_with = "crate::units::optional_duration", + serialize_with = "crate::units::serialize_optional_duration" + )] + pub(crate) dormant_probe_max: Option<Duration>, #[serde(default = "default_neighbours")] pub(crate) neighbours: usize, #[serde( |
