aboutsummaryrefslogtreecommitdiffstats
path: root/src/swarm/peer/worker.rs
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2026-11-04 06:51:21 +0100
committertv <tv@krebsco.de>2026-11-04 06:51:21 +0100
commit6430e7540ff5e83e777bf3c80bf609f3f85bcfe8 (patch)
tree6eeed53073d288e029e684a603a6a1656376d72d /src/swarm/peer/worker.rs
parent9bda1116b34c7bc3dcf38c570ce21b21670f16e8 (diff)
unanswered pull frees the slot
When the answer to a pull is overdue (the sync reply timeout: 1 s in the simtests, 10 s in production), the pull gives up the slot, and the next waiting neighbour is pulled at once.
Diffstat (limited to 'src/swarm/peer/worker.rs')
-rw-r--r--src/swarm/peer/worker.rs1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/swarm/peer/worker.rs b/src/swarm/peer/worker.rs
index 67213e7..399741c 100644
--- a/src/swarm/peer/worker.rs
+++ b/src/swarm/peer/worker.rs
@@ -114,6 +114,7 @@ pub(crate) async fn run_peer_worker(state: AppState) {
if let Some(changes) = unanswered {
debug!(peer = %peer, changes, "No answer to our sync message; sending again");
crate::swarm::source::reply_timed_out(&state, peer);
+ crate::swarm::relay::pull_unanswered(&state, peer);
state.request_sync(peer);
}