Yes. It's had slab calcification for ten years. It's also had a fix for this for over a year: http://code.google.com/p/memcached/wiki/ReleaseNotes1411 ... this was further improved in later versions as well.
That twitter blog post is confusing and I am disappointed in all of you for not pointing out that this code exists in the main tree sooner. On Sun, 17 Mar 2013, Chang Chen wrote: > Hi Colin > Thanks for your reply, I understood how it happened. I am just interested in > the history of slab allocation, > 1. why need it? > 2. who design and implement it? > The first check-in of slab allocation policy was about 10 years ago, it's the > fifth check-in of all memcached check-ins. In the comments, > > * update from avva with new allocation policy: bunches of power-of-two > slab classes. no external fragmentation... always allocate slabs of > 1MB. > > > It did solve the external fragmentation, but it introduced internal > fragmentation (that's why -f is introduced). what I want to know is which > check-in introduce slab calcification? I suspect it is the intrinsic issue > of slab allocation. > > Thanks > Chang > > > On Sunday, March 17, 2013 8:18:27 PM UTC+8, Colin Pitrat wrote: > Hello, > In memcached, pages are allocated progressively when needed and allocated to > the slab that need space for new items. Once a page is allocated to a slab, > it cannot be deallocated nor moved to another slab, even if it gets empty. > > Slab calcification is the fact that with time, all pages get allocated to > some slabs and if the repartition of items size changes, some slabs will miss > space whereas others are full of empty pages. > > Regards, > Colin > > > 2013/3/14 Chang Chen <[email protected]> > Hi All > I am interested in how slab calcification issue is introduced. I checked > revision history that slab allocation is added almost 10 years ago! but > twitter said > > The v1.4.4 implementation of Memcached, which Twemcache is based on, > suffers from a problem we call slab calcification. > > > Is slab calcification caused by certain new feature, or an intrinsic issue > from its born? > > Thanks > Chang > > -- > > --- > You received this message because you are subscribed to the Google Groups > "memcached" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/groups/opt_out. > > > > > -- > > --- > You received this message because you are subscribed to the Google Groups > "memcached" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/groups/opt_out. > > > > -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
