From b4b614857b31193eb90ee6c6c86ce2f78bfe79c1 Mon Sep 17 00:00:00 2001 From: osa Date: Wed, 21 Aug 2013 18:22:31 +0000 Subject: Upgrade from 2.6.14 to 2.6.15. Add support for lang/lua, disabled by default. UPGRADE URGENCY: MODERATE, upgrade ASAP only if you experience issues related to the expired keys collection algorithm, or if you use the ZUNIONSTORE command. * [FIX] Improved expired keys collection algorithm. Even under heavy load keys to be expired can't accumulate because of lack of CPU time. * [FIX] Fixed Issue #1240, ZUNIONSTORE could lead to wrong result. * [NEW] redis-benchmark improvements. * [NEW] dict.c API wrong usage detection. WARNING: redis-benchmark released with 2.6.15 features non backward compatible change in the way the random arguments are specified, use the --help option for more information. --- databases/redis/Makefile | 21 +++++++--- databases/redis/distinfo | 4 +- databases/redis/files/extra-patch-src-Makefile | 47 ---------------------- databases/redis/files/extra-patch-src-Makefile.lua | 47 ++++++++++++++++++++++ .../redis/files/extra-patch-src-Makefile.luajit | 47 ++++++++++++++++++++++ 5 files changed, 112 insertions(+), 54 deletions(-) delete mode 100644 databases/redis/files/extra-patch-src-Makefile create mode 100644 databases/redis/files/extra-patch-src-Makefile.lua create mode 100644 databases/redis/files/extra-patch-src-Makefile.luajit (limited to 'databases/redis') diff --git a/databases/redis/Makefile b/databases/redis/Makefile index af0334b85ff7..83ddd650dc77 100644 --- a/databases/redis/Makefile +++ b/databases/redis/Makefile @@ -2,9 +2,9 @@ # $FreeBSD$ PORTNAME= redis -DISTVERSION= 2.6.14 +DISTVERSION= 2.6.15 CATEGORIES= databases -MASTER_SITES= GOOGLE_CODE +MASTER_SITES= http://download.redis.io/releases/ MAINTAINER= osa@FreeBSD.org COMMENT= A persistent key-value database with built-in net interface @@ -13,15 +13,26 @@ LICENSE= BSD LIB_DEPENDS= execinfo:${PORTSDIR}/devel/libexecinfo -OPTIONS_DEFINE= LUAJIT TESTS +OPTIONS_DEFINE= TESTS +OPTIONS_RADIO= EXTLUA +OPTIONS_RADIO_EXTLUA= LUA LUAJIT + +LUA_DESC= Use lang/lua instead of builtin lua LUAJIT_DESC= Use lang/luajit instead of builtin lua TESTS_DESC= Install lang/tcl for redis unit tests .include +.if ${PORT_OPTIONS:MLUA} +USE_LUA?= 5.1 +EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-src-Makefile.lua +CFLAGS+= -fPIC +LDFLAGS+= -Wl,-E +.endif + .if ${PORT_OPTIONS:MLUAJIT} LIB_DEPENDS+= luajit-5.1:${PORTSDIR}/lang/luajit -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-src-Makefile +EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-src-Makefile.luajit CFLAGS+= -fPIC LDFLAGS+= -Wl,-E .endif @@ -63,7 +74,7 @@ PLIST_SUB+= REDIS_USER=${USERS} \ REDIS_DBDIR=${REDIS_DBDIR} \ REDIS_RUNDIR=${REDIS_RUNDIR} -.if ${PORT_OPTIONS:MLUAJIT} +.if ${PORT_OPTIONS:MLUAJIT} || ${PORT_OPTIONS:MLUA} post-patch: @cd ${WRKSRC}/deps/lua/src && ${CP} lua_* strbuf.* ${WRKSRC}/src/ .endif diff --git a/databases/redis/distinfo b/databases/redis/distinfo index 1405166dff97..5b00daa8e6bd 100644 --- a/databases/redis/distinfo +++ b/databases/redis/distinfo @@ -1,2 +1,2 @@ -SHA256 (redis-2.6.14.tar.gz) = fdf61c693e5c4908b4bb44c428d4a2b7568f05566c144c58fdf19c5cb12a9caf -SIZE (redis-2.6.14.tar.gz) = 995036 +SHA256 (redis-2.6.15.tar.gz) = b0105c6ec526d40e90a0a0bc9d070a5602d839b930776b8ecaeb9fa32493e3bc +SIZE (redis-2.6.15.tar.gz) = 998865 diff --git a/databases/redis/files/extra-patch-src-Makefile b/databases/redis/files/extra-patch-src-Makefile deleted file mode 100644 index b0d026db6754..000000000000 --- a/databases/redis/files/extra-patch-src-Makefile +++ /dev/null @@ -1,47 +0,0 @@ ---- src/Makefile.orig 2012-12-25 23:11:28.000000000 +0400 -+++ src/Makefile 2012-12-25 23:13:53.000000000 +0400 -@@ -15,7 +15,7 @@ - release_hdr := $(shell sh -c './mkreleasehdr.sh') - uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not') - OPTIMIZATION?=-O2 --DEPENDENCY_TARGETS=hiredis linenoise lua -+DEPENDENCY_TARGETS=hiredis linenoise - - # Default settings - STD= -std=c99 -pedantic -@@ -61,7 +61,7 @@ - endif - - # Include paths to dependencies --FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise -I../deps/lua/src -+FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise - - ifeq ($(MALLOC),tcmalloc) - FINAL_CFLAGS+= -DUSE_TCMALLOC -@@ -79,6 +79,9 @@ - FINAL_LIBS+= ../deps/jemalloc/lib/libjemalloc.a -ldl - endif - -+FINAL_CFLAGS+= -I${PREFIX}/include/luajit-2.0 -+FINAL_LIBS+= -L${PREFIX}/lib -lluajit-5.1 -+ - REDIS_CC=$(QUIET_CC)$(CC) $(FINAL_CFLAGS) - REDIS_LD=$(QUIET_LINK)$(CC) $(FINAL_LDFLAGS) - REDIS_INSTALL=$(QUIET_INSTALL)$(INSTALL) -@@ -103,6 +106,7 @@ - REDIS_SERVER_NAME= redis-server - REDIS_SENTINEL_NAME= redis-sentinel - REDIS_SERVER_OBJ= adlist.o ae.o anet.o dict.o redis.o sds.o zmalloc.o lzf_c.o lzf_d.o pqsort.o zipmap.o sha1.o ziplist.o release.o networking.o util.o object.o db.o replication.o rdb.o t_string.o t_list.o t_set.o t_zset.o t_hash.o config.o aof.o pubsub.o multi.o debug.o sort.o intset.o syncio.o migrate.o endianconv.o slowlog.o scripting.o bio.o rio.o rand.o memtest.o crc64.o bitops.o sentinel.o -+REDIS_SERVER_OBJ+= lua_cjson.o lua_cmsgpack.o lua_struct.o strbuf.o - REDIS_CLI_NAME= redis-cli - REDIS_CLI_OBJ= anet.o sds.o adlist.o redis-cli.o zmalloc.o release.o anet.o ae.o - REDIS_BENCHMARK_NAME= redis-benchmark -@@ -157,7 +161,7 @@ - - # redis-server - $(REDIS_SERVER_NAME): $(REDIS_SERVER_OBJ) -- $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a ../deps/lua/src/liblua.a $(FINAL_LIBS) -+ $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a $(FINAL_LIBS) - - # redis-sentinel - $(REDIS_SENTINEL_NAME): $(REDIS_SERVER_NAME) diff --git a/databases/redis/files/extra-patch-src-Makefile.lua b/databases/redis/files/extra-patch-src-Makefile.lua new file mode 100644 index 000000000000..cd0ee01892c8 --- /dev/null +++ b/databases/redis/files/extra-patch-src-Makefile.lua @@ -0,0 +1,47 @@ +--- src/Makefile.orig 2012-12-25 23:11:28.000000000 +0400 ++++ src/Makefile 2012-12-25 23:13:53.000000000 +0400 +@@ -15,7 +15,7 @@ + release_hdr := $(shell sh -c './mkreleasehdr.sh') + uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not') + OPTIMIZATION?=-O2 +-DEPENDENCY_TARGETS=hiredis linenoise lua ++DEPENDENCY_TARGETS=hiredis linenoise + + # Default settings + STD= -std=c99 -pedantic +@@ -61,7 +61,7 @@ + endif + + # Include paths to dependencies +-FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise -I../deps/lua/src ++FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise + + ifeq ($(MALLOC),tcmalloc) + FINAL_CFLAGS+= -DUSE_TCMALLOC +@@ -79,6 +79,9 @@ + FINAL_LIBS+= ../deps/jemalloc/lib/libjemalloc.a -ldl + endif + ++FINAL_CFLAGS+= -I${PREFIX}/include/lua51 ++FINAL_LIBS+= -L${PREFIX}/lib -llua-5.1 ++ + REDIS_CC=$(QUIET_CC)$(CC) $(FINAL_CFLAGS) + REDIS_LD=$(QUIET_LINK)$(CC) $(FINAL_LDFLAGS) + REDIS_INSTALL=$(QUIET_INSTALL)$(INSTALL) +@@ -103,6 +106,7 @@ + REDIS_SERVER_NAME= redis-server + REDIS_SENTINEL_NAME= redis-sentinel + REDIS_SERVER_OBJ= adlist.o ae.o anet.o dict.o redis.o sds.o zmalloc.o lzf_c.o lzf_d.o pqsort.o zipmap.o sha1.o ziplist.o release.o networking.o util.o object.o db.o replication.o rdb.o t_string.o t_list.o t_set.o t_zset.o t_hash.o config.o aof.o pubsub.o multi.o debug.o sort.o intset.o syncio.o migrate.o endianconv.o slowlog.o scripting.o bio.o rio.o rand.o memtest.o crc64.o bitops.o sentinel.o ++REDIS_SERVER_OBJ+= lua_cjson.o lua_cmsgpack.o lua_struct.o strbuf.o + REDIS_CLI_NAME= redis-cli + REDIS_CLI_OBJ= anet.o sds.o adlist.o redis-cli.o zmalloc.o release.o anet.o ae.o + REDIS_BENCHMARK_NAME= redis-benchmark +@@ -157,7 +161,7 @@ + + # redis-server + $(REDIS_SERVER_NAME): $(REDIS_SERVER_OBJ) +- $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a ../deps/lua/src/liblua.a $(FINAL_LIBS) ++ $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a $(FINAL_LIBS) + + # redis-sentinel + $(REDIS_SENTINEL_NAME): $(REDIS_SERVER_NAME) diff --git a/databases/redis/files/extra-patch-src-Makefile.luajit b/databases/redis/files/extra-patch-src-Makefile.luajit new file mode 100644 index 000000000000..b0d026db6754 --- /dev/null +++ b/databases/redis/files/extra-patch-src-Makefile.luajit @@ -0,0 +1,47 @@ +--- src/Makefile.orig 2012-12-25 23:11:28.000000000 +0400 ++++ src/Makefile 2012-12-25 23:13:53.000000000 +0400 +@@ -15,7 +15,7 @@ + release_hdr := $(shell sh -c './mkreleasehdr.sh') + uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not') + OPTIMIZATION?=-O2 +-DEPENDENCY_TARGETS=hiredis linenoise lua ++DEPENDENCY_TARGETS=hiredis linenoise + + # Default settings + STD= -std=c99 -pedantic +@@ -61,7 +61,7 @@ + endif + + # Include paths to dependencies +-FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise -I../deps/lua/src ++FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise + + ifeq ($(MALLOC),tcmalloc) + FINAL_CFLAGS+= -DUSE_TCMALLOC +@@ -79,6 +79,9 @@ + FINAL_LIBS+= ../deps/jemalloc/lib/libjemalloc.a -ldl + endif + ++FINAL_CFLAGS+= -I${PREFIX}/include/luajit-2.0 ++FINAL_LIBS+= -L${PREFIX}/lib -lluajit-5.1 ++ + REDIS_CC=$(QUIET_CC)$(CC) $(FINAL_CFLAGS) + REDIS_LD=$(QUIET_LINK)$(CC) $(FINAL_LDFLAGS) + REDIS_INSTALL=$(QUIET_INSTALL)$(INSTALL) +@@ -103,6 +106,7 @@ + REDIS_SERVER_NAME= redis-server + REDIS_SENTINEL_NAME= redis-sentinel + REDIS_SERVER_OBJ= adlist.o ae.o anet.o dict.o redis.o sds.o zmalloc.o lzf_c.o lzf_d.o pqsort.o zipmap.o sha1.o ziplist.o release.o networking.o util.o object.o db.o replication.o rdb.o t_string.o t_list.o t_set.o t_zset.o t_hash.o config.o aof.o pubsub.o multi.o debug.o sort.o intset.o syncio.o migrate.o endianconv.o slowlog.o scripting.o bio.o rio.o rand.o memtest.o crc64.o bitops.o sentinel.o ++REDIS_SERVER_OBJ+= lua_cjson.o lua_cmsgpack.o lua_struct.o strbuf.o + REDIS_CLI_NAME= redis-cli + REDIS_CLI_OBJ= anet.o sds.o adlist.o redis-cli.o zmalloc.o release.o anet.o ae.o + REDIS_BENCHMARK_NAME= redis-benchmark +@@ -157,7 +161,7 @@ + + # redis-server + $(REDIS_SERVER_NAME): $(REDIS_SERVER_OBJ) +- $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a ../deps/lua/src/liblua.a $(FINAL_LIBS) ++ $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a $(FINAL_LIBS) + + # redis-sentinel + $(REDIS_SENTINEL_NAME): $(REDIS_SERVER_NAME) -- cgit