Sun May 19 07:56:38 2019 UTC ()
redis: updated to 5.0.5

Redis 5.0.5:

Upgrade urgency CRITICAL: This release fixes an important AOF fysnc bug
                          and other less critical issues.

Dear user,

Redis 5.0.5 fixes an important issue with AOF and adds multiple very useful
modules APIs. Moreover smaller bugs in other parts of Redis are fixed in
this release.

The AOF bug
The AOF bug happens when the fsync policy is set to "everysec", which is the
default: if the write load in the server drops immediately, the commands
executed in the latest second may not be fsync-ed to disk as it should.
This may lead to data loss in case the write load drops immediately and
successively a server crash happens.

Other things in this release
* Streams: a bug in the iterator could prevent certain items to be returned in
           range queries under specific conditions.
* Memleak in bitfieldCommand fixed.
* Modules API: Preserve client->id for blocked clients.
* Fix memory leak when rewriting config file in case of write errors.
* New modules API: RedisModule_GetKeyNameFromIO().
* Fix non critical bugs in diskless replication.
* New mdouels API: command filtering. See RedisModule_RegisterCommandFilter();
* Tests improved to be more deterministic.
* Fix a Redis Cluster bug, manual failover may abort because of the master
  sending PINGs to the replicas.


(adam)
diff -r1.43 -r1.44 pkgsrc/databases/redis/Makefile
diff -r1.43 -r1.44 pkgsrc/databases/redis/distinfo

cvs diff -r1.43 -r1.44 pkgsrc/databases/redis/Makefile (switch to unified diff)

--- pkgsrc/databases/redis/Makefile 2019/04/02 07:43:07 1.43
+++ pkgsrc/databases/redis/Makefile 2019/05/19 07:56:38 1.44
@@ -1,73 +1,73 @@ @@ -1,73 +1,73 @@
1# $NetBSD: Makefile,v 1.43 2019/04/02 07:43:07 adam Exp $ 1# $NetBSD: Makefile,v 1.44 2019/05/19 07:56:38 adam Exp $
2 2
3DISTNAME= redis-5.0.4 3DISTNAME= redis-5.0.5
4CATEGORIES= databases 4CATEGORIES= databases
5MASTER_SITES= http://download.redis.io/releases/ 5MASTER_SITES= http://download.redis.io/releases/
6 6
7MAINTAINER= fhajny@NetBSD.org 7MAINTAINER= fhajny@NetBSD.org
8HOMEPAGE= https://redis.io/ 8HOMEPAGE= https://redis.io/
9COMMENT= Persistent key-value database with built-in net interface 9COMMENT= Persistent key-value database with built-in net interface
10LICENSE= modified-bsd 10LICENSE= modified-bsd
11 11
12USE_LANGUAGES= c99 12USE_LANGUAGES= c99
13USE_TOOLS+= gmake 13USE_TOOLS+= gmake
14 14
15.include "../../mk/bsd.prefs.mk" 15.include "../../mk/bsd.prefs.mk"
16 16
17RCD_SCRIPTS+= redis 17RCD_SCRIPTS+= redis
18RCD_SCRIPT_SRC.redis= ${FILESDIR}/redis.sh 18RCD_SCRIPT_SRC.redis= ${FILESDIR}/redis.sh
19 19
20DOCDIR= share/doc/redis 20DOCDIR= share/doc/redis
21DOCFILES+= 00-RELEASENOTES BUGS COPYING README.md 21DOCFILES+= 00-RELEASENOTES BUGS COPYING README.md
22EGDIR= ${PREFIX}/share/examples/${PKGBASE} 22EGDIR= ${PREFIX}/share/examples/${PKGBASE}
23INSTALLATION_DIRS+= bin ${DOCDIR} ${EGDIR} ${EGDIR}/utils ${EGDIR}/tests 23INSTALLATION_DIRS+= bin ${DOCDIR} ${EGDIR} ${EGDIR}/utils ${EGDIR}/tests
24CONF_FILES= ${EGDIR}/redis.conf.example ${PKG_SYSCONFDIR}/redis.conf 24CONF_FILES= ${EGDIR}/redis.conf.example ${PKG_SYSCONFDIR}/redis.conf
25 25
26BUILD_DEFS+= VARBASE REDIS_USER REDIS_GROUP REDIS_DATADIR 26BUILD_DEFS+= VARBASE REDIS_USER REDIS_GROUP REDIS_DATADIR
27BUILD_DEFS+= REDIS_LOGDIR REDIS_PIDDIR 27BUILD_DEFS+= REDIS_LOGDIR REDIS_PIDDIR
28 28
29REDIS_USER?= redis 29REDIS_USER?= redis
30REDIS_GROUP?= redis 30REDIS_GROUP?= redis
31REDIS_DATADIR?= ${VARBASE}/db/redis 31REDIS_DATADIR?= ${VARBASE}/db/redis
32REDIS_LOGDIR?= ${VARBASE}/log/redis 32REDIS_LOGDIR?= ${VARBASE}/log/redis
33REDIS_PIDDIR?= ${VARBASE}/run 33REDIS_PIDDIR?= ${VARBASE}/run
34 34
35OWN_DIRS_PERMS+= ${REDIS_DATADIR} ${REDIS_USER} ${REDIS_GROUP} 0770 35OWN_DIRS_PERMS+= ${REDIS_DATADIR} ${REDIS_USER} ${REDIS_GROUP} 0770
36OWN_DIRS_PERMS+= ${REDIS_LOGDIR} ${REDIS_USER} ${REDIS_GROUP} 0770 36OWN_DIRS_PERMS+= ${REDIS_LOGDIR} ${REDIS_USER} ${REDIS_GROUP} 0770
37 37
38PKG_GROUPS+= ${REDIS_GROUP} 38PKG_GROUPS+= ${REDIS_GROUP}
39PKG_USERS+= ${REDIS_USER}:${REDIS_GROUP} 39PKG_USERS+= ${REDIS_USER}:${REDIS_GROUP}
40PKG_GECOS.${REDIS_USER}=Redis daemon user 40PKG_GECOS.${REDIS_USER}=Redis daemon user
41PKG_HOME.${REDIS_USER}= ${REDIS_DBDIR} 41PKG_HOME.${REDIS_USER}= ${REDIS_DBDIR}
42 42
43FILES_SUBST+= REDIS_USER=${REDIS_USER} 43FILES_SUBST+= REDIS_USER=${REDIS_USER}
44FILES_SUBST+= REDIS_GROUP=${REDIS_GROUP} 44FILES_SUBST+= REDIS_GROUP=${REDIS_GROUP}
45FILES_SUBST+= REDIS_DATADIR=${REDIS_DATADIR} 45FILES_SUBST+= REDIS_DATADIR=${REDIS_DATADIR}
46 46
47SUBST_CLASSES+= fix-paths 47SUBST_CLASSES+= fix-paths
48SUBST_STAGE.fix-paths= pre-configure 48SUBST_STAGE.fix-paths= pre-configure
49SUBST_MESSAGE.fix-paths=Fixing paths. 49SUBST_MESSAGE.fix-paths=Fixing paths.
50SUBST_FILES.fix-paths= redis.conf 50SUBST_FILES.fix-paths= redis.conf
51SUBST_VARS.fix-paths= REDIS_DATADIR REDIS_LOGDIR REDIS_PIDDIR 51SUBST_VARS.fix-paths= REDIS_DATADIR REDIS_LOGDIR REDIS_PIDDIR
52 52
53CHECK_PORTABILITY_SKIP+= deps/jemalloc/configure 53CHECK_PORTABILITY_SKIP+= deps/jemalloc/configure
54 54
55post-extract: 55post-extract:
56 ${CHMOD} -R g-w ${WRKSRC} 56 ${CHMOD} -R g-w ${WRKSRC}
57 57
58.if ${MACHINE_ARCH} == "i386" 58.if ${MACHINE_ARCH} == "i386"
59# Need 8 byte atomics. 59# Need 8 byte atomics.
60CFLAGS+= -march=i586 60CFLAGS+= -march=i586
61.endif 61.endif
62 62
63post-install: 63post-install:
64 ${INSTALL_DATA} ${WRKSRC}/redis.conf ${DESTDIR}${EGDIR}/redis.conf.example 64 ${INSTALL_DATA} ${WRKSRC}/redis.conf ${DESTDIR}${EGDIR}/redis.conf.example
65.for file in ${DOCFILES} 65.for file in ${DOCFILES}
66 ${INSTALL_DATA} ${WRKSRC}/${file} ${DESTDIR}${PREFIX}/${DOCDIR}/${file} 66 ${INSTALL_DATA} ${WRKSRC}/${file} ${DESTDIR}${PREFIX}/${DOCDIR}/${file}
67.endfor 67.endfor
68 68
69do-test: 69do-test:
70 cd ${WRKSRC} && ${SH} runtest 70 cd ${WRKSRC} && ${SH} runtest
71 71
72.include "../../mk/pthread.buildlink3.mk" 72.include "../../mk/pthread.buildlink3.mk"
73.include "../../mk/bsd.pkg.mk" 73.include "../../mk/bsd.pkg.mk"

cvs diff -r1.43 -r1.44 pkgsrc/databases/redis/distinfo (switch to unified diff)

--- pkgsrc/databases/redis/distinfo 2019/04/02 07:43:07 1.43
+++ pkgsrc/databases/redis/distinfo 2019/05/19 07:56:38 1.44
@@ -1,10 +1,10 @@ @@ -1,10 +1,10 @@
1$NetBSD: distinfo,v 1.43 2019/04/02 07:43:07 adam Exp $ 1$NetBSD: distinfo,v 1.44 2019/05/19 07:56:38 adam Exp $
2 2
3SHA1 (redis-5.0.4.tar.gz) = db4cad466db8fbde7c05131d72f526a2e860078a 3SHA1 (redis-5.0.5.tar.gz) = 71e38ae09ac70012b5bc326522b976bcb8e269d6
4RMD160 (redis-5.0.4.tar.gz) = 9b483e4b08553b075d037d2014714b7b77429339 4RMD160 (redis-5.0.5.tar.gz) = b90ad0fd5e939cd9e938de4aa725fc650a432b5c
5SHA512 (redis-5.0.4.tar.gz) = 336929c81a476e2a23a64f867823d70c3aab66fb0098eef2e61630be6522ff2f6af680169ffcae35d559758b2c6b56f88c5a953a538291fea886449cba33b8ad 5SHA512 (redis-5.0.5.tar.gz) = 78215ec02b7184e05788c7a368146ea53095a877a0e09174b4c9f175aeb9ba9174023c19e33bf62e4513b848e1841538d398e7c0a651c5c947255c1691cb4586
6Size (redis-5.0.4.tar.gz) = 1966337 bytes 6Size (redis-5.0.5.tar.gz) = 1975750 bytes
7SHA1 (patch-redis.conf) = 528c28e2b7483eb20ccab8f2ab9543822792f016 7SHA1 (patch-redis.conf) = 528c28e2b7483eb20ccab8f2ab9543822792f016
8SHA1 (patch-src_Makefile) = 2c4f6d822980874cc9ff95d239040985fa364649 8SHA1 (patch-src_Makefile) = 2c4f6d822980874cc9ff95d239040985fa364649
9SHA1 (patch-src_hyperloglog.c) = 65a4a220ccd4282162c50293f4fe278a43b84239 9SHA1 (patch-src_hyperloglog.c) = 65a4a220ccd4282162c50293f4fe278a43b84239
10SHA1 (patch-src_object.c) = 30ffaec9c7e6135e3a5576cd1a35d7bcec668299 10SHA1 (patch-src_object.c) = 30ffaec9c7e6135e3a5576cd1a35d7bcec668299