Re: [VOTE] Release Apache HTTP server 2.2.10
Den Thursday 16 October 2008 17:20:08 skrev Sander Temme: On Oct 16, 2008, at 6:07 AM, Oden Eriksson wrote: For some unknown reason I suddenly get some failed tests on Mandriva Cooker, it worked fine 2008-10-10 (!?) I saw that on my Solaris x86 VM, but it happened across the board against 2.2.9 and the 2.2.10 rc. And, I didn't see it on either Ubuntu or my Mac so I'm blaming staleness in the Perl setup on that Solaris install. OK. Thanks. That might be the problem. -- Regards // Oden Eriksson
Re: svn commit: r705361 - in /httpd/httpd/trunk/modules/aaa: mod_authz_dbd.c mod_authz_dbm.c mod_authz_groupfile.c mod_authz_owner.c mod_authz_user.c
Eric Covener wrote: Authorization in LDAP has a special path for when authentication wasn't handled by mod_authnz_ldap, but r-user still may be mappable to an DN on the LDAP server. Net, it can't do anything useful without r-user. This short-circuit should be possible well before the problematic functions you mention. OK, I'll look at adding the same !r-user test, unless others think it's unnecessary. It looks like it might be necessary to me, but I'm not 100% sure. Chris. -- GPG Key ID: 366A375B GPG Key Fingerprint: 485E 5041 17E1 E2BB C263 E4DE C8E3 FA36 366A 375B
Re: strange usage pattern for child processes
On Oct 15, 2008, at 6:56 PM, Graham Leggett wrote: Ruediger Pluem wrote: Something else to try is to look at the ProxyIOBufferSize parameter. The proxy reads from the backend in blocks, and as soon as a block is not full (ie it's the last block), the proxy will complete and terminate the backend request before sending the last block on to the client. No. See below. Oh dear - I know this optimisation is supposed to be there - I wrote it. Picking through the proxy code on v2.2, it looks like the optimisation has been removed for some reason. The logic should flow like this: H I'm not seeing it in trunk.
Re: strange usage pattern for child processes
On 10/17/2008 05:38 PM, Jim Jagielski wrote: On Oct 15, 2008, at 6:56 PM, Graham Leggett wrote: Ruediger Pluem wrote: Something else to try is to look at the ProxyIOBufferSize parameter. The proxy reads from the backend in blocks, and as soon as a block is not full (ie it's the last block), the proxy will complete and terminate the backend request before sending the last block on to the client. No. See below. Oh dear - I know this optimisation is supposed to be there - I wrote it. Picking through the proxy code on v2.2, it looks like the optimisation has been removed for some reason. The logic should flow like this: H I'm not seeing it in trunk. The code Graham is talking about was introduced by him in r93811 and was removed in r104602 about 4 years ago. So I am not astonished any longer that I cannot remember this optimization. It was before my time :-). This optimization was never in 2.2.x (2.0.x still ships with it). BTW: This logic flow cannot be restored easily, because due to the current pool and bucket allocator usage it *must* be ensured that all buckets are flushed down the chain before we can return the backend connection to the connection pool. By the time this was removed and in 2.0.x we do *not* use a connection pool for backend connections. Regards RĂ¼diger
leak on graceful restarts
Looking at a problem that seems easy to re-produce using un-patched trunk, 2.2.10 and 2.0.63. Using a graceful restart causes higher memory usage in the parent, which is then passed on to the 'new' children processes. The issue seems to appear in all the Worker, Event and Prefork MPMs. Compile up httpd without apr pool debugging enabled, start it as normal, and then check the memory usage: $ ./apachectl start $ ps alx | grep 18459 1 1000 18459 1 20 0 152752 2672 674009 Ss ? 0:00 /home/chip/temp/httpd/bin/httpd -k start $ ./apachectl graceful $ ps alx | grep 18459 1 1000 18459 1 20 0 152752 3192 674009 Ss ? 0:00 /home/chip/temp/httpd/bin/httpd -k start $ ./apachectl graceful $ ps alx | grep 18459 1 1000 18459 1 20 0 152752 3236 674009 Ss ? 0:00 /home/chip/temp/httpd/bin/httpd -k start $ ./apachectl graceful $ ps alx | grep 18459 1 1000 18459 1 20 0 152752 3280 674009 Ss ? 0:00 /home/chip/temp/httpd/bin/httpd -k start (2672 - 3192 - 3236 - 3280) And, at least over here, httpd consistently grows in RSS, without any obvious cause. Seems reproducible on Ubuntu and Darwin, using 2.2.10, 2.0.63 and trunk. Any ideas? Thanks, Paul