httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bill Stoddard" <>
Subject Re: A last [extenstive testing required] patch to close 1.3 generation
Date Fri, 18 May 2001 11:31:58 GMT
I am -1 for this patch unless we can fix this problem w/o requiring stating
each and every element when we are walking the file path.


----- Original Message -----
From: "William A. Rowe, Jr." <>
To: <>
Sent: Friday, May 18, 2001 1:33 AM
Subject: A last [extenstive testing required] patch to close 1.3 generation

> I didn't bring this up before 1.3.20, because of it's scope.
> We have the essential problems on Win32:
>   1. filename case folding doesn't match clib folding [it's oem locale
>   2. we were folding case, but the ambiguity in the win32 filesystem leads
>      to stat down the filepath anyways.  This became redundant.
>   3. we actually stat down the filepath twice, once for true case and once
>      the 'canonical' lowercase.
> I'd like to implement the following straightforward patch:
>   1. roll back the case folding altogether, make
>      point at the same r->filename string, both in true case.  We walk the
>      filepath only once in our systemcase-canonicalization function.  Do
so in
>      conjunction with the file_info call, so we don't walk the
>      path backwards, but the real path, forwards.  Suppose that heavy cgi
>      scripted sites would benefit from tripping that flag, as well, since
>      wouldn't stat for all the missing /extra segments in the path.
>   2. patch the server to assure we are always comparing with case
>      semantics throughout using strcasecmp or the ignorecase flag to our
>      ap_fnmatch function.  But change the semantics slightly to use ap_fs_
>      case folding functions (mapping to the usual clib on all other
>      This broad patch would only apply to <File > and <Directory > blocks
>      filesystem names, and _never_ URI space names.
> That's it.  No optimized rewrite of the directory_walk in 1.3 (it's
written, to
> be committed to the 2.0 branch alone.)  Nothing else fancy.  Simple, true
> that's filesystem API normalized.
> Our existing 'overwork' has cost us in performance, but we keep walking on
> IIS reveals yet another hole in it's uri->filesystem mapping every month
or few.
> We can recover some of the performance, if we want to go this direction.
> I'd reiterate [already wearing my flame-retardant glasses] that I'm of the
> that the 1.3 chapter of apache is closing (quickly, I hope) but we will
have left
> a more stable product for folks to rely upon while APR and httpd-2.0 go
> their growing pains.
> If there are objections or hints, I'll take them before I attack.  ITMT,
back to
> the 2.0 tree again for me :-)
> Bill

View raw message