The following reply was made to PR mod_log-any/1419; it has been noted by GNATS.
From: Dean Gaudet <[EMAIL PROTECTED]> To: Mike Rudolph <[EMAIL PROTECTED]> Cc: [EMAIL PROTECTED] Subject: Re: mod_log-any/1419: Logging to a pipe Date: Fri, 14 Nov 1997 16:42:01 -0800 (PST) You probably have "| foo" and you're seeing both the /bin/sh which is running that command, and the command itself. Look at the parentage to find out... ps ajxww or ps alxww or something like that. It's unlikely that two processes are actually running. You can do "| exec foo" if it bugs you. 1.3b2 piping is slightly borken, every time a httpd child exits it will spawn another pipe child. Define -DNO_OTHER_CHILD or wait until 1.3b3. If you read the 1.3 perf-tuning document at www.apache.org/docs/misc/perf-tuning.html you'll discover the BUFFERED_LOGS define. It's impossible to increase the size of a pipe() in a portable manner. They're almost always 4k deep. Buffering behaviour across a pipe (the buffer in the kernel) also differs greatly across unixes. For example, under linux, if the writer is fast enough they can fill a 4k pipe 1 byte at a time before the reader is awakened to read the pipe. This is likely different elsewhere. If you need to tweak the kernel buffer for the pipe then you'll need to replace the code with a socketpair() call and use setsockopt() and see if it helps... but that's not something we'll be putting into the server any time soon because it opens a portability can o' worms. Dean
