first time user with out of memory question

Paul T pault12345 at yahoo.com
Mon Jun 12 17:01:03 UTC 2006


--- Steven Grimm <sgrimm at facebook.com> wrote:

> Paul T wrote:
> > Like memcached, sharedance is implemented on top
> of libevent. The code 
> > is simpler, though, because it has no 'slabs', no
> mark and sweep 
> > garbage collection e t.c.
> 
> Not to comment one way or another about sharedance,
> but memcached 
> doesn't have mark and sweep garbage collection, as
> far as I'm aware. 

 You're right. What is implemented in memcached should
be called "Lazy Garbage Collection". 

http://lists.danga.com/pipermail/memcached/2006-April/002149.html

 I'm not sure if it is the simplest possible
implementation, but maybe it is.

> And 
> the slab allocator is about as simple (and fast) a
> memory allocation 
> scheme as it's possible to implement -- certainly
> much simpler than any 
> decent-quality malloc implementation you're likely
> to run into.

 And yet there are already two different bugfixes
proposed in that area. 

 I don't follow your logic. 

 Either :
 
 "it is so simple - it can not have bugs" or 
 "I just fixed the last bug in that part of code" 

 - it can not be *both* at the same time, right? 

> In general, if you're getting "out of memory" errors
> when you try to 
> store an item, you need to try the Facebook branch.
> That problem is 
> fixed there. (You could also preallocate one item of
> each size when
 
> memcached starts up; that's what we did before I
> fixed the problem.)

 Unfortunately, memcached is an asynchronous
application (based on libevent). For that kind of
applications (timing/pattern/load/OS sesnitive) -- "it
runs in my environment" does not mean that it would
work for a different setup.

Rgds.Paul.

> -Steve
> 


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


More information about the memcached mailing list