Received: by mail.netbsd.org (Postfix, from userid 605) id 7D3B685644; Tue, 14 Nov 2017 14:13:54 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id 06A5A8563D for ; Tue, 14 Nov 2017 14:13:54 +0000 (UTC) X-Virus-Scanned: amavisd-new at netbsd.org Received: from mail.netbsd.org ([127.0.0.1]) by localhost (mail.netbsd.org [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id K_ZvD8RQJzU4 for ; Tue, 14 Nov 2017 14:13:53 +0000 (UTC) Received: from cvs.NetBSD.org (ivanova.NetBSD.org [IPv6:2001:470:a085:999:28c:faff:fe03:5984]) by mail.netbsd.org (Postfix) with ESMTP id 151BC84CFB for ; Tue, 14 Nov 2017 14:13:53 +0000 (UTC) Received: by cvs.NetBSD.org (Postfix, from userid 500) id 07C4BFBDE; Tue, 14 Nov 2017 14:13:53 +0000 (UTC) Content-Transfer-Encoding: 7bit Content-Type: multipart/mixed; boundary="_----------=_151066883348820" MIME-Version: 1.0 Date: Tue, 14 Nov 2017 14:13:53 +0000 From: "Filip Hajny" Subject: CVS commit: pkgsrc/devel/memcached To: pkgsrc-changes@NetBSD.org Reply-To: fhajny@netbsd.org X-Mailer: log_accum Message-Id: <20171114141353.07C4BFBDE@cvs.NetBSD.org> Sender: pkgsrc-changes-owner@NetBSD.org List-Id: pkgsrc-changes.NetBSD.org Precedence: bulk List-Unsubscribe: This is a multi-part message in MIME format. --_----------=_151066883348820 Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" Module Name: pkgsrc Committed By: fhajny Date: Tue Nov 14 14:13:52 UTC 2017 Modified Files: pkgsrc/devel/memcached: Makefile distinfo pkgsrc/devel/memcached/patches: patch-Makefile.in patch-items.c Log Message: 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 To generate a diff of this commit: cvs rdiff -u -r1.53 -r1.54 pkgsrc/devel/memcached/Makefile cvs rdiff -u -r1.27 -r1.28 pkgsrc/devel/memcached/distinfo cvs rdiff -u -r1.4 -r1.5 pkgsrc/devel/memcached/patches/patch-Makefile.in cvs rdiff -u -r1.1 -r1.2 pkgsrc/devel/memcached/patches/patch-items.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. --_----------=_151066883348820 Content-Disposition: inline Content-Length: 5303 Content-Transfer-Encoding: binary Content-Type: text/x-diff; charset=us-ascii Modified files: Index: pkgsrc/devel/memcached/Makefile diff -u pkgsrc/devel/memcached/Makefile:1.53 pkgsrc/devel/memcached/Makefile:1.54 --- pkgsrc/devel/memcached/Makefile:1.53 Thu Feb 16 11:10:53 2017 +++ pkgsrc/devel/memcached/Makefile Tue Nov 14 14:13:52 2017 @@ -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/ Index: pkgsrc/devel/memcached/distinfo diff -u pkgsrc/devel/memcached/distinfo:1.27 pkgsrc/devel/memcached/distinfo:1.28 --- pkgsrc/devel/memcached/distinfo:1.27 Thu Feb 16 11:10:53 2017 +++ pkgsrc/devel/memcached/distinfo Tue Nov 14 14:13:52 2017 @@ -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 Index: pkgsrc/devel/memcached/patches/patch-Makefile.in diff -u pkgsrc/devel/memcached/patches/patch-Makefile.in:1.4 pkgsrc/devel/memcached/patches/patch-Makefile.in:1.5 --- pkgsrc/devel/memcached/patches/patch-Makefile.in:1.4 Thu May 21 14:07:10 2015 +++ pkgsrc/devel/memcached/patches/patch-Makefile.in Tue Nov 14 14:13:52 2017 @@ -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 @@ List test prerequisite. +test: memcached-debug sizes testapp timedrun $(srcdir)/sizes $(srcdir)/testapp - prove $(srcdir)/t + @if test -n "${PARALLEL}"; then \ Index: pkgsrc/devel/memcached/patches/patch-items.c diff -u pkgsrc/devel/memcached/patches/patch-items.c:1.1 pkgsrc/devel/memcached/patches/patch-items.c:1.2 --- pkgsrc/devel/memcached/patches/patch-items.c:1.1 Thu Feb 16 11:10:53 2017 +++ pkgsrc/devel/memcached/patches/patch-items.c Tue Nov 14 14:13:52 2017 @@ -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 @@ time_t changes 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); --_----------=_151066883348820--