From e6e25dacea6827b7bf4103a7d19c6f6ccb4e9c8e Mon Sep 17 00:00:00 2001 From: mfahampshire Date: Mon, 2 Feb 2026 12:26:41 +0000 Subject: [PATCH] Make send_self_pings() concurrent again --- .../src/sync_self_ping.rs | 23 +++++++++++-------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/common/nym-connection-monitor/src/sync_self_ping.rs b/common/nym-connection-monitor/src/sync_self_ping.rs index 8040257102..3d885cf4b6 100644 --- a/common/nym-connection-monitor/src/sync_self_ping.rs +++ b/common/nym-connection-monitor/src/sync_self_ping.rs @@ -25,18 +25,21 @@ async fn send_self_pings( our_address: Recipient, mixnet_client: &mut MixnetClient, ) -> Result> { - let mut request_ids = Vec::with_capacity(3); + let sender = mixnet_client.split_sender(); - for _ in 1..=3 { - let (input_message, request_id) = create_self_ping(our_address); - mixnet_client - .send(input_message) - .await - .map_err(|err| Error::NymSdkError(Box::new(err)))?; - request_ids.push(request_id); - } + let futures = (1..=3).map(|_| { + let mut sender = sender.clone(); + async move { + let (input_message, request_id) = create_self_ping(our_address); + sender + .send(input_message) + .await + .map_err(|e| Error::NymSdkError(Box::new(e)))?; + Ok::<_, Error>(request_id) + } + }); - Ok(request_ids) + futures::future::try_join_all(futures).await } async fn wait_for_self_ping_return(