garbage collector

Ivan Szanto ivan.szanto at
Sat May 24 20:05:14 UTC 2008

Hi Dormando,

> Unfortunately you just patched the wrong problem. Memcached does not
> need an active garbage collector.
Of course it does. With the garbage collector our problems were gone.

> Are you sure your machine was not swapping? Did you set the memory limit
> too high? How did you verify it was "slow" ? What symptoms were you seeing?
Sure it was not swapping. I will dig up the munin graphs for you to have 
a look.
The symptom was that it was unable to put in any more items, which made 
our website unavailable.
> "evictions" counters only go up when a *valid* item is removed from
> cache ahead of time. Your cache was never quite full enough to
> preemptively expire valid items.
Thanks for the explanation. Where can I see in the stats that it throws 
out expired items?
> Memcached is designed to use up to the limit of memory you specify, then
> it will re-use that memory in a very efficient way,
In my previous mail, I wrote about a part of the code where it reuses 
After I browsed through the whole code, I did not find any other part.  
Is there another part?
Please let me know.
>  so it will never
> release memory back to the operating system. If you're hitting swap, set
> the maxbytes value to be lower with the "-m" option.
> -Dormando
The problem was not that I expected it to release memory to the 
operating system.
The problem was that it did not accept any more new items, because it 
was full of expired items.


More information about the memcached mailing list