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 | e293047c25d7167f25af0a611b33545f12225b05 (patch) | |
| tree | 51d31d9538cc2b1d988dd1b4faa6a5cc65c33f05 /src/swarm/sync.rs | |
| parent | 962fe4b43632822dc91fa6a4da6f6f295f4dba32 (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) }; |
