From eeb117a3b16198230ca664b5cdd7143ee26c3a28 Mon Sep 17 00:00:00 2001 From: Lev Kokotov Date: Thu, 21 Sep 2023 14:03:13 -0700 Subject: [PATCH] Report maxwait for clients that end up not getting a connection --- src/pool.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/pool.rs b/src/pool.rs index 18123407..02dab273 100644 --- a/src/pool.rs +++ b/src/pool.rs @@ -720,7 +720,7 @@ impl ConnectionPool { // since we last checked the server is ok. // Health checks are pretty expensive. if !require_healthcheck { - let checkout_time: u64 = now.elapsed().as_micros() as u64; + let checkout_time = now.elapsed().as_micros() as u64; client_stats.checkout_time(checkout_time); server .stats() @@ -734,7 +734,7 @@ impl ConnectionPool { .run_health_check(address, server, now, client_stats) .await { - let checkout_time: u64 = now.elapsed().as_micros() as u64; + let checkout_time = now.elapsed().as_micros() as u64; client_stats.checkout_time(checkout_time); server .stats() @@ -746,7 +746,12 @@ impl ConnectionPool { continue; } } + client_stats.idle(); + + let checkout_time = now.elapsed().as_micros() as u64; + client_stats.checkout_time(checkout_time); + Err(Error::AllServersDown) }