diff --git a/mempool/src/shared_mempool/coordinator.rs b/mempool/src/shared_mempool/coordinator.rs index d9676a7b05249..1cc2d801556f6 100644 --- a/mempool/src/shared_mempool/coordinator.rs +++ b/mempool/src/shared_mempool/coordinator.rs @@ -54,6 +54,7 @@ pub(crate) async fn coordinator( LogEntry::CoordinatorRuntime, LogEvent::Start )); + // Combine `NetworkEvents` for each `NetworkId` into one stream let smp_events: Vec<_> = network_events .into_iter() @@ -67,6 +68,17 @@ pub(crate) async fn coordinator( let workers_available = smp.config.shared_mempool_max_concurrent_inbound_syncs; let bounded_executor = BoundedExecutor::new(workers_available, executor.clone()); + let initial_reconfig = mempool_reconfig_events + .next() + .await + .expect("Reconfig sender dropped, unable to start mempool"); + handle_mempool_reconfig_event( + &mut smp, + &bounded_executor, + initial_reconfig.on_chain_configs, + ) + .await; + loop { let _timer = counters::MAIN_LOOP.start_timer(); ::futures::select! {