rbenvでRubyを更新したのにUnicornが古いRubyを見にいってしまっていたときの対応

サーバー側のRubyをrbenvを使ってバージョンを上げて再デプロイしたら、古いほうのRubyをずっと見てしまう現象が発生した。

ダウンタイムをなくすように RAILS_ROOT/config/unicorn/production.rbに設定していたのを思い出し、capのログの中身を見てみたら以下のコマンドが流れていた

kill -s USR2 `cat /var/www/deploy/shared/tmp/pids/unicorn.pid` 

kill -s USR2 は「緩やかな再起動」コマンドなのですぐには反映されなくて古いほうのRubyを見てしまっていたようだった

サーバーに入って下記コマンドを叩いてから再デプロイしたら新しいRubyのほうを見てくれるようになった

kill -HUP `cat /var/www/deploy/shared/tmp/pids/unicorn.pid`