William A. Rowe, Jr. wrote:
The release tarball (and win32 .zip file) are now available for testing from;

http://httpd.apache.org/dev/dist/

Note that child error functions other than in mod_cgid *are* horked due to log files being closed, but playing with mod_ext_filter and mod_cgi I don't see anything catastrophic, and I don't see a regression from the previous release. The attempt to write to the log file gets EBADF in the newly-created-but-doomed child process, and life goes on.


As for the child error function support for failure to start piped loggers, that path is extremely hard to hit with the default code because the extra possible checking for errors is enabled (apr_procattr_error_check_set()). After commenting out the calls to apr_procattr_error_check_set() in log.c, I don't see any regression.

uninteresting details of playing with piped loggers:

I. httpd 2.0.45-alpha, no apr_procattr_error_check_set, prefork:

A. bad piped access log:

log message to stderr regarding the problem
[error] (2)No such file or directory: exec of '/usr/bin/doesnotexist' failed

log message to error log stating the problem

regular attempts to restart it (that logic was broken in previous releases)

it looks like there is always a zombie process, but it is a different zombie since there is some lag between a failed attempt to exec the piped log and when the MPM wakes up to reap status

httpd is operational

B. bad piped error log:

log message to stderr regarding the problem

httpd is operational

II. httpd 2.0.44, unpatched, prefork:

bad piped access log:

no message to stderr

httpd is operational

bad piped error log:

no message to stderr

httpd is operational



Reply via email to