diff options
| author | tv <tv@krebsco.de> | 2026-11-01 20:36:17 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-11-01 20:36:17 +0100 |
| commit | d09ec56ca2cdaf8060819a70ca2d89bd0458896f (patch) | |
| tree | 9fcf918edc84012856030cd01d96d9077b2e40de /src/swarm/sync.rs | |
| parent | eb483a2a84e02f3797cffa7fe333d61c9988a11e (diff) | |
peer worker sleeps until deadline, not fixed time
Diffstat (limited to 'src/swarm/sync.rs')
| -rw-r--r-- | src/swarm/sync.rs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/swarm/sync.rs b/src/swarm/sync.rs index c643004..c8564c2 100644 --- a/src/swarm/sync.rs +++ b/src/swarm/sync.rs @@ -198,6 +198,17 @@ async fn deliver_sync_to_peer(state: &AppState, peer: &str) -> Result<()> { let Some(encoded) = generated else { return Ok(()); }; + // Its answer is due. + let reply_due = peer_state_mutex + .lock() + .await + .sync + .reply + .as_ref() + .map(|wait| wait.deadline); + if let Some(at) = reply_due { + state.peers_due.by(at); + } (session, encoded) }; |
