From 09d0216e842bd5ea131fb1c68582a176ffb7d345 Mon Sep 17 00:00:00 2001 From: Guo Xiang Tan Date: Thu, 4 Oct 2018 15:43:25 +0800 Subject: [PATCH] Avoid hardcoded value in `unicorn_launcher`. On slower instances, spinning up a new master process can take more than 10 secs. --- config/unicorn_launcher | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/config/unicorn_launcher b/config/unicorn_launcher index b2eb9b8ac8e..17f492462d7 100755 --- a/config/unicorn_launcher +++ b/config/unicorn_launcher @@ -15,9 +15,14 @@ function on_reload() { echo "Reloading unicorn" kill -s USR2 $UNICORN_PID - sleep 10 + + while [ -z "$NEW_UNICORN_PID" ]; do + echo "waiting for new unicorn master pid" + NEW_UNICORN_PID=`ps -f --ppid $UNICORN_PID | grep 'unicorn master' | grep -v worker | awk '{ print $2 }'` + sleep 1 + done + curl $LOCAL_WEB &> /dev/null - NEW_UNICORN_PID=`ps -f --ppid $UNICORN_PID | grep unicorn | grep -v worker | awk '{ print $2 }'` kill -s QUIT $UNICORN_PID echo "Old pid is: $UNICORN_PID New pid is: $NEW_UNICORN_PID" UNICORN_PID=$NEW_UNICORN_PID