pkgsrc-Changes-HG archive

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

[pkgsrc/trunk]: pkgsrc/devel/memcached Update devel/memcached to 1.5.3.



details:   https://anonhg.NetBSD.org/pkgsrc/rev/563a25ce6798
branches:  trunk
changeset: 371523:563a25ce6798
user:      fhajny <fhajny%pkgsrc.org@localhost>
date:      Tue Nov 14 14:13:52 2017 +0000

description:
Update devel/memcached to 1.5.3.

1.5.3

Fixes
- Add warning about time on very low TTL's in doc/protocol.txt
- pledge privdropping support for OpenBSD
- make for loop more clear in logger watcher
- fix theoretical leak in process_bin_stat
- fix use of unitialized array in lru_maintainer
- -o no_hashexpand to disable hash table expansion
- fix chunked items set in binprot, read from ascii

New Features
- adds get and touch command for ascii protocol


1.5.2

Fixes
- fix more binary protocol documentation errors.
- fix segfault during 31b -> 32b hash table expand
- don't create hashtables larger than 32bit
- some non-user-facing code changes for supporting future features.


1.5.1

Fixes
- add max_connections stat to 'stats' output
- Drop sockets from obviously malicious command strings (HTTP/)
- stats cachedump: now more likely to show data
- memcached-tool: fix slab Full? column
- fix null pointer ref in logger for bin update cmd
- default to unix sockets for tests, make them much less flaky
- PARALLEL=9 make test -> runs prove in parallel
- fix flaky stats.t test

New Features
- --enable-seccomp compiles in options for strict privilege reduction
  in linux. see output of -h for more information.


1.5.0

Fixes
- fix for musl libc: avoid huge stack allocation

New Features
- LRU crawler to background-reclaim memory. Mixed-TTL's and LRU
  reordering leaves many holes, making it difficult to properly size
  an instance.
- Segmented LRU. HOT/WARM/COLD and background processing should try
  harder to keep semi-active items in memory for longer.
- Automated slab rebalancing. Avoiding slab stagnation as objects
  change size over time.
- Faster hash table lookups with murmur3 algorithm (though it's been
  so long this is now outdated again;)
- Reduce memory requirements per-item by a few bytes here and there
- Immediately close connections when hitting the connection limit,
  instead of hanging until a spot opens up.
- Items larger than 512k (by default) are assembled by stacking
  multiple chunks together. Now raising the item size above 1m doesn't
  drop memory efficiency by spreading out slab classes.


1.4.39

Fixes
- fix for CVE-2017-9951
- save four bytes per item if client flags are 0

New Features
- If client flags are "0", no extra storage is used.


1.4.38

Fixes
- hot_max_age is now hot_max_factor - HOT is now limited to 20% of
  COLD's age or 20% of total space, whichever comes first.
- sleep longer between slab move runs (1ms instead of 50us)
- automove script: improve algo, add basic test
- slab_rebal: delete busy items if stuck
- fix LRU maintainer thread slowdown in edge case
- fix rare long background thread pause in hash expansion


1.4.37

Fixes
- LRU crawler: avoid running infinitely.
- fix very old memory leak in ASCII multigets. (when using multiget
  gets and keys after the first one are >255 characters)
- remove old slab mover example script.
- fix crash in page mover while using large items
- automover algo python script
- avoid segfault if idle_timeout value is missing.
- fix rare crash in LRU crawler
- sleep more aggressively in some threads
- don't overflow item refcount on get
- fix solaris compilation error
- usability fix for cache_memlimit command
- fix verbose print for idle-kicker
- disable refhang.t test due to flakiness
- fix ordering issue in conn dispatch (prevents potential hangups)

New Features
- LRU crawler scheduling improvements


1.4.36

- Fix refcount leak in LRU bump buf


1.4.35

Fixes
- init.d script status check routine
- Print with more-restricted format string to fix compiler warning
  with gcc 7's -Wformat-truncation.
- Display HOT/WARM tail age in stats items
- Active items in HOT' flow to WARM (algorithm fix)
- Moves to WARM requires two hits overall (algorithm fix)
- LRU maintainer performance: per-class sleep scheduling
- Allow limiting the internal LRU crawler run length
- Stop using atomics for item refcount management (performance)
- Make the conn suffix list the same as item list (performance)
- Do LRU-bumps while already holding item lock (performance)
- Reduce add_iov() work for TCP connections (performance)

New Features
- "lru" command for setting LRU parameters at runtime
- Allow switching LRU algo's at runtime

diffstat:

 devel/memcached/Makefile                  |   4 ++--
 devel/memcached/distinfo                  |  14 +++++++-------
 devel/memcached/patches/patch-Makefile.in |  17 ++++-------------
 devel/memcached/patches/patch-items.c     |  12 ++++++------
 4 files changed, 19 insertions(+), 28 deletions(-)

diffs (97 lines):

diff -r e61b3705a9a3 -r 563a25ce6798 devel/memcached/Makefile
--- a/devel/memcached/Makefile  Tue Nov 14 13:03:35 2017 +0000
+++ b/devel/memcached/Makefile  Tue Nov 14 14:13:52 2017 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.53 2017/02/16 11:10:53 adam Exp $
+# $NetBSD: Makefile,v 1.54 2017/11/14 14:13:52 fhajny Exp $
 
-DISTNAME=      memcached-1.4.34
+DISTNAME=      memcached-1.5.3
 CATEGORIES=    devel
 MASTER_SITES=  http://www.memcached.org/files/
 
diff -r e61b3705a9a3 -r 563a25ce6798 devel/memcached/distinfo
--- a/devel/memcached/distinfo  Tue Nov 14 13:03:35 2017 +0000
+++ b/devel/memcached/distinfo  Tue Nov 14 14:13:52 2017 +0000
@@ -1,11 +1,11 @@
-$NetBSD: distinfo,v 1.27 2017/02/16 11:10:53 adam Exp $
+$NetBSD: distinfo,v 1.28 2017/11/14 14:13:52 fhajny Exp $
 
-SHA1 (memcached-1.4.34.tar.gz) = 7c7214f5183c6e20c22b243e21ed1ffddb91497e
-RMD160 (memcached-1.4.34.tar.gz) = ce93048d80bdd6b8b5aa7dcc67dc24186f8e501c
-SHA512 (memcached-1.4.34.tar.gz) = e91aa784674501313cd7464bad22f1898b998c836492a52efe68d097a01249a4fffd3b23b79af86957dd3dc11794f2bff476a4891b9cfa172ff9c29dfb50789f
-Size (memcached-1.4.34.tar.gz) = 391131 bytes
-SHA1 (patch-Makefile.in) = 4c21920e41bdad77dc8ff39c62001aea0d73c78a
+SHA1 (memcached-1.5.3.tar.gz) = 9331ef99f1b7fedfe476062faed8c0ffb5528d8f
+RMD160 (memcached-1.5.3.tar.gz) = 037c34da08ffd282709f0dfbd3c6c2f963cba59e
+SHA512 (memcached-1.5.3.tar.gz) = b28282c579891e7c5508eb5ab4680b933aa76e8e4a8fe575c996fd4e750f2b4b35ee734d01ae0f280cf4cf6e0530f7f6a95c2e07be3660b07c5ade6ad3c835e2
+Size (memcached-1.5.3.tar.gz) = 409131 bytes
+SHA1 (patch-Makefile.in) = d1c67f0e4333c16e1541ea5f2e0bc47b9dc2002f
 SHA1 (patch-configure) = d44e07c0c38029df4f10bb5411049595b5a8ffbb
-SHA1 (patch-items.c) = ddc0fe0dd390de5e20dbcbc73085000c629259c0
+SHA1 (patch-items.c) = ee082c7ebe234b3e8cc170e01bca56ed4275e6de
 SHA1 (patch-logger.h) = 130c573e07b7d9b6caff1c98e40b36a96cb3c064
 SHA1 (patch-memcached.c) = 3c39c873332704c8d269de4a3c7049281bf101c6
diff -r e61b3705a9a3 -r 563a25ce6798 devel/memcached/patches/patch-Makefile.in
--- a/devel/memcached/patches/patch-Makefile.in Tue Nov 14 13:03:35 2017 +0000
+++ b/devel/memcached/patches/patch-Makefile.in Tue Nov 14 14:13:52 2017 +0000
@@ -1,20 +1,11 @@
-$NetBSD: patch-Makefile.in,v 1.4 2015/05/21 14:07:10 rodent Exp $
+$NetBSD: patch-Makefile.in,v 1.5 2017/11/14 14:13:52 fhajny Exp $
 
 Don't build programs that won't be installed
 List test prerequisite.
 
---- Makefile.in.orig   2015-01-01 07:53:30.000000000 +0000
+--- Makefile.in.orig   2017-11-04 21:53:37.000000000 +0000
 +++ Makefile.in
-@@ -112,7 +112,7 @@ CONFIG_HEADER = config.h
- CONFIG_CLEAN_FILES =
- CONFIG_CLEAN_VPATH_FILES =
- am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(pkgincludedir)"
--PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS)
-+PROGRAMS = $(bin_PROGRAMS)
- am__memcached_SOURCES_DIST = memcached.c memcached.h hash.c hash.h \
-       jenkins_hash.c jenkins_hash.h murmur3_hash.c murmur3_hash.h \
-       slabs.c slabs.h items.c items.h assoc.c assoc.h thread.c \
-@@ -1478,7 +1478,7 @@ memcached_dtrace.o: $(memcached_OBJECTS)
+@@ -1729,7 +1729,7 @@ memcached_dtrace.o: $(memcached_OBJECTS)
  memcached_debug_dtrace.o: $(memcached_debug_OBJECTS)
        $(DTRACE) $(DTRACEFLAGS) -G -o memcached_debug_dtrace.o -s ${srcdir}/memcached_dtrace.d $(memcached_debug_OBJECTS)
  
@@ -22,4 +13,4 @@
 +test: memcached-debug sizes testapp timedrun
        $(srcdir)/sizes
        $(srcdir)/testapp
-       prove $(srcdir)/t
+       @if test -n "${PARALLEL}"; then \
diff -r e61b3705a9a3 -r 563a25ce6798 devel/memcached/patches/patch-items.c
--- a/devel/memcached/patches/patch-items.c     Tue Nov 14 13:03:35 2017 +0000
+++ b/devel/memcached/patches/patch-items.c     Tue Nov 14 14:13:52 2017 +0000
@@ -1,10 +1,10 @@
-$NetBSD: patch-items.c,v 1.1 2017/02/16 11:10:53 adam Exp $
+$NetBSD: patch-items.c,v 1.2 2017/11/14 14:13:52 fhajny Exp $
 
 time_t changes
 
---- items.c.orig       2017-01-08 01:10:24.000000000 +0000
+--- items.c.orig       2017-11-04 21:49:54.000000000 +0000
 +++ items.c
-@@ -489,10 +489,10 @@ char *item_cachedump(const unsigned int 
+@@ -588,10 +588,10 @@ char *item_cachedump(const unsigned int 
          /* Copy the key since it may not be null-terminated in the struct */
          strncpy(key_temp, ITEM_key(it), it->nkey);
          key_temp[it->nkey] = 0x00; /* terminate */
@@ -17,9 +17,9 @@
          if (bufcurr + len + 6 > memlimit)  /* 6 is END\r\n\0 */
              break;
          memcpy(buffer + bufcurr, temp, len);
-@@ -615,13 +615,13 @@ void item_stats(ADD_STAT add_stats, void
-                 APPEND_NUM_FMT_STAT(fmt, n, "number_noexp", "%u", lru_size_map[3]);
-             }
+@@ -768,13 +768,13 @@ void item_stats(ADD_STAT add_stats, void
+             APPEND_NUM_FMT_STAT(fmt, n, "age_hot", "%u", age_hot);
+             APPEND_NUM_FMT_STAT(fmt, n, "age_warm", "%u", age_warm);
          }
 -        APPEND_NUM_FMT_STAT(fmt, n, "age", "%u", age);
 +        APPEND_NUM_FMT_STAT(fmt, n, "age", "%jd", age);



Home | Main Index | Thread Index | Old Index