On Sat, Dec 12, 2009 at 5:53 AM, Daniel Pocock <[email protected]> wrote:
>
>
>
> Hi,
>
> There have been some discussions recently on the Ganglia list about the use
> of a pollset that was created before a call to apr_proc_detach
>
> On BSD platforms, we find the kqueue style pollsets are not valid after
> fork().  On other platforms, or if kqueue is disabled when compiling apr,
> the pollsets do remain valid.
>
> Can anyone make any comment on this issue?  We are keen to have
> initialization tasks completed before forking, so that if initialization
> fails, the caller will see the non-zero exit status.
>
> Here is a link to the thread on ganglia-developers, although I hope the
> description above captures all the main points:
>
> http://www.mail-archive.com/[email protected]/msg05251.html

Its a flaw in the pollset implementation.  I think we should fix it.

I believe epoll backend has the same problem. The libev library
documents several of these edge cases related to fork() and event
libraries.

-Paul

Reply via email to