Unicorn_rails ignores USR2 signal

Yeung, Jeffrey Jeffrey.Yeung at polycom.com
Tue Mar 20 23:09:34 UTC 2012


I have been unable to narrow down the cause of the conflict so far.  The list of Ruby gems (and gem versions) on the affected deployment are identical to the ones on another deployment where Unicorn is upgrading just fine (with preloaded app).  Grep'ing for USR2 in the gem installations did not reveal anything,  unfortunately.  Since then, I haven't been able to spend further time investigating.  Not sure where else to look, really, but I'm open to further suggestions.


-----Original Message-----
From: Eric Wong [mailto:normalperson at yhbt.net] 
Sent: Tuesday, March 20, 2012 12:58 PM
To: unicorn list
Cc: Yeung, Jeffrey
Subject: Re: Unicorn_rails ignores USR2 signal

Eric Wong <normalperson at yhbt.net> wrote:
> "Yeung, Jeffrey" <Jeffrey.Yeung at polycom.com> wrote:
> > Sorry for the delay.  It looks like disabling preload_app did the 
> > trick.  A new master was created after sending the USR2.  Now the 
> > $$$ question is, what in the world is intercepting the signal?  :S
> Good to know, I'd just grep the installation directories for all your 
> Ruby libs + gems for USR2.  I haven't seen this problem before, but 
> it'd be good to document the conflict, at least.

Btw, did you ever figure out what was causing the conflict?

Pushing this out to git://bogomips.org/unicorn.git

>From 1e13ffee3469997286e65e0563b6433e7744388a Mon Sep 17 00:00:00 2001
From: Eric Wong <normalperson at yhbt.net>
Date: Tue, 20 Mar 2012 19:51:35 +0000
Subject: [PATCH] KNOWN_ISSUES: document signal conflicts in libs/apps

Jeffrey Yeung confirmed this issue on the mailing list.

ref: <E8D9E7CCC2621343A0A3BB45E8DEDFA91C682DD23D at CRPMBOXPRD04.polycom.com>
 KNOWN_ISSUES |    5 +++++
 1 file changed, 5 insertions(+)

diff --git a/KNOWN_ISSUES b/KNOWN_ISSUES index f323c68..38263e7 100644
@@ -3,6 +3,11 @@
 Occasionally odd {issues}[link:ISSUES.html] arise without a transparent or  acceptable solution.  Those issues are documented here.
+* Some libraries/applications may install signal handlers which 
+  with signal handlers unicorn uses.  Leaving "preload_app false"
+  (the default) will allow unicorn to always override existing signal
+  handlers.
 * Issues with FreeBSD jails can be worked around as documented by Tatsuya Ono:

More information about the mongrel-unicorn mailing list