pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/devel/memcached

Module Name:    pkgsrc
Committed By:   asau
Date:           Thu Oct  4 10:46:49 UTC 2012

Modified Files:
        pkgsrc/devel/memcached: Makefile PLIST distinfo
Removed Files:
        pkgsrc/devel/memcached/patches: patch-memcached_dtrace.d

Log Message:
Update to memcached 1.4.15

Changes in memcached 1.4.15


This is a somewhat experimental release which pushes thread
performance even more than before. Since this is a more
experimental release than usual, and contains no other major
fixes or features, we urge some caution for important
deployments. We feel as though it is high quality software, but
please take caution and do slow rollouts or testing. Thanks!


  * Add some mild thread documentation
  * was missing from dist tarball
  *  Issue 286 : --disable-coverage drops "-pthread" option
  * Reduce odds of getting OOM errors in some odd cases

New Features

Thread scalability is much improved for reads, and somewhat
improved for writes. In a pure read-only situation on a dual
socket six core NUMA machine I've tested key fetch rates around
13.6 million keys per second.

More tuning is necessary and you'd get significant lag at that
rate, but that shows the theoretical limit of the locks.

Changes in memcached 1.4.14



  * fix compile issue with new GCC's
  * Added support for automake-1.12 in
  * Use Markdown for README.
  * Fixed issue with invalid binary protocol touch command
    expiration time (
  * Define touch command probe for DTrace support
  * Error and exit if we don't have hugetlb support (changes -L behavior)
  * update reassign/automove documentation
  * Remove USE_SYSTEM_MALLOC define
  * slab rebalancing from random class
  * split slab rebalance and automove threads
  * pre-split slab pages into slab freelists
  * Avoid race condition in test during pid creation by blind retrying

New Features

This release mainly features a number of small bugfixes, but
also a change to slab rebalance behavior.

Previously, if you moved a slab page from one slab to another,
you had to wait until that new page was fully used before moving
another one. That wait has been removed, and you can move pages
as fast as the system can ... move them.

A few new features as well:

slabs reassign

slabs reassign -1 15 will pick a page from any slab class and move it to class 

slabs automove

slabs automove 2 now enables an ultra aggressive page
reassignment algorithm. On every eviction, it will try to move a
slab page into that class. You should never run this in
production unless you have a very, very good idea of what's
going to happen. For most people who have spurious evictions
everywhere, you'll end up mass evicting random data and hurting
your hit rate. It can be useful to momentarily enable for
emergency situations, or if you have a data access pattern where
evictions should never happen.

This was work we were planning on doing already, but twitter's
rewrite has people presently interested in trying it out. You've
been warned.

To generate a diff of this commit:
cvs rdiff -u -r1.29 -r1.30 pkgsrc/devel/memcached/Makefile
cvs rdiff -u -r1.7 -r1.8 pkgsrc/devel/memcached/PLIST
cvs rdiff -u -r1.14 -r1.15 pkgsrc/devel/memcached/distinfo
cvs rdiff -u -r1.1 -r0 \

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Home | Main Index | Thread Index | Old Index