Hi Graham...
we see this often on unclean shutdowns


one of our developers (hi Blaise) over here wrote this script (we start as user 'httpd', not root BTW)


just be carefull if anything else is running as the same user.

# find shared memory ipcs
shmipcs=$(ipcs -m | egrep -v 'Shared|shmid' | grep httpd | tr -s ' ' | \
 cut -d ' ' -f 2)

# find semaphore ipcs
semipcs=$(ipcs -s | egrep -v 'Shared|shmid' | grep httpd | tr -s ' ' | \
 cut -d ' ' -f 2)


# see what's going on set -x


# remove ipcs [[ -n $shmipcs ]] && ipcrm shm $shmipcs [[ -n $semipcs ]] && ipcrm sem $semipcs


--Cheers Ian Graham Leggett wrote:
Justin Erenkrantz wrote:

Well, you don't need to use named-based scoreboard on Linux. Just remove the ScoreBoardFile directive.


Cool, that works. :)

Even though, named-based scoreboards should work. But, you need to indicate which shared memory system your APR is using. Then, you need to see where exactly the error is coming from within APR - what system call is returning it? What does the man page say for that call?


No idea unfortunately, the call returns possibly errors in a number of places, but doesn't indicate which error actually triggered the problem. Will have to look at it closer in a debugger and see where it is going.

It could be that your system is out of semaphores. You may want to see what ipcs reports and perhaps delete a bunch of stale ones (mod_rewrite eats semaphores for lunch). That's a pretty common occurrence. -- justin

P.S. The fact that your system is complaining that the pid file is overwritten may indeed mean that there is another httpd running.


This was caused by httpd shutting down uncleanly during startup.

Regards,
Graham




Reply via email to