unicorn, rails, and symlinked deployment
mguterl at gmail.com
Wed Nov 18 21:36:39 EST 2009
On Wed, Nov 18, 2009 at 8:46 PM, Eric Wong <normalperson at yhbt.net> wrote:
> Eric Wong <normalperson at yhbt.net> wrote:
>> Michael Guterl <mguterl at gmail.com> wrote:
>> > I don't mean to hijack my own thread, but the problem seems to be
>> > closely related. My application code is not being reloaded, when I
>> > send HUP to the unicorn master process.
>> Hi Michael,
>> Application code is only reloaded by HUP when your preload_app setting
>> is false. Otherwise you have to use USR2 + QUIT to upgrade your entire
>> This behavior is documented in the Configurator, but not in the SIGNALS
>> documented, I'll fix the SIGNALS document in a few and disable
>> expand_path in the launcher scripts.
> Just pushed the following change out for the SIGNALS doc.
> diff --git a/SIGNALS b/SIGNALS
> index 5c7295e..be96892 100644
> --- a/SIGNALS
> +++ b/SIGNALS
> @@ -9,7 +9,12 @@ Unicorn and nginx.
> === Master Process
> -* HUP - reload config file, app, and gracefully restart all workers
> +* HUP - reloads config file and gracefully restart all workers.
> + If the "preload_app" directive is false (the default), then workers
> + will also pick up any application code changes when restarted. If
> + "preload_app" is true, then application code changes will have no
> + effect; USR2 + QUIT (see below) must be used to load newer code in
> + this case.
> * INT/TERM - quick shutdown, kills all workers immediately
This is great Eric, I had spent some time looking at Configurator,
however, I was mostly looking at SIGNALS related to this problem.
This adds much clarity to the docs!
More information about the mongrel-unicorn