summaryrefslogtreecommitdiffstats
path: root/src/state.rs
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2026-10-25 20:40:00 +0100
committertv <tv@krebsco.de>2026-10-25 20:40:00 +0100
commitf126516cbf1404a33a09a02130bbe5086f232fbe (patch)
tree35b05e3a27da34ae0da0afcc8fcb02373b70f8fb /src/state.rs
parent5afb7f3bb4d8a5b26374a1f79b69862f43f09763 (diff)
require catch-up source to make progress
Diffstat (limited to 'src/state.rs')
-rw-r--r--src/state.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/state.rs b/src/state.rs
index d14c1ea..af01cf0 100644
--- a/src/state.rs
+++ b/src/state.rs
@@ -649,6 +649,12 @@ pub(crate) struct CatchUpSource {
pub(crate) peer: String,
/// When it was chosen or last sent us anything.
pub(crate) last_heard: Instant,
+ /// When it was chosen or last sent us a sync message: progress, not just liveness.
+ pub(crate) last_sync: Instant,
+ /// Our sync messages to it in a row whose answer didn't come in time.
+ pub(crate) reply_timeouts: u32,
+ /// When we last warned that catching up from it stalls.
+ pub(crate) last_warned: Option<Instant>,
/// Our last probe PING to it.
pub(crate) last_probe: Option<Instant>,
/// Its keepalives in a row saying it wouldn't sync with us.