a patch for coss

From: Duane Wessels <wessels@dont-contact.us>
Date: Thu, 22 May 2003 13:04:33 -0600 (MDT)

I spent some time re-familiarizing myself with COSS and running
some polygraph tests. Since COSS uses 'e->swap_filen' as the offset
to the storage file, and because sfileno is signed, we are limited
to about 2^24 bytes, or 16M.

In a polygraph test with cache_dir larger than this, Squid asserts with
an error because e->swap_filen becomes negative.

If, instead, swap_filen becomes a the index to, for example, a 512
byte block, we can get up to about 8GB. Larger block size obviously
leads to larger total file size. The downside is, of course, that
we'll waste some space at the end of each object.

I have this coded up and it seems to be holding up under polygraph,
although the hit ratio degrades over time and I see some "failed
to unpack metadata" messages.

I would like to commit this, with the COSS author's and user's approval...

Duane W.
Received on Thu May 22 2003 - 13:04:37 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:19:56 MST