From 2ce57950e0f61eb6f325a93cef9b7e0e598fc109 Mon Sep 17 00:00:00 2001 From: Graham Bleach Date: Wed, 29 Feb 2012 14:34:44 +0000 Subject: Start the server if another user has a PID matching our stale pidfile. If unicorn doesn't get terminated cleanly (for example if the machine has its power interrupted) and the pid in the pidfile gets used by another process, the current unicorn code will exit and not start a server. This tiny patch fixes that behaviour. Acked-by: Eric Wong --- lib/unicorn/http_server.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/unicorn/http_server.rb b/lib/unicorn/http_server.rb index 7d2c623..0c2af5d 100644 --- a/lib/unicorn/http_server.rb +++ b/lib/unicorn/http_server.rb @@ -656,7 +656,7 @@ class Unicorn::HttpServer wpid <= 0 and return Process.kill(0, wpid) wpid - rescue Errno::ESRCH, Errno::ENOENT + rescue Errno::ESRCH, Errno::ENOENT, Errno::EPERM # don't unlink stale pid files, racy without non-portable locking... end -- cgit v1.2.3-24-ge0c7