Jeff Trawick wrote: > I'm happy with the APR-ized notion of how-did-the-process-exit and > what-is-the-signal-or-exit-code but throwing away the native status is > a real problem.
[...] > missing from patch: > doc in header files, other mpms, apr/threadproc/foo, where foo != > unix, testing > > Index: include/mpm_common.h I put this patch on, and AFAICT Apache is back to normal with respect to child exit status. Prior to doing the make install, I captured doc on another really annoying phenomenon. Our httpd-std.conf contains "Group #-1". This does not work on my Linux box. If I try to use it with the current HEAD, we loop creating child processes which quickly exit with a fatal error. The parent doesn't realize it, and just keeps forking doomed children forever. After applying Jeff's patch, the parent sees the fatal error and quickly bails out. Then I restarted the server with a good config and forced a seg fault in mod_info's handler. I see a log message, and the scoreboard gets cleaned up properly. I'm going to put this on daedalus and verify that it works there. If so, I plan to put this into production this evening when the load dies down. I'd like to see a more complete version of this patch or something equivalent committed soon. Greg ------------------------------------------------------------------------------------------------ results when using "Group #-1" on Linux, with httpd build from the curent HEAD Children are generating fatal errors which are not recognized by the parent. [EMAIL PROTECTED] /ap2.org]$ hps 27133 1 140 do_sel S pts/1 00:00:00 httpd 27276 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> 27277 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> 27278 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> 27279 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> 27280 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> 27281 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> 27282 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> 27283 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> [EMAIL PROTECTED] /ap2.org]$ hps 27133 1 140 do_sel S pts/1 00:00:00 httpd 27309 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> [EMAIL PROTECTED] /ap2.org]$ hps 27133 1 140 do_sel S pts/1 00:00:00 httpd 27337 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> 27338 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> 27339 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> 27340 27133 044 do_exi Z pts/1 00:00:00 httpd <defunct> [EMAIL PROTECTED] /ap2.org]$ hps 27133 1 140 do_sel S pts/1 00:00:00 httpd [EMAIL PROTECTED] /ap2.org]$ tail logs/error_log [Thu Oct 18 11:33:03 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 11:33:03 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 11:33:03 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 11:33:03 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 11:33:03 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 11:33:03 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 11:33:03 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 11:33:03 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 11:33:05 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 this continues until you kill the parent. applied Jeff's latest patch, tried the same config: [Thu Oct 18 11:33:05 2001] [notice] caught SIGTERM, shutting down [Thu Oct 18 12:23:56 2001] [notice] Apache/2.0.27-dev (Unix) configured -- resuming normal operations [Thu Oct 18 12:23:56 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 12:23:56 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 12:23:56 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 12:23:56 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 12:23:56 2001] [alert] (22)Invalid argument: setgid: unable to set group id to Group 4294967295 [Thu Oct 18 12:23:57 2001] [alert] Child 29966 returned a Fatal error... Apache is exiting! hooray! started the same build, with a config file containing a usable Group, then forced a seg fault in mod_info's handler: [Thu Oct 18 12:45:19 2001] [notice] child pid 673 exit signal Segmentation fault (11) yay! checked the scoreboard with server-status. The slot where pid 673 would have been contains a "." - open slot with no current process.