Re: [squid-users] Could I limit max cache time ?

From: Henrik Nordstrom <henrik_at_henriknordstrom.net>
Date: Mon, 26 May 2008 14:36:14 +0200

On mån, 2008-05-26 at 14:08 +0300, Itzcak Pechtalt wrote:
> Thanks Henrik
>
> But the problem is that Squid crashs with following error:
> assertion failed: filemap.c:78: "fm->max_n_files <= FILEMAP_MAX_SIZE"

Ouch

> It seems that filemap which is used by ufs and aufs store files
> systems to enumerate object files, limits objects number in cache to
> about 30 M. It's defined
> in following code in defines.h
> #define FILEMAP_MAX_SIZE (1<<24)
> In my case, cache_dir space is 207 GB, and number of objects in cache
> is about 20M.

So you should probably split your cache over two directories.

Stop Squid

cd /path/to/cache
mkdir 1
mkdir 2
mv ??* 1

then change squid.conf to have /path/to/cache/1 and /path/to/cache/2
both listed with a cache_dir directive each.

To migrate smoothly configure 1 to it's current size, 2 to the remaining
size. Then over the next days gradually adjust them until there is
balance..

> In addition there is 100% CPU for some time before the crash. In my
> opinion it comes when number of file maps are almost full, and
> function file_map_allocate goes over all bitmap again and again to
> find last free places.

Could be the case. Very large bitmaps is not efficient.

Regards
Henrik

Received on Mon May 26 2008 - 12:36:23 MDT

This archive was generated by hypermail 2.2.0 : Tue Aug 05 2008 - 01:05:14 MDT