httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Davi Arnaut <d...@haxent.com.br>
Subject Re: [PATCH] mod_disk_cache working LFS (filecopy)
Date Sun, 01 Oct 2006 02:32:07 GMT

On 26/09/2006, at 05:52, Niklas Edmundsson wrote:

>
> This patch depends on "mod_disk_cache LFS-aware config" submitted  
> earlier and is for trunk.
>
> It makes caching of large files possible on 32bit machines by:
>
> * Realising that a file is a file and can be copied as such, without
>   reading the whole thing into memory first.

Hi,

Wouldn't you avoid a lot of complexity in this patch
if you just deleted from the brigade the implicitly
created heap buckets while reading file buckets ?

Something like:

store_body:
	.. if (is_file_bucket(bucket))
		copy_file_bucket(bucket, bb);

copy_file_bucket:

while (bucket != sentinel(bb) && is_file_bucket(bucket) {
	rv = apr_bucket_read(..)
	if (is_heap_bucket(bucket)) {
		apr_bucket *tmp = bucket;
		bucket = bucket_next(tmp);
		bucket_delete(tmp);
	}
	else
		bucket = bucket_next(bucket);
}

IMHO, this is a lot better than all that added complexity
for a corner case.

--
Davi Arnaut

Mime
View raw message