httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William A. Rowe, Jr." <wr...@rowe-clan.net>
Subject Re: svn commit: r580220 - /httpd/httpd/branches/2.0.x/modules/experimental/mod_case_filter.c
Date Fri, 28 Sep 2007 05:15:30 GMT
Sorry to jump over STATUS on this experimental change; I was seeing
growing loop as I attempted to upcase a proxied back end response of
LICENSE.txt, which repeated the opening part of the document over and
over as it grew to the full response (from 39kb up to some 105kb).

Does anyone see an issue with this backport (and does anyone want to
put in the effort to do it well ;-)

Bill

wrowe@apache.org wrote:
> Author: wrowe
> Date: Thu Sep 27 22:01:56 2007
> New Revision: 580220
> 
> URL: http://svn.apache.org/viewvc?rev=580220&view=rev
> Log:
> Change to Experimental module to avoid an ever-expanding brigade,
> absorb the buckets we've consumed.  Better ways to do this lurk here.
> 
> Backport: r580206
> 
> Modified:
>     httpd/httpd/branches/2.0.x/modules/experimental/mod_case_filter.c
> 
> Modified: httpd/httpd/branches/2.0.x/modules/experimental/mod_case_filter.c
> URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.0.x/modules/experimental/mod_case_filter.c?rev=580220&r1=580219&r2=580220&view=diff
> ==============================================================================
> --- httpd/httpd/branches/2.0.x/modules/experimental/mod_case_filter.c (original)
> +++ httpd/httpd/branches/2.0.x/modules/experimental/mod_case_filter.c Thu Sep 27 22:01:56
2007
> @@ -89,7 +89,16 @@
>  	APR_BRIGADE_INSERT_TAIL(pbbOut,pbktOut);
>  	}
>  
> -    /* XXX: is there any advantage to passing a brigade for each bucket? */
> +    /* Q: is there any advantage to passing a brigade for each bucket? 
> +     * A: obviously, it can cut down server resource consumption, if this
> +     * experimental module was fed a file of 4MB, it would be using 8MB for
> +     * the 'read' buckets and the 'write' buckets.
> +     *
> +     * Note it is more efficient to consume (destroy) each bucket as it's
> +     * processed above than to do a single cleanup down here.  In any case,
> +     * don't let our caller pass the same buckets to us, twice;
> +     */
> +    ap_briade_cleanup(pbbIn);
>      return ap_pass_brigade(f->next,pbbOut);
>      }
>  
> 
> 
> 
> 


Mime
View raw message