httpd-bugs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 7838] - Apache leaves shared memory segments and dies after unclean shutdown
Date Mon, 08 Apr 2002 18:02:43 GMT
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7838>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7838

Apache leaves shared memory segments and dies after unclean shutdown





------- Additional Comments From erich.prchal@siemens.at  2002-04-08 18:02 -------
I had the same problem, truss is:

from: scoreboard.c, create_namebased_scoreboard:
9935:   unlink("/usr/local/apache2/logs/apache_runtime_status") Err#2 ENOENT

from: create_namebased_scoreboard, 
else path of filename == NULL, #if APR_USE_SHMEM_SHMGET
9935:   open("/usr/local/apache2/logs/apache_runtime_status",
 O_WRONLY|O_CREAT|O_EXCL, 0666) = 29
9935:   stat64("/usr/local/apache2/logs/apache_runtime_status", 0xFFBEF8A0) = 0
9935:   shmget(16778794, 196888, 0600|IPC_CREAT|IPC_EXCL) Err#17 EEXIST

The following change helped:
remove the IPC_EXCL in:
        if ((new_m->shmid = shmget(shmkey, new_m->realsize,
                                   SHM_R | SHM_W | IPC_CREAT | IPC_EXCL )) < 0) 
{

The scoreboard file was just created with  APR_CREATE | APR_EXCL
so I think this should be safe.

A clean solution would be a function in shm.c which does a cleanup if only the 
filename
is know and use this instead of the apr_file_remove in scoreboard.c

erich.prchal@siemens.at

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org


Mime
View raw message