Any signal other than -9 causes full CPU utilization by master unicorn process on FreeBSD

Eric Wong normalperson at yhbt.net
Tue Jul 17 02:05:41 UTC 2012


Mark Mccraw <Mark.Mccraw at sas.com> wrote:
> Hi There!
> 
> I'm having a devil of a time figuring out a weird issue I'm running
> into.  I have unicorn configured to start 4 worker processes, and that
> works great.  However, when it's time to cycle the app, everything
> goes haywire. By trial and error, I have narrowed it down to this:
> sending any signal to the master process other than SIGKILL fails
> miserably.  No new master process is created, as described in the
> documentation, nothing happens to the existing workers, nothing gets
> written to any log, and if I run top -u, I can see that very quickly
> the master ramps up to 100% CPU utilization.  This happens if I run
> 'kill -HUP <master pid>', 'kill -USR2 <master pid>', even 'kill -QUIT
> <master pid>'.

This sounds like a Ruby/FreeBSD bug we've seen before.  My script
in http://mid.gmane.org/20120201181445.GA31624@dcvr.yhbt.net should
reproduce the issue w/o unicorn.

> ruby 1.9.3p0 (2011-10-30 revision 33570) [amd64-freebsd9]

I think this is a Ruby bug that was fixed in 1.9.3-p30 according to
naruse:
http://mid.gmane.org/CAK6HhsppWVPijWLyZMwcKueYDT5sZroGv6ADXkgreht3aLfR9A@mail.gmail.com

Since 1.9.3 p194 is the latest, can you try that out and confirm the
fix?  I don't remember the other bug reported confirmed this issue was
fixed by upgrading Ruby.

Thanks.


More information about the mongrel-unicorn mailing list