Bug 44433 - Apache reports it is stopped before all child processes have stopped
Summary: Apache reports it is stopped before all child processes have stopped
Status: RESOLVED WORKSFORME
Alias: None
Product: Apache httpd-2
Classification: Unclassified
Component: All (show other bugs)
Version: 2.2.8
Hardware: Other Linux
: P2 normal with 5 votes (vote)
Target Milestone: ---
Assignee: Apache HTTPD Bugs Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-02-15 12:04 UTC by Matthew Schultz
Modified: 2008-09-23 21:02 UTC (History)
4 users (show)



Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matthew Schultz 2008-02-15 12:04:39 UTC
Apache should not report that it has stopped if not all the child processes have
stopped.  The effect of this is restart and graceful restart are completely
useless (especially in automated scripts) because it attempts to start and
thinks it is still running so does not start at all.  Further documentation of
this bug can be found at: 

http://bugs.gentoo.org/show_bug.cgi?id=110556 


emerge -pv www-servers/apache:

[ebuild   R   ] www-servers/apache-2.2.8  USE="ldap ssl suexec threads -debug
-doc (-selinux) -sni -static" APACHE2_MODULES="actions alias auth_basic
auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm
authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache
dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter
file_cache filter headers ident imagemap include info log_config logio
mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer
proxy_connect proxy_http rewrite setenvif speling status unique_id userdir
usertrack vhost_alias -asis -authn_alias -cern_meta -charset_lite -dumpio
-log_forensic -proxy_ftp -version" APACHE2_MPMS="-event -itk -peruser -prefork
-worker" 0 kB

emerge --info:

Portage 2.1.4.4 (default-linux/x86/2007.0, gcc-4.1.2, glibc-2.6.1-r0,
2.6.24-gentoo-r2 i686)
=================================================================
System uname: 2.6.24-gentoo-r2 i686 Genuine Intel(R) CPU T2300 @ 1.66GHz
Timestamp of tree: Fri, 15 Feb 2008 14:16:01 +0000
ccache version 2.4 [disabled]
app-shells/bash:     3.2_p17-r1
dev-java/java-config: 1.3.7, 2.1.4
dev-lang/python:     2.4.4-r6
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 1.12.10-r5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config
/usr/kde/3.5/shutdown /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf
/etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/
/etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo
/etc/udev/rules.d"
CXXFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks metadata-transfer parallel-fetch sandbox sfperms strict
unmerge-orphans userfetch"
GENTOO_MIRRORS="http://portage.home http://prometheus.cs.wmich.edu/gentoo
http://mirror.phy.olemiss.edu/mirror/gentoo
http://gentoo.cites.uiuc.edu/pub/gentoo/
http://mirror.utdlug.org/linux/distributions/gentoo/ "
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LINGUAS="en ru"
MAKEOPTS="-j6"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --stats --timeout=180 --exclude=/distfiles
--exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp/portage"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/sajinet /usr/local/portage"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi adns alsa apache2 audiofile avi bcmath bdf berkdb
bitmap-fonts bzip2 calendar caps cddb cdparanoia cdr cjk clamav cli
cpudetection cracklib crypt ctype cups curl curlwrappers dbus directfb dri dts
dvb dvd dvdnav dvdread encode exif fbcon ffmpeg flac foomaticdb fortran ftp gd
gdbm gif glib gmp gnutls gpm gtk gtk2 hal hash iconv imagemagick imap imlib
innodb ipv6 isdnlog java javascript jpeg jpeg2k json kde kson lcms ldap
ldap-sasl live logrotate lzo mad matroska mcal mhash midi mime mjpeg mmap mmx
mmxext mng mp2 mp3 mp4 mpeg msession msn mssql mudflap mysql mysqli ncurses
network nls nptl nptlonly nsplugin nss nvidia offensive ogg openal opengl
openmp osc oss pam pch pcntl pcre pdf pdo perl php png posix ppds pppd python
qt3 qt3support qt4 quicktime readline reflection rtc samba sasl sdl seamonkey
session simplexml snmp soap sockets spell spl sqlite sse ssl subversion suexec
svg tcpd theora threads tidy tiff tokenizer transcode truetype truetype-fonts
type1-fonts unicode usb v4l v4l2 vcd vorbis wddx win32codecs wxwindows x264 x86
xforms xine xml xorg xpm xv xvid zip zlib" ALSA_CARDS="hda-intel"
ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file
hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route
share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest
authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default
authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs
dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter
headers ident imagemap include info log_config logio mem_cache mime mime_magic
negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite
setenvif so speling status unique_id userdir usertrack vhost_alias"
ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad
cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en ru"
USERLAND="GNU" VIDEO_CARDS="i810 fbdev vesa"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS,
PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Tom Stambaugh 2008-03-02 03:56:30 UTC
This bug breaks logrotate. The result is that I have to manually restart the httpd service each time it tries to rotate the logs. This is a BAD thing.

While the bug is pending, some sort of work-around would be helpful.
Comment 2 Jakub Moc 2008-03-22 04:32:26 UTC
To illustrate the scope of the problem, distros are resorting to absolutely disgusting hacks in their init scripts, Debian being one of examples:

http://svn.debian.org/viewsvn/pkg-apache/trunk/apache2/apache2.2-common.apache2.init?rev=613&view=markup
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=445263

Such stuff is plain not maintainable, we refuse to do same things on Gentoo and getting flamed by users because of this. :(

Comment 3 Tom Stambaugh 2008-09-23 16:42:53 UTC
Hello? Hello? Is this thing working? Testing 1, 2, 3...

It doesn't sound it like this was touched in the 2.3.9 release -- it's still a problem.

The workarounds are still ugly ...
Comment 4 William A. Rowe Jr. 2008-09-23 21:02:12 UTC
"distros are resorting to absolutely disgusting hacks in their init scripts"

heaven forbid they offer patches to *solve* the bug.

"Hello? Hello? Is this thing working? Testing 1, 2, 3..."

No; this thing is for reporting flaws in the httpd source code distributed
by the ASF.  If you have a problem with a vendor, complain to the vendor.
If you have a solution to some source code flaw, identify the flaw, reopen
this bug with an attached patch.