From 7149f3602a01fc6613628936f0c22d6b3188a542 Mon Sep 17 00:00:00 2001 From: Nicolas Patry Date: Mon, 29 Apr 2024 13:41:09 +0000 Subject: [PATCH] Fixing `Child.kill()` to replace it with regular signal. --- launcher/src/main.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/launcher/src/main.rs b/launcher/src/main.rs index 28226fb4..a277a606 100644 --- a/launcher/src/main.rs +++ b/launcher/src/main.rs @@ -683,9 +683,12 @@ fn shard_manager( // We received a shutdown signal if shutdown.load(Ordering::SeqCst) { - p.kill().unwrap(); - let _ = p.wait(); - tracing::info!("Shard terminated"); + signal::kill(Pid::from_raw(p.id() as i32), Signal::SIGTERM).unwrap(); + if let Err(err) = p.wait() { + tracing::error!("Error in shard termination {err:?}"); + } else { + tracing::info!("Shard terminated"); + } return; }