You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by kr...@cflinux.hu on 2013/11/16 14:37:01 UTC
[users@httpd] Re: mod_fcgid random freeze
Dear users,
Finally, I think I've found the problem. On freebsd, devel/apr1 chooses
apr lock method as flock. Thus,
a file is used for synchronization purposes. mod_fcgid creates a
temporary file in fcgid_mutex_create() using tmpnam(), which effectively
creates a temporary file in /tmp. And in my freebsd setup, I've enabled
/tmp cleaning as well, which removes the lock files after a fix amount
of time. As apache/apr only opens the file for writing, but actually not
writing anything to it, the files {a,c,m}time parameters dont change, so
the /tmp cleaning process cannot detect if the files are still in use,
it simply removes them.
Either mod_fcgid should use a file located elsewhere, or be
configurable, or maybe apr could choose another lock method on freebsd.
As on a gnu system, it chooses systemv semaphores, as I've noticed.
Please comment my investigation.
Regards,
2013-11-04 18:08 időpontban Richard Kojedzinszky ezt írta:
> Dear Users,
>
> I am having issues when installing mod_fcgid under freebsd. I have
> installed www/apache22 from ports, as well as www/mod_fcgid. After
> some days of running, many of this error message appeared in
> httpd-error.log:
>
> [Sat Nov 02 09:49:28 2013] [emerg] (2)No such file or directory:
> mod_fcgid: apr_global_mutex_child_init error
>
> And after hours passed, the entire httpd process stopped working. Only
> two httpd processes left running, but they were not accepting
> connections. I had to restart apache, then it worked again.
>
> I am using prefork mpm, and have set MaxRequestsPerChild to a non-zero
> value.
>
> Unfortunately, right now I cannot reproduce the problem, unfortunately
> it arises randomly.
>
> Because I did not find any useful regarding this on the web, I am
> requesting help here. What could I do to investigate the problem?
>
> Thanks in advance,
> Kojedzinszky Richard
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org
Re: [users@httpd] Re: mod_fcgid random freeze
Posted by Jeff Trawick <tr...@gmail.com>.
On Sat, Nov 16, 2013 at 8:37 AM, <kr...@cflinux.hu> wrote:
> Dear users,
>
> Finally, I think I've found the problem. On freebsd, devel/apr1 chooses
> apr lock method as flock. Thus,
> a file is used for synchronization purposes. mod_fcgid creates a temporary
> file in fcgid_mutex_create() using tmpnam(), which effectively creates a
> temporary file in /tmp. And in my freebsd setup, I've enabled /tmp cleaning
> as well, which removes the lock files after a fix amount of time. As
> apache/apr only opens the file for writing, but actually not writing
> anything to it, the files {a,c,m}time parameters dont change, so the /tmp
> cleaning process cannot detect if the files are still in use, it simply
> removes them.
>
> Either mod_fcgid should use a file located elsewhere, or be configurable,
> or maybe apr could choose another lock method on freebsd. As on a gnu
> system, it chooses systemv semaphores, as I've noticed.
>
> Please comment my investigation.
>
* Good investigation!
* There is good configurability of this mutex (and anything in bundled
httpd modules) using the Mutex directive if you use mod_fcgid with httpd
2.4.
* Perhaps "/tmp cleaning" is broken if it removes files that processes are
holding open. Try following that thread.
* As you probably already found, you can patch fcgid_mutex_unix.c to change
"apr_lockmech_e mechanism = APR_LOCK_DEFAULT;" to set it to some other
mutex type (see
http://apr.apache.org/docs/apr/1.4/group__apr__proc__mutex.html; probably
not all of the choices will work).
** Maybe the FreeBSD package maintainer would find that appropriate.
* You can file a bug at http://issues.apache.org/bugzilla/. I'm not aware
of other people reporting mutex problems, so personally I'm not sure it is
justified to make mod_fcgid's mutex configurable with httpd 2.2, except
perhaps with a compile-time definition.
** But other developers may have a different opinion, so file the bug.
> Regards,
>
>
> 2013-11-04 18:08 időpontban Richard Kojedzinszky ezt írta:
>
> Dear Users,
>>
>> I am having issues when installing mod_fcgid under freebsd. I have
>> installed www/apache22 from ports, as well as www/mod_fcgid. After
>> some days of running, many of this error message appeared in
>> httpd-error.log:
>>
>> [Sat Nov 02 09:49:28 2013] [emerg] (2)No such file or directory:
>> mod_fcgid: apr_global_mutex_child_init error
>>
>> And after hours passed, the entire httpd process stopped working. Only
>> two httpd processes left running, but they were not accepting
>> connections. I had to restart apache, then it worked again.
>>
>> I am using prefork mpm, and have set MaxRequestsPerChild to a non-zero
>> value.
>>
>> Unfortunately, right now I cannot reproduce the problem, unfortunately
>> it arises randomly.
>>
>> Because I did not find any useful regarding this on the web, I am
>> requesting help here. What could I do to investigate the problem?
>>
>> Thanks in advance,
>> Kojedzinszky Richard
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
> For additional commands, e-mail: users-help@httpd.apache.org
>
>
--
Born in Roswell... married an alien...
http://emptyhammock.com/