ulimit
Hi All, Is there any way to prevent Apache::Test from setting ulimit during `make test`? Mine is a Pure Perl module, and I don't really need to worry about core files. I'd like to gain the extra time taken to set and unset it repeatedly. TIA, David -- David Wheeler AIM: dwTheory [EMAIL PROTECTED] ICQ: 15726394 http://kineticode.com/ Yahoo!: dew7e Jabber: [EMAIL PROTECTED] Kineticode. Setting knowledge in motion.[sm]
Re: ulimit
David Wheeler wrote: Hi All, Is there any way to prevent Apache::Test from setting ulimit during `make test`? Mine is a Pure Perl module, and I don't really need to worry about core files. I'd like to gain the extra time taken to set and unset it repeatedly. looks like setting $ENV{APACHE_TEST_ULIMIT_SET}=1 should do the trick. optionally, you could locally override set_ulimit() from your TEST.PL use Apache::TestRun; local *Apache::TestRun::set_ulimit = sub {1}; HTH --Geoff BTW, anybody know what's up with the Reply-To headers on this list - it's unlike the other httpd lists AFAICT.
Re: ulimit
On Tuesday, July 1, 2003, at 06:19 PM, Geoffrey Young wrote: looks like setting $ENV{APACHE_TEST_ULIMIT_SET}=1 should do the trick. optionally, you could locally override set_ulimit() from your TEST.PL use Apache::TestRun; local *Apache::TestRun::set_ulimit = sub {1}; Ah, well, I don't have a TEST.PL, so I won't worry about it. I was just wondering if there was a parameter to C Apache::TestRunPerl-generate_script or something that I could use. Thanks, David -- David Wheeler AIM: dwTheory [EMAIL PROTECTED] ICQ: 15726394 http://kineticode.com/ Yahoo!: dew7e Jabber: [EMAIL PROTECTED] Kineticode. Setting knowledge in motion.[sm]
Re: cvs commit: apr-util/include apr_buckets.h
On Wed, 2 Jul 2003 [EMAIL PROTECTED] wrote: jwoolley2003/07/01 22:25:44 Modified:buckets apr_buckets_alloc.c include apr_buckets.h Log: an addition to the api to allow httpd mpm's to share an apr_allocator_t between a thread pool and the thread's bucket allocator. this will allow the freelist max size to be managed. I just realized there's a problem with this... if you call apr_bucket_alloc_create_ex() and pass it an allocator, alloc_cleanup() should not call apr_allocator_destroy(allocator)... that should be the job of the caller. I'm going to have to add a flag to the apr_bucket_alloc_t to keep track of this. At any rate, the MPM changes in httpd are turning into a lot of ugliness the deeper I dig. Several MPM's create their MPM's in the wrong spot or are in some other way not being cooperative. I'll commit the changes tomorrow to httpd-2.1 anyway, but it's likely to take a week or so to make sure I've not introduced accidentally any double-free conditions on shutdown or memory leaks or anything else bad. I'll need the people who keep up with the MPM's (*all* of them) to test the changes after they're made in 2.1-dev. Bottom line: httpd 2.0.47 should not be held up for this. --Cliff
Re: Apache Code Inspection Report (fwd)
On Tue, 1 Jul 2003, Cliff Woolley wrote: don't use it. We intentionally do not check for OOM conditions because, though we've had many heated debates about this, we've always arrived at the consensus that if you hit OOM, your box is hosed anyway and virtually any effort you make to correct it other than dying will just make things Never tried this with 2.0; but with 1.3 I've regularly used loging.conf/ulimits to manage footprint; and relied on getting a child emit an early Ouch! Out of memory! followed by its exit(1) bail to amke sure things did not spin out of control and hose the box. Dw
Re: cvs commit: apr-util/include apr_buckets.h
On Wed, Jul 02, 2003 at 02:03:39AM -0400, Cliff Woolley wrote: On Wed, 2 Jul 2003 [EMAIL PROTECTED] wrote: jwoolley2003/07/01 22:25:44 Modified:buckets apr_buckets_alloc.c include apr_buckets.h Log: an addition to the api to allow httpd mpm's to share an apr_allocator_t between a thread pool and the thread's bucket allocator. this will allow the freelist max size to be managed. I just realized there's a problem with this... if you call apr_bucket_alloc_create_ex() and pass it an allocator, alloc_cleanup() should not call apr_allocator_destroy(allocator)... that should be the job of the caller. I'm going to have to add a flag to the apr_bucket_alloc_t to keep track of this. Eh? Why the flag? What is that for... doesn't the caller know when and if he should clean up? So there shouldn't be a need for a flag... Cheers, -g -- Greg Stein, http://www.lyra.org/
Re: cvs commit: apr-util/include apr_buckets.h
On Tue, 1 Jul 2003, Greg Stein wrote: Eh? Why the flag? What is that for... doesn't the caller know when and if he should clean up? So there shouldn't be a need for a flag... The caller knows. But right now apr_buckets_alloc.c:alloc_cleanup() calls apr_allocator_destroy(allocator) regardless of whether it owns the allocator or not. But I think this is irrelevant because I think there's an entirely cleaner way to do this. No flag, no extra API function. Namely, we should just have apr_bucket_alloc_create(apr_pool_t *p) {} use p's allocator always (apr_pool_allocator_get(p)). I think that will work fine and solve this problem for good. But I have to think about the ramifications. From what I've seen of the MPM's in looking through them just now, I think it will be okay. But I'll need to investigate further to be sure. --Cliff
apache 2.0.46 : segmentation fault or hangs system
Hi, a couple of weeks ago I upgraded our servers from 2.0.43 to 2.0.46. Since then, child processes on our internal server either exit with a segmentation fault or keep running but take all CPU power. Hanging processes occur at a rate of about 5 per hour. As far as I can see the URLs they are serving are not special and work fine with other child processes - however, they are all proxy requests. We are using two apache 2.0.46 is a proxy chain, the internal webserver hands all requests to the external apache 2.0.46. The external apache does not have that problem, however, when an error occurs connecting to a remote site or when an invalid status line is received, I noticed it does not exit cleanly and an 'invalid status line' error is received also by the internal server. I tried to SIGQUIT a hanging childprocess to get a core but it does not respond ... Is there a way to make a child process core ( I didn't find a core anywhere ) when receiving a segmentation fault ? The systems are HPUX 11.0 . Thanks in advance ! Peter. -- Peter Van Biesen Adj. Sysadmin V.F.S.I.P.H. tel: +32 (0) 2 225 85 70 fax: +32 (0) 2 225 85 88 e-mail: [EMAIL PROTECTED]
Re: LimitInternalRecursion for 1.3
On Tuesday, July 1, 2003, at 04:16 PM, André Malo wrote: * Jim Jagielski wrote: Noted in Apache 1.3's STATUS file... There is also a question (MMN bump) Hmm, in 2.x we decided that core_server_conf isn't public so we don't need such a bump. Perhaps for the ap_is_recursion_limit_exceeded function? Then we'd need to bump in 2.x, too. Opinions? I also agree that we don't officially export it, so a bump isn't 100% required, but it was something that needed to be brought up.
Re: [PATCH] util_ldap_cache shm broken in apache 2.x
On Tue, Jul 01, 2003 at 03:01:43PM +0200, Estrade Matthieu wrote: ... #if APR_HAS_SHARED_MEMORY -if (util_ldap_shm) { -return (void *)apr_rmm_addr_get(util_ldap_rmm, apr_rmm_calloc(util_ldap_rmm, size)); +if (st-util_ldap_shm) { +return (void *)apr_rmm_addr_get(st-util_ldap_rmm, apr_rmm_calloc(st-util_ldap_rmm, size)); } else { Hi Matthieu - this will still break when the shmem segment fills up, the code needs to check for apr_rmm_malloc/calloc returning 0. joe
Re: Just to clarify
Graham Leggett wrote: Am I correct in understanding that commits to the v2.1 branch are commit then review? yes
Re: [PATCH] util_ldap_cache shm broken in apache 2.x
Hi joe, First, thanks for the answer. I based my code on two examples: First the broken util_ldap_cache_mgr.c and i just changed util_ldap_rmm by st-util_ldap_rmm. Then on ssl_scache_shmht.c uring rmm to see if i have to check what return apr_rmm_malloc and calloc. (it's not done) After this, i decided to not check it directly in my util_ald_alloc because of the example. Matthieu Joe Orton wrote: On Tue, Jul 01, 2003 at 03:01:43PM +0200, Estrade Matthieu wrote: ... #if APR_HAS_SHARED_MEMORY -if (util_ldap_shm) { -return (void *)apr_rmm_addr_get(util_ldap_rmm, apr_rmm_calloc(util_ldap_rmm, size)); +if (st-util_ldap_shm) { +return (void *)apr_rmm_addr_get(st-util_ldap_rmm, apr_rmm_calloc(st-util_ldap_rmm, size)); } else { Hi Matthieu - this will still break when the shmem segment fills up, the code needs to check for apr_rmm_malloc/calloc returning 0. joe _ Envie de discuter en live avec vos amis ? Télécharger MSN Messenger http://www.ifrance.com/_reloc/m la 1ère messagerie instantanée de France _ Envie de discuter en live avec vos amis ? Télécharger MSN Messenger http://www.ifrance.com/_reloc/m la 1ère messagerie instantanée de France
[STATUS] (apache-1.3) Wed Jul 2 23:45:12 EDT 2003
APACHE 1.3 STATUS: -*-text-*- Last modified at [$Date: 2003/07/01 12:29:12 $] Release: 1.3.28-dev: In development. Jim proposes a TAG on July 1, 2003 with a RELEASE on July 4, 2003 and offers to be RM. 1.3.27: Tagged September 30, 2002. Announced Oct 3, 2002. 1.3.26: Tagged June 18, 2002. 1.3.25: Tagged June 17, 2002. Not released. 1.3.24: Tagged Mar 21, 2002. Announced Mar 22, 2002. 1.3.23: Tagged Jan 21, 2002. 1.3.22: Tagged Oct 8, 2001. Announced Oct 12, 2001. 1.3.21: Not released. (Pulled for htdocs/manual config mismatch. t/r Oct 5, 2001) 1.3.20: Tagged and rolled May 15, 2001. Announced May 21, 2001. 1.3.19: Tagged and rolled Feb 26, 2001. Announced Mar 01, 2001. 1.3.18: Tagged and rolled Not released. (Pulled because of an incorrect unescaping fix. t/r Feb 19, 2001) 1.3.17: Tagged and rolled Jan 26, 2001. Announced Jan 29, 2001. 1.3.16: Not released. (Pulled because of vhosting bug. t/r Jan 20, 2001) 1.3.15: Not released. (Pulled due to CVS dumping core during the tagging when it reached src/os/win32/) 1.3.14: Tagged and Rolled Oct 10, 2000. Released/announced on the 13th. 1.3.13: Not released. (Pulled in the first minutes due to a Netware build bug) 1.3.12: Tagged and rolled Feb. 23, 2000. Released/announced on the 25th. 1.3.11: Tagged and rolled Jan. 19, 2000. Released/announced on the 21st. 1.3.10: Not released. (Pulled at last minute due to a build bug in the MPE port) 1.3.9: Tagged and rolled on Aug. 16, 1999. Released and announced on 19th. 1.3.8: Not released. 1.3.7: Not released. 1.3.6: Tagged and rolled on Mar. 22, 1999. Released and announced on 24th. 1.3.5: Not released. 1.3.4: Tagged and rolled on Jan. 9, 1999. Released on 11th, announced on 12th. 1.3.3: Tagged and rolled on Oct. 7, 1998. Released on 9th, announced on 10th. 1.3.2: Tagged and rolled on Sep. 21, 1998. Announced and released on 23rd. 1.3.1: Tagged and rolled on July 19, 1998. Announced and released. 1.3.0: Tagged and rolled on June 1, 1998. Announced and released on the 6th. 2.0 : Available for general use, see httpd-2.0 repository RELEASE SHOWSTOPPERS: * Backport LimitInteralRecursion from 2.1 to 1.3. (1.3 patch is here: http://cvs.apache.org/~nd/recursion13.patch) PR 19753. jim: core_server_conf is not exported, per se, but does this require nonetheless a MMN (minor) bump? +1: jerenkrantz RELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP: * Current vote on 3 PRs for inclusion: Bugz #17877 (passing chunked encoding thru proxy) +1: jim, chuck, minfrin Bugz #9181 (Unable to set headers on non-2XX responses) +1: Martin, Jim Gnats #10246 (Add ProxyConnAllow directive) +0: Martin (or rather -.5, see dev@ Message [EMAIL PROTECTED]) * htpasswd.c and htdigest.c use tmpnam()... consider using mkstemp() when available. Message-ID: [EMAIL PROTECTED] Status: * Dean's unescaping hell (unescaping the various URI components at the right time and place, esp. unescaping the host name). Message-ID: [EMAIL PROTECTED] Status: * Martin observed a core dump because a ipaddr_chain struct contains a NULL-server pointer when being dereferenced by invoking httpd -S. Message-ID: [EMAIL PROTECTED] Status: Workaround enabled. Clean solution can come after 1.3.19 * long pathnames with many components and no AllowOverride None Workaround is to define Directory / with AllowOverride None, which is something all sites should do in any case. Status: Marc was looking at it. (Will asks 'wasn't this patched?') * Ronald Tschalär's patch to mod_proxy to allow other modules to set headers too (needed by mod_auth_digest) Message-ID: [EMAIL PROTECTED] Status: Available Patches (Most likely, will be ported to 2.0 as appropriate): * A rewrite of ap_unparse_uri_components() by Jeffrey W. Baker [EMAIL PROTECTED] to more fully close some segfault potential. Message-ID: [EMAIL PROTECTED] Status: Jim +1 (for 1.3.19), Martin +0 * Andrew Ford's patch (1999/12/05) to add absolute times to mod_expires Message-ID: [EMAIL PROTECTED] Status: Martin +1, Jim +1, Ken +1 (on concept) * Raymond S Brand's path to mod_autoindex to fix the header/readme include processing so the envariables are correct for the included documents. (Actually, there are two variants in the patch message, for two different ways of doing it.) Message-ID: [EMAIL PROTECTED] Status: Martin +1(concept) * Jayaram's patch (10/27/99) for bugfix to mod_autoindex
[STATUS] (httpd-2.0) Wed Jul 2 23:45:19 EDT 2003
APACHE 2.0 STATUS: -*-text-*- Last modified at [$Date: 2003/07/01 01:25:04 $] Release: 2.0.47 : in development 2.0.46 : released May 28, 2003 as GA. 2.0.45 : released April 1, 2003 as GA. 2.0.44 : released January 20, 2003 as GA. 2.0.43 : released October 3, 2002 as GA. 2.0.42 : released September 24, 2002 as GA. 2.0.41 : rolled September 16, 2002. not released. 2.0.40 : released August 9, 2002 as GA. 2.0.39 : released June 17, 2002 as GA. 2.0.38 : rolled June 16, 2002. not released. 2.0.37 : rolled June 11, 2002. not released. 2.0.36 : released May 6, 2002 as GA. 2.0.35 : released April 5, 2002 as GA. 2.0.34 : tagged March 26, 2002. 2.0.33 : tagged March 6, 2002. not released. 2.0.32 : released Feburary 16, 2002 as beta. 2.0.31 : rolled Feburary 1, 2002. not released. 2.0.30 : tagged January 8, 2002. not rolled. 2.0.29 : tagged November 27, 2001. not rolled. 2.0.28 : released November 13, 2001 as beta. 2.0.27 : rolled November 6, 2001 2.0.26 : tagged October 16, 2001. not rolled. 2.0.25 : rolled August 29, 2001 2.0.24 : rolled August 18, 2001 2.0.23 : rolled August 9, 2001 2.0.22 : rolled July 29, 2001 2.0.21 : rolled July 20, 2001 2.0.20 : rolled July 8, 2001 2.0.19 : rolled June 27, 2001 2.0.18 : rolled May 18, 2001 2.0.17 : rolled April 17, 2001 2.0.16 : rolled April 4, 2001 2.0.15 : rolled March 21, 2001 2.0.14 : rolled March 7, 2001 2.0a9 : released December 12, 2000 2.0a8 : released November 20, 2000 2.0a7 : released October 8, 2000 2.0a6 : released August 18, 2000 2.0a5 : released August 4, 2000 2.0a4 : released June 7, 2000 2.0a3 : released April 28, 2000 2.0a2 : released March 31, 2000 2.0a1 : released March 10, 2000 Please consult the following STATUS files for information on related projects: * srclib/apr/STATUS * srclib/apr-util/STATUS * docs/STATUS Contributors looking for a mission: * just do an egrep on TODO, XXX and see what's there RELEASE SHOWSTOPPERS: PATCHES TO PORT FROM 2.1 [ please place file names and revisions from HEAD here, so it is easy to identify exactly what the proposed changes are! ] * ap_get_mime_headers(): eliminate the temporary table used to combine duplicate headers (performance enhancement) server/protocol.c: r1.132 http://cvs.apache.org/viewcvs.cgi/httpd-2.0/server/protocol.c.diff?r1=1.131r2=1.132diff_format=h +1: brianp, jerenkrantz * Replace some of the mutex locking in the worker MPM with atomic operations for higher concurrency. server/mpm/worker/fdqueue.c 1.24, 1.25 +1: brianp -0: trawick These gcc warnings seem to point out uncleanness that should be resolved first. Perhaps volatile-ity is inconsistent? (gcc 3.2 on UL 1.0) fdqueue.c: In function `queue_info_cleanup': fdqueue.c:89: warning: passing arg 1 of `apr_atomic_casptr' from incompatible pointer type fdqueue.c: In function `ap_queue_info_set_idle': fdqueue.c:142: warning: passing arg 1 of `apr_atomic_casptr' from incompatible pointer type fdqueue.c: In function `ap_queue_info_wait_for_idler': fdqueue.c:232: warning: passing arg 1 of `apr_atomic_casptr' from incompatible pointer type * Rewrite how proxy sends its request to allow input bodies to morph the request bodies. Previously, if an input filter changed the request body, the original C-L would be sent which would be incorrect. Due to HTTP compliance, we must either send the body T-E: chunked or include a C-L for the request body. Connection: Close is not an option. [jerenkrantz2002/12/08 21:37:27] +1: stoddard, striker, jim -1: brianp (we need a more robust solution than what's in 2.1 right now), jerenkrantz (should be fixed, but I don't have time to do this) * Extend the SetEnvIf directive to capture subexpressions of the matched value. This is related to the backport proposal below ... ;-) modules/metadata/mod_setenvif.c r1.42 +1: nd * Allow mod_dav to do weak entity comparison functions. modules/dav/main/util.c: r1.45 [ This one is under review. Don't merge. ] +1: * mod_negotiation: parse quality values independent from the current locale and level values as integers. PR 17564. (essentially: get a rid of atof()) (2.0 + 1.3) modules/mappers/mod_negotiation.c: r1.114 +1: nd We need to decide what happens with unparsable qvalues. RFC 2616 states that q defaults to 1. (see 14.1 - 14.4). So should wrong qvalues be returned as 1.0 or 0.0 (as atof()
[STATUS] (httpd-2.1) Wed Jul 2 23:45:28 EDT 2003
APACHE 2.1 STATUS: -*-text-*- Last modified at [$Date: 2003/05/29 15:07:11 $] Release [NOTE that only Alpha/Beta releases occur in 2.1 development]: 2.1.0 : in development Please consult the following STATUS files for information on related projects: * srclib/apr/STATUS * srclib/apr-util/STATUS * docs/STATUS Contributors looking for a mission: * just do an egrep on TODO or XXX and see what's there CURRENT RELEASE NOTES: RELEASE SHOWSTOPPERS: CURRENT VOTES: * Promote mod_cache from experimental to non-experimental status (keep issues noted below in EXPERIMENTAL MODULES as items to be addressed as a supported module). +1: jim, bnicholes -0: jerenkrantz -1: stoddard There are a couple of problems that need to be resolved before this module is moved out of experimental. 1) We need to at least review and comment on the RFC violations 2) Resolve issue of how to cache page fragements (or perhaps -if- we want to cache page fragements). Today, mod_cache/mod_mem_cache will cache #include 'virtual' requests (but not #include 'file' requests). This was accomplished by making CACHE_IN a CONTENT_SET-1 filter to force it to run before the SUBREQ_CORE filter. But now responses cannot be cached that include the effects of having been run through CONTENT_SET filters (mod_deflate, mod_expires, etc). We could rerun all the CONTENT_SET filters on the cached response, but this will not work in all cases. For example, mod_expires relies on installing the EXPIRATION filter during fixups. Contents served out of mod_cache (out of the quick_handler) bypass -all- the request line server hooks (Ryan really hated this. It is great for performance, but bad because of the complications listed above). jerenkrantz: There are a slew of RFC compliance bugs filed in Bugzilla for mod_cache (see 'RFC 2616 violations' below). I think fixing them is a pre-requisite before it isn't experimental. * httpd-std.conf and friends a) httpd-std.conf should be tailored by install (from src or binbuild) even if user has existing httpd.conf +1: trawick, slive, gregames, ianh, Ken, wrowe, jwoolley, jim, nd wrowe - prefer httpd.default.conf to avoid ambiguity with cvs b) tailored httpd-std.conf should be copied by install to sysconfdir/examples -0: striker c) tailored httpd-std.conf should be installed to sysconfdir/examples or manualdir/exampleconf/ +1: slive, trawick, Ken, nd (prefer the latter) d) Installing a set of default config files when upgrading a server doesn't make ANY sense at all. +1: ianh - medium/big sites don't use 'standard config' anyway, as it usually needs major customizations -1: Ken, wrowe, jwoolley, jim, nd wrowe - diff is wonderful when comparing old/new default configs, even for customized sites that ianh mentions jim - ... assuming that the default configs have been updated with the required inline docs to explain the changes * If the parent process dies, should the remaining child processes gracefully self-terminate. Or maybe we should make it a runtime option, or have a concept of 2 parent processes (one being a hot spare). See: Message-ID: [EMAIL PROTECTED] Self-destruct: Ken, Martin, Lars Not self-destruct: BrianP, Ian, Cliff, BillS Make it runtime configurable: Aaron, jim, Justin, wrowe, rederpj, nd /* The below was a concept on *how* to handle the problem */ Have 2 parents: +1: jim -1: Justin, wrowe, rederpj, nd +0: Lars, Martin (while standing by, could it do something useful?) * Make the worker MPM the default MPM for threaded Unix boxes. +1: Justin, Ian, Cliff, BillS, striker, wrowe, nd +0: BrianP, Aaron (mutex contention is looking better with the latest code, let's continue tuning and testing), rederpj, jim -0: Lars RELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP: * Filter stacks and subrequests, redirects and fast redirects. There's at least one PR that suffers from the current unclean behaviour (which lets the server send garbage): PR 17629 nd says: Every subrequest should get its own filter stack with the subreq_core filter as bottom-most. That filter does two things: - swallow EOS buckets - redirect the data stream to the upper request's (rr-main) filter chain directly after the subrequest's starting point.