Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 503986 - www-servers/apache init.d start / stop dont work anymore when -D PERL is active
Summary: www-servers/apache init.d start / stop dont work anymore when -D PERL is active
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Server (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Lars Wendler (Polynomial-C) (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-03-09 13:47 UTC by Marko Weber Bürgermeister
Modified: 2014-06-02 18:45 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
apache2.initd.patch (apache2.initd.patch,563 bytes, patch)
2014-04-25 19:56 UTC, Lars Wendler (Polynomial-C) (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Marko Weber Bürgermeister 2014-03-09 13:47:59 UTC
when in the /etc/conf.d/apache2  -D PERl is set,
a /etc/init.d/apache2 stop ends with error:

# /etc/init.d/apache2 stop
 * Stopping apache2 ...                                                                                                                                                                                                                                                  [ !! ]
 * ERROR: apache2 failed to stop

BUT, the apache is stopped and no instance is left.

This behaviour ist not when '-D PERL' is not set.

Also an perl-cleaner --reallyall dont solved this.

any ideas?

emerge --info:

Portage 2.2.8-r1 (default/linux/amd64/13.0, gcc-4.7.3, glibc-2.17, 3.10.32_weber3.10.32 x86_64)
=================================================================
System uname: Linux-3.10.32_weber3.10.32-x86_64-Intel-R-_Core-TM-_i7-4770_CPU_@_3.40GHz-with-gentoo-2.2
KiB Mem:    32767632 total,  30804348 free
KiB Swap:          0 total,         0 free
Timestamp of tree: Sun, 09 Mar 2014 12:00:01 +0000
ld GNU ld (GNU Binutils) 2.23.2
app-shells/bash:          4.2_p45
dev-lang/python:          2.7.5-r3, 3.3.3
dev-util/cmake:           2.8.11.2
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.12.4
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.69
sys-devel/automake:       1.11.6, 1.13.4
sys-devel/binutils:       2.23.2
sys-devel/gcc:            4.7.3-r1
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.9 (virtual/os-headers)
sys-libs/glibc:           2.17
Repositories: gentoo
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=core2 -mtune=generic -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.5/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cli-php5.5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=core2 -mtune=generic -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf8"
LDFLAGS="-Wl,--as-needed"
MAKEOPTS="-j8"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
USE="acl amd64 berkdb bzip2 cli cracklib crypt cxx dri fortran gdbm iconv ipv6 mmx modules multilib ncurses nls nptl openmp pam pcre readline session sse sse2 ssl tcpd unicode zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="actions alias autoindex auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user cache cgi deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif status unique_id vhost_alias" APACHE2_MPMS="prefork" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga nouveau nv r128 radeon savage sis tdfx trident vesa via vmware dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, SYNC, USE_PYTHON


Reproducible: Always
Comment 1 Rafał Mużyło 2014-03-10 02:20:08 UTC
IRC, there should be a log of this failed run in /var/log/apache2/...
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2014-03-10 13:34:54 UTC
Please attach the /etc/conf.d/apache2 file that gives you this problem.
Comment 3 Marko Weber Bürgermeister 2014-03-10 16:03:03 UTC
(In reply to Rafał Mużyło from comment #1)
> IRC, there should be a log of this failed run in /var/log/apache2/...

there happens NOTHING in /var/log/apache2/*.log

sorry that
Comment 4 Marko Weber Bürgermeister 2014-03-10 16:04:10 UTC
(In reply to Jeroen Roovers from comment #2)
> Please attach the /etc/conf.d/apache2 file that gives you this problem.




# /etc/conf.d/apache2: config file for /etc/init.d/apache2

# When you install a module it is easy to activate or deactivate the modules
# and other features of apache using the APACHE2_OPTS line. Every module should
# install a configuration in /etc/apache2/modules.d. In that file will have an 
# <IfDefine NNN> directive where NNN is the option to enable that module.      
#                                                                              
# Here are the options available in the default configuration:                 
#                                                                              
#  AUTH_DIGEST  Enables mod_auth_digest                                        
#  AUTHNZ_LDAP  Enables authentication through mod_ldap (available if USE=ldap)
#  CACHE        Enables mod_cache                                              
#  DAV          Enables mod_dav                                                
#  ERRORDOCS    Enables default error documents for many languages.            
#  INFO         Enables mod_info, a useful module for debugging                
#  LANGUAGE     Enables content-negotiation based on language and charset.     
#  LDAP         Enables mod_ldap (available if USE=ldap)                       
#  MANUAL       Enables /manual/ to be the apache manual (available if USE=docs)
#  MEM_CACHE    Enables default configuration mod_mem_cache                     
#  PROXY        Enables mod_proxy
#  SSL          Enables SSL (available if USE=ssl)
#  STATUS       Enabled mod_status, a useful module for statistics
#  SUEXEC       Enables running CGI scripts (in USERDIR) through suexec.
#  USERDIR      Enables /~username mapping to /home/username/public_html
#
#
# The following two options provide the default virtual host for the HTTP and
# HTTPS protocol. YOU NEED TO ENABLE AT LEAST ONE OF THEM, otherwise apache
# will not listen for incomming connections on the approriate port.
#
#  DEFAULT_VHOST      Enables name-based virtual hosts, with the default
#                     virtual host being in /var/www/localhost/htdocs
#  SSL_DEFAULT_VHOST  Enables default vhost for SSL (you should enable this
#                     when you enable SSL)
#

## mychange start
APACHE2_OPTS="-D DEFAULT_VHOST -D INFO -D SSL -D SSL_DEFAULT_VHOST -D LANGUAGE -D PHP5 -D PERL -D CACHE -D STATUS -D MEM_CACHE -D FASTCGI -D FASTCGI_HANDLER"
## mychange stop

# Extended options for advanced uses of Apache ONLY
# You don't need to edit these unless you are doing crazy Apache stuff
# As not having them set correctly, or feeding in an incorrect configuration
# via them will result in Apache failing to start
# YOU HAVE BEEN WARNED.

# PID file
#PIDFILE=/var/run/apache2.pid

# timeout for startup/shutdown checks
#TIMEOUT=10

# ServerRoot setting
#SERVERROOT=/usr/lib64/apache2

# Configuration file location
# - If this does NOT start with a '/', then it is treated relative to
# $SERVERROOT by Apache
#CONFIGFILE=/etc/apache2/httpd.conf

# Location to log startup errors to
# They are normally dumped to your terminal.
#STARTUPERRORLOG="/var/log/apache2/startuperror.log"

# A command that outputs a formatted text version of the HTML at the URL
# of the command line. Designed for lynx, however other programs may work.
#LYNX="lynx -dump"

# The URL to your server's mod_status status page.
# Required for status and fullstatus
#STATUSURL="http://localhost/server-status"

# Method to use when reloading the server
# Valid options are 'restart' and 'graceful'
# See http://httpd.apache.org/docs/2.2/stopping.html for information on
# what they do and how they differ.
#RELOAD_TYPE="graceful"
Comment 5 Rafał Mużyło 2014-03-12 10:48:39 UTC
...so it seems the next step would be uncommenting STARTUPERRORLOG and checking what gets printed there.
Comment 6 Marko Weber Bürgermeister 2014-03-12 15:47:01 UTC
(In reply to Rafał Mużyło from comment #5)
> ...so it seems the next step would be uncommenting STARTUPERRORLOG and
> checking what gets printed there.

webserver-zbf apache2 # /etc/init.d/apache2 stop
 * Caching service dependencies ...                                                                                                                                                                      [ ok ]
 * Stopping apache2 ...                                                                                                                                                                                  [ !! ]
 * ERROR: apache2 failed to stop
webserver-zbf apache2 # /etc/init.d/apache2 zap
 * Manually resetting apache2 to stopped state
webserver-zbf apache2 # /etc/init.d/apache2 start
 * Starting apache2 ...                                                                                                                                                                                  [ ok ]
webserver-zbf apache2 # /etc/init.d/apache2 restart
 * Stopping apache2 ...                                                                                                                                                                                  [ !! ]
 * ERROR: apache2 failed to stop
webserver-zbf apache2 # /etc/init.d/apache2 stop
 * Stopping apache2 ...                                                                                                                                                                                  [ !! ]
 * ERROR: apache2 failed to stop
webserver-zbf apache2 # /etc/init.d/apache2 zap
 * Manually resetting apache2 to stopped state
webserver-zbf apache2 # /etc/init.d/apache2 start
 * Starting apache2 ...

webserver-zbf apache2 # cat /var/log/apache2/startuperror.log
Syntax OK
Syntax OK
Syntax OK


thats all what is listed in the logfile ;-(
Comment 7 Marko Weber Bürgermeister 2014-03-12 15:48:46 UTC
i also find this in /var/log/apache2/error_log

[Wed Mar 12 16:45:36 2014] [notice] Apache/2.2.25 (Unix) mod_ssl/2.2.25 OpenSSL/1.0.1f mod_fastcgi/mod_fastcgi-SNAP-0910052141 mod_perl/2.0.7 Perl/v5.16.3 configured -- resuming normal operations
[Wed Mar 12 16:45:41 2014] [warn] child process 13465 still did not exit, sending a SIGTERM
[Wed Mar 12 16:45:43 2014] [warn] child process 13465 still did not exit, sending a SIGTERM
[Wed Mar 12 16:45:45 2014] [warn] child process 13465 still did not exit, sending a SIGTERM
[Wed Mar 12 16:45:47 2014] [error] child process 13465 still did not exit, sending a SIGKILL
[Wed Mar 12 16:45:48 2014] [notice] caught SIGTERM, shutting down
[Wed Mar 12 16:45:51 2014] [notice] FastCGI: process manager initialized (pid 13504)
[Wed Mar 12 16:45:51 2014] [notice] Apache/2.2.25 (Unix) mod_ssl/2.2.25 OpenSSL/1.0.1f mod_fastcgi/mod_fastcgi-SNAP-0910052141 mod_perl/2.0.7 Perl/v5.16.3 configured -- resuming normal operations
Comment 8 Marko Weber Bürgermeister 2014-03-24 10:05:18 UTC
ok. any news on this bug?
Comment 9 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2014-04-21 11:03:38 UTC
I currently have no working setup using mod_perl. So I cannot promise to provide a fix soon. On the other hand patches are welcome.
Comment 10 Stejarel Veres 2014-04-21 19:04:44 UTC
OK same story here... I kinda narrowed the issue down to where the initscript checks whether the pidfile is still there in stop(). For whatever reason, it seems that the pidfile will exist for the tiniest amount of time after the actual process identified in it has terminated.

So I have added a second while loop immediately after that to wait for the pidfile to disappear. If this doesn't happen within the prescribed timeout, stopping will fail, but so far I haven't seen more than approximately one second of delay.

Not necessarily the prettiest thing but it gets the job done. I suppose I have replaced the first && with || in the condition of the original while loop... I'm not 100% sure I'm not missing something here. Any thoughts?

local i=0 retval=0
  while ( test -f "${PIDFILE}" && pgrep -P ${PID} apache2 >/dev/null ) \
          && [ $i -lt ${TIMEOUT} ]; do
          sleep 1 && i=$(expr $i + 1)
  done

+ local i=0
+ while [ -f "${PIDFILE}" ] && [ $i -lt ${TIMEOUT} ]; do
+         sleep 1 && i=$(expr $i + 1)
+ done
+
[ -e "${PIDFILE}" ] && retval=1
Comment 11 Mike Limansky 2014-04-22 21:06:59 UTC
Same issue here on i686 target.
Comment 12 Matthew Dirks 2014-04-24 21:43:39 UTC
The suggested solution posted in the following thread seems to resolve this issue and has worked for me (with apache-2.2.27, perl-5.16.3, and mod_perl-2.0.7 installed):

https://forums.gentoo.org/viewtopic-t-927794-start-0.html

... I'm sure you guys can probably find a much cleaner way to work the necessary fixes into the necessary ebuilds though :-). 

I went ahead and actually re-built apache2, perl, and mod_perl (even though the thread only mentioned perl and mod_perl) just to be sure. The only minor problem that I have now is that, when issuing a restart or stop command, the init script for apache now claims that it is failing to stop (even though the apache process has actually ended) and will need to be "zapped" back into a stopped state. After that, apache starts just fine. The reload command on the other hand works just fine.

Initially, I thought maybe that building apache with the "threads" USE flag selected (since the perl was built with "ithreads" USE flag selected) and then rebuilding perl and mod_perl accordingly might solve this, but that isn't a potential solution in my case as the php ebuild required the "threads" USE flag to be *unselected*.
Comment 13 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2014-04-25 19:56:32 UTC
Created attachment 375730 [details, diff]
apache2.initd.patch

If it's really only the pidfile which stays a bit longer than the apache process the attached patch might fix it.
Can you please patch your /etc/init.d/apache2 file with the attached file and report back if that fixes your issues?
Comment 14 Stejarel Veres 2014-04-27 17:30:18 UTC
What I did was basically this:

-  while ( test -f "${PIDFILE}" && pgrep -P ${PID} apache2 >/dev/null ) \
+  while ( test -f "${PIDFILE}" || pgrep -P ${PID} apache2 >/dev/null ) \

${PID} is retrieved from the pidfile before. So I want to stay in the loop while the process still exists _or_ while the pidfile does.

This approach did solve my problem, the initscript returns properly now and a quick verification after that shows no apache2 processes or the pidfile.

The bug title is "www-servers/apache init.d start / stop dont work anymore when -D PERL is active," which suggests start doesn't work either. This has not been my experience. Start worked fine at rc, but once you tried to stop apache2 (and it failed) you had to zap it in order for start to work. This is normal behavior, the only reason why start wouldn't work was because stop didn't.

Stejarel
Comment 15 Marko Weber Bürgermeister 2014-04-29 08:07:17 UTC
(In reply to Stejarel Veres from comment #14)
> What I did was basically this:
> 
> -  while ( test -f "${PIDFILE}" && pgrep -P ${PID} apache2 >/dev/null ) \
> +  while ( test -f "${PIDFILE}" || pgrep -P ${PID} apache2 >/dev/null ) \
> 
> ${PID} is retrieved from the pidfile before. So I want to stay in the loop
> while the process still exists _or_ while the pidfile does.
> 
> This approach did solve my problem, the initscript returns properly now and
> a quick verification after that shows no apache2 processes or the pidfile.
> 
> The bug title is "www-servers/apache init.d start / stop dont work anymore
> when -D PERL is active," which suggests start doesn't work either. This has
> not been my experience. Start worked fine at rc, but once you tried to stop
> apache2 (and it failed) you had to zap it in order for start to work. This
> is normal behavior, the only reason why start wouldn't work was because stop
> didn't.
> 
> Stejarel

Hi,
yeah sounds logic .........
but when i remove '-D PERL' i had no problems..

marko

ps, did not test yet with 2.2.27
Comment 16 Stejarel Veres 2014-04-29 17:56:33 UTC
(In reply to Marko Weber Bürgermeister from comment #15)
> (In reply to Stejarel Veres from comment #14)
> > What I did was basically this:
> > 
> > -  while ( test -f "${PIDFILE}" && pgrep -P ${PID} apache2 >/dev/null ) \
> > +  while ( test -f "${PIDFILE}" || pgrep -P ${PID} apache2 >/dev/null ) \
> > 
> > ${PID} is retrieved from the pidfile before. So I want to stay in the loop
> > while the process still exists _or_ while the pidfile does.
> > 
> > This approach did solve my problem, the initscript returns properly now and
> > a quick verification after that shows no apache2 processes or the pidfile.
> > 
> > The bug title is "www-servers/apache init.d start / stop dont work anymore
> > when -D PERL is active," which suggests start doesn't work either. This has
> > not been my experience. Start worked fine at rc, but once you tried to stop
> > apache2 (and it failed) you had to zap it in order for start to work. This
> > is normal behavior, the only reason why start wouldn't work was because stop
> > didn't.
> > 
> > Stejarel
> 
> Hi,
> yeah sounds logic .........
> but when i remove '-D PERL' i had no problems..
> 
> marko
> 
> ps, did not test yet with 2.2.27

I didn't test without -DPERL. I do need -DPERL. I'm not really sure why the pidfile lingers around for a while after the process has died with -DPERL but not without it. In any case, my take is that this change to the initscript shouldn't hurt either way.

Stejarel
Comment 17 Marko Weber Bürgermeister 2014-05-05 10:00:35 UTC
(In reply to Stejarel Veres from comment #16)
> (In reply to Marko Weber Bürgermeister from comment #15)
> > (In reply to Stejarel Veres from comment #14)
> > > What I did was basically this:
> > > 
> > > -  while ( test -f "${PIDFILE}" && pgrep -P ${PID} apache2 >/dev/null ) \
> > > +  while ( test -f "${PIDFILE}" || pgrep -P ${PID} apache2 >/dev/null ) \
> > > 
> > > ${PID} is retrieved from the pidfile before. So I want to stay in the loop
> > > while the process still exists _or_ while the pidfile does.
> > > 
> > > This approach did solve my problem, the initscript returns properly now and
> > > a quick verification after that shows no apache2 processes or the pidfile.
> > > 
> > > The bug title is "www-servers/apache init.d start / stop dont work anymore
> > > when -D PERL is active," which suggests start doesn't work either. This has
> > > not been my experience. Start worked fine at rc, but once you tried to stop
> > > apache2 (and it failed) you had to zap it in order for start to work. This
> > > is normal behavior, the only reason why start wouldn't work was because stop
> > > didn't.
> > > 
> > > Stejarel
> > 
> > Hi,
> > yeah sounds logic .........
> > but when i remove '-D PERL' i had no problems..
> > 
> > marko
> > 
> > ps, did not test yet with 2.2.27
> 
> I didn't test without -DPERL. I do need -DPERL. I'm not really sure why the
> pidfile lingers around for a while after the process has died with -DPERL
> but not without it. In any case, my take is that this change to the
> initscript shouldn't hurt either way.
> 
> Stejarel

just to be sure:  

> > -  while ( test -f "${PIDFILE}" && pgrep -P ${PID} apache2 >/dev/null ) \
> > +  while ( test -f "${PIDFILE}" || pgrep -P ${PID} apache2 >/dev/null ) \

this lines are in the /etc/init.d/apache2 ??
Comment 18 Stejarel Veres 2014-05-13 16:21:55 UTC
The first one is, I replaced && with || in that line to solve the behavior I observed. YMMV.
Comment 19 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2014-05-14 13:58:56 UTC
Thanks for the feedback.

http://git.overlays.gentoo.org/gitweb/?p=proj/apache.git;a=commitdiff;h=75da24d75d5fd2f10fc0c3dcfda5beb6c948fda1

This will be in the next gentoo-apache tarball rollout. Please keep this bug open until a fixed apache is in portage.
Comment 20 Marko Weber Bürgermeister 2014-05-21 13:58:42 UTC
(In reply to Lars Wendler (Polynomial-C) from comment #19)
> Thanks for the feedback.
> 
> http://git.overlays.gentoo.org/gitweb/?p=proj/apache.git;a=commitdiff;
> h=75da24d75d5fd2f10fc0c3dcfda5beb6c948fda1
> 
> This will be in the next gentoo-apache tarball rollout. Please keep this bug
> open until a fixed apache is in portage.

seems it is not in the new  www-servers/apache-2.2.27 , right ?
Comment 21 Matthew Dirks 2014-05-21 20:51:44 UTC
(In reply to Marko Weber Bürgermeister from comment #20)
> (In reply to Lars Wendler (Polynomial-C) from comment #19)
> > Thanks for the feedback.
> > 
> > http://git.overlays.gentoo.org/gitweb/?p=proj/apache.git;a=commitdiff;
> > h=75da24d75d5fd2f10fc0c3dcfda5beb6c948fda1
> > 
> > This will be in the next gentoo-apache tarball rollout. Please keep this bug
> > open until a fixed apache is in portage.
> 
> seems it is not in the new  www-servers/apache-2.2.27 , right ?

He stated pretty clearly that this fix was going to be in the next tarball rollout. He didn't say anything about it having gone into the portage tree (other than to keep the bug open until this fix has made it's way into portage). 

In fact if you read my comment #12 you'll plainly see that I'm on apache-2.2.27 and was effected by the same problem. Seeing as, to date, there isn't any revision level to the package beyond the base level then, yes, this fix is not in the www-servers/apache-2.2.27 package at this moment.
Comment 22 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2014-05-22 14:03:36 UTC
This was fixed in =www-servers/apache-2.2.27-r3 and =www-servers/apache-2.4.9-r3
Comment 23 Matthew Dirks 2014-05-23 14:08:16 UTC
(In reply to Lars Wendler (Polynomial-C) from comment #22)
> This was fixed in =www-servers/apache-2.2.27-r3 and
> =www-servers/apache-2.4.9-r3

Any idea as to how long until this revision-level package is stabilized in Portage? I know it's only a revision level defference, but I make it a practice not to install arch-masked packages unless it's absolutely necessary (which isn't immediately necessary given the work-around I'd found).
Comment 24 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2014-05-23 15:02:19 UTC
(In reply to Matthew Dirks from comment #23)
> (In reply to Lars Wendler (Polynomial-C) from comment #22)
> > This was fixed in =www-servers/apache-2.2.27-r3 and
> > =www-servers/apache-2.4.9-r3
> 
> Any idea as to how long until this revision-level package is stabilized in
> Portage? I know it's only a revision level defference, but I make it a
> practice not to install arch-masked packages unless it's absolutely
> necessary (which isn't immediately necessary given the work-around I'd
> found).

This is hard to tell. The changes I did in apache-2.2.27-r2 and -r3 must first settle a bit in ~arch. Then there's the usual delay when it comes to stabilization because we're hopelessly understaffed in the team doing stabilizations.
Comment 25 Matthew Dirks 2014-06-02 18:45:20 UTC
(In reply to Lars Wendler (Polynomial-C) from comment #24)
> (In reply to Matthew Dirks from comment #23)
> > (In reply to Lars Wendler (Polynomial-C) from comment #22)
> > > This was fixed in =www-servers/apache-2.2.27-r3 and
> > > =www-servers/apache-2.4.9-r3
> > 
> > Any idea as to how long until this revision-level package is stabilized in
> > Portage? I know it's only a revision level defference, but I make it a
> > practice not to install arch-masked packages unless it's absolutely
> > necessary (which isn't immediately necessary given the work-around I'd
> > found).
> 
> This is hard to tell. The changes I did in apache-2.2.27-r2 and -r3 must
> first settle a bit in ~arch. Then there's the usual delay when it comes to
> stabilization because we're hopelessly understaffed in the team doing
> stabilizations.

What is entailed in stabilization process exactly (esp. x86 or amd64)? I mean, if it's just running tests on systems of a certain specification. then maybe random volunteers could help lighten the load on the dedicated teams. I know I wouldn't mind personally chipping in some resources towards those ends from time to time. I know I can't be the only one that makes it a general practice to stick primarily to stabilized packages.