From b26c79b77bd443109097cc78d97060f9b4756663 Mon Sep 17 00:00:00 2001 From: Miles Obare Date: Thu, 23 Jun 2022 22:09:43 +0100 Subject: [PATCH] [quic]Decrement total_streams correctly (#26158) --- streamer/src/nonblocking/quic.rs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/streamer/src/nonblocking/quic.rs b/streamer/src/nonblocking/quic.rs index e1998c44a2..57db11d506 100644 --- a/streamer/src/nonblocking/quic.rs +++ b/streamer/src/nonblocking/quic.rs @@ -263,15 +263,14 @@ async fn handle_connection( .fetch_add(1, Ordering::Relaxed); } } + stats.total_streams.fetch_sub(1, Ordering::Relaxed); } Err(e) => { debug!("stream error: {:?}", e); - stats.total_streams.fetch_sub(1, Ordering::Relaxed); break; } }, None => { - stats.total_streams.fetch_sub(1, Ordering::Relaxed); break; } } @@ -804,13 +803,19 @@ pub mod test { staked_nodes, MAX_STAKED_CONNECTIONS, MAX_UNSTAKED_CONNECTIONS, - stats, + stats.clone(), ) .unwrap(); check_multiple_streams(receiver, server_address).await; + assert_eq!(stats.total_streams.load(Ordering::Relaxed), 0); + assert_eq!(stats.total_new_streams.load(Ordering::Relaxed), 20); + assert_eq!(stats.total_connections.load(Ordering::Relaxed), 2); + assert_eq!(stats.total_new_connections.load(Ordering::Relaxed), 2); exit.store(true, Ordering::Relaxed); t.await.unwrap(); + assert_eq!(stats.total_connections.load(Ordering::Relaxed), 0); + assert_eq!(stats.total_new_connections.load(Ordering::Relaxed), 2); } #[test]