Also worth noting that if the buffer pool is allocated before forking, it
will require sufficient memory or swap around in order to allow the fork.
In Linux, if swap is disabled, memory over-commit is also disabled, meaning
large processes effectively can't fork. Forking as early as possible is a
good idea, imho.

Regards,

Jeremy

On Tue, Jan 3, 2012 at 8:49 AM, Clint Byrum <[email protected]> wrote:

> Excerpts from Olaf van der Spek's message of Tue Jan 03 02:18:20 -0800
> 2012:
> > On Tue, Jan 3, 2012 at 8:10 AM, Clint Byrum <[email protected]> wrote:
> > > Trying then to send SIGUSR1 is a bug for sure. There are two ways
> around
> > > it that I see.  Either we must use a pipe to signal the parent that it
> > > can exit, or try having the parent actually send itself a SIGSTOP, and
> > > then use SIGCONT from the child. I think the former is more portable,
> > > and I have a branch here that does that, and no longer waits forever
> > > with --daemon --user on my Ubuntu precise (dev version) system.
> >
> > Why is all this magic needed anyway?
> > Can't we fork *after* we're sure everything is ready?
> >
>
> I'm not sure I see it as magic, though I do acknowledge that its not as
> pretty as other things in Drizzle. However, to accomplish this without
> having to communicate between parent/child, we'd need to make sure that
> everything that plugins do before the fork can survive a fork. Threads
> are a particular concern.
>
> This seems a lot more complicated than what we have now, which is a
> single call which the child calls when its ok to let the parent exit.
>
> _______________________________________________
> Mailing list: https://launchpad.net/~drizzle-discuss
> Post to     : [email protected]
> Unsubscribe : https://launchpad.net/~drizzle-discuss
> More help   : https://help.launchpad.net/ListHelp
>
_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to