You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by yary <no...@gmail.com> on 2008/02/24 03:34:58 UTC

[users@httpd] worker MPM hangs, but event MPM works fine, Apache/2.2.8 on OpenBSD 3.9

Yesterday I downloaded the Apache 2.2.8 source tarball from
apache.org, built it on my OpenBSD 3.9 box with

  ./configure --prefix=/usr/local/apache2 --with-mpm=worker
--with-included-apr && make && sudo make install

and ran it with

  cd /usr/local/apache2/bin; ./apachectl start

Strange thing is that any client I pointed to my test instance would
connect and then hang. When I stopped apache with

  ./apachectl stop

then, a few seconds later, all the waiting clients would show "It worked!"

The error log shows this:

[Thu Feb 21 22:14:32 2008] [notice] Apache/2.2.8 (Unix) mod_ssl/2.2.8 OpenSSL/0.
9.7g configured -- resuming normal operations
[Thu Feb 21 22:18:38 2008] [warn] child process 14289 still did not exit, sendin
g a SIGTERM
[Thu Feb 21 22:18:38 2008] [warn] child process 2830 still did not exit, sending
 a SIGTERM
[Thu Feb 21 22:18:38 2008] [warn] child process 5626 still did not exit, sending
 a SIGTERM
[Thu Feb 21 22:18:39 2008] [notice] caught SIGTERM, shutting down

Some more experimentation showed that 304 responses worked as
expected, sent back to client without delay. The 200-status responses
would wait until server shutdown to be sent. Some lines from the
access_log (removed my IP addys):

aa.bb.cc.dd - - [21/Feb/2008:22:18:38 -0800] "GET / HTTP/1.1" 200 44
xx.yy.zz.qq - - [21/Feb/2008:22:18:38 -0800] "GET / HTTP/1.0" 200 44
xx.yy.zz.qq - - [21/Feb/2008:22:22:59 -0800] "GET / HTTP/1.0" 200 44
aa.bb.cc.dd - - [21/Feb/2008:22:22:59 -0800] "GET / HTTP/1.1" 304 -
xx.yy.zz.qq - - [21/Feb/2008:22:22:59 -0800] "GET / HTTP/1.0" 200 44
aa.bb.cc.dd - - [21/Feb/2008:22:22:59 -0800] "GET / HTTP/1.1" 304 -
xx.yy.zz.qq - - [21/Feb/2008:22:22:59 -0800] "GET / HTTP/1.0" 200 44
xx.yy.zz.qq - - [21/Feb/2008:22:23:17 -0800] "GET / HTTP/1.0" 200 44
aa.bb.cc.dd - - [21/Feb/2008:22:27:36 -0800] "GET / HTTP/1.1" 304 -
xx.yy.zz.qq - - [21/Feb/2008:22:27:36 -0800] "GET / HTTP/1.0" 200 44
xx.yy.zz.qq - - [21/Feb/2008:22:37:16 -0800] "GET / HTTP/1.0" 200 44
aa.bb.cc.dd - - [21/Feb/2008:22:37:16 -0800] "GET / HTTP/1.1" 304 -
aa.bb.cc.dd - - [21/Feb/2008:22:37:16 -0800] "GET / HTTP/1.1" 200 44
xx.yy.zz.qq - - [21/Feb/2008:22:37:46 -0800] "GET / HTTP/1.0" 200 44

I did try rebuilding, changing to "-with-mpm=event" - and now apache
works great! Which baffles me, since the event mpm is experimental and
based on the worker mpm.

I tried searching this list's archives and bugzilla, but didn't know
how to narrow my query enough- always came up with hundreds of hits,
few of which seemed relevant.

I'll use apache with the event mpm, since it's working for my needs so
far, but am wondering if this has already been noted, or if anyone is
interested in this behavior. I can run more tests or supply more info
if you are.

Someday I'll upgrade my box to a more recent version of OpenBSD,
probably in a couple months when 4.3 is ready.

thanks!

-y

---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org