summaryrefslogtreecommitdiffstats
path: root/src/swarm/peer/worker.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/swarm/peer/worker.rs')
-rw-r--r--src/swarm/peer/worker.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/swarm/peer/worker.rs b/src/swarm/peer/worker.rs
index 5161ae6..20e2542 100644
--- a/src/swarm/peer/worker.rs
+++ b/src/swarm/peer/worker.rs
@@ -8,7 +8,7 @@ use std::time::Duration;
use tokio::time::{Instant, MissedTickBehavior};
use tracing::{debug, info, warn};
-use super::forget::{apply_forget_records, forget_strangers};
+use super::forget::{AppliedForgets, apply_forget_records, forget_strangers};
use super::handshake::retry_hello_if_due;
use super::keepalive::send_ping;
use crate::locks::MutexExt;
@@ -27,6 +27,7 @@ pub(crate) async fn run_peer_worker(state: AppState) {
info!("Starting peer maintenance worker");
let mut last_forget_check: Option<Instant> = None;
+ let mut forgets_applied = AppliedForgets::new();
let mut was_ready = false;
loop {
@@ -93,7 +94,7 @@ pub(crate) async fn run_peer_worker(state: AppState) {
}
if last_forget_check.is_none_or(|t| t.elapsed() >= FORGET_CHECK_INTERVAL) {
- apply_forget_records(&state).await;
+ apply_forget_records(&state, &mut forgets_applied).await;
forget_strangers(&state).await;
crate::swarm::members::ensure_registered(&state).await;
crate::swarm::stability::tick(&state).await;