From 1005744381fdaa7a1863d38c8ab692dab49ac2c1 Mon Sep 17 00:00:00 2001 From: zain-kabani Date: Sun, 4 Sep 2022 21:06:11 -0400 Subject: [PATCH 1/2] Fixes non-admin client counting error --- src/client.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/client.rs b/src/client.rs index 3ce4afb9..2ddafa0d 100644 --- a/src/client.rs +++ b/src/client.rs @@ -204,7 +204,7 @@ pub async fn client_entrypoint( Ok(mut client) => { info!("Client {:?} connected (plain)", addr); - if client.is_admin() { + if !client.is_admin() { let _ = drain.send(1).await; } @@ -229,7 +229,7 @@ pub async fn client_entrypoint( Ok(mut client) => { info!("Client {:?} issued a cancel query request", addr); - if client.is_admin() { + if !client.is_admin() { let _ = drain.send(1).await; } From 94239cc806fd14b9ce5641683351de41273f8c32 Mon Sep 17 00:00:00 2001 From: zain-kabani Date: Sun, 4 Sep 2022 21:07:43 -0400 Subject: [PATCH 2/2] Add log when sigterm received and log number of active clients when shutdown timeout is reached --- src/main.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main.rs b/src/main.rs index a0c1d7cf..78150401 100644 --- a/src/main.rs +++ b/src/main.rs @@ -221,13 +221,16 @@ async fn main() { interval.tick().await; // We're done waiting. - error!("Timed out waiting for clients"); + error!("Graceful shutdown timed out. {} active clients being closed", total_clients); let _ = exit_tx.send(()).await; }); }, - _ = term_signal.recv() => break, + _ = term_signal.recv() => { + info!("Got SIGTERM, closing with {} clients active", total_clients); + break; + }, new_client = listener.accept() => { let (socket, addr) = match new_client {