>>> redict: Building community/redict 7.3.3-r0 (using abuild 3.15.0_rc3-r3) started Fri, 16 May 2025 04:44:11 +0000 >>> redict: Validating /home/buildozer/aports/community/redict/APKBUILD... >>> redict: Analyzing dependencies... >>> redict: Installing for build: build-base linux-headers openssl-dev>3 tcl procps (1/8) Installing linux-headers (6.14.2-r0) (2/8) Installing openssl-dev (3.5.0-r0) (3/8) Installing tzdata (2025b-r0) (4/8) Installing tcl (8.6.16-r0) (5/8) Installing libintl (0.24.1-r0) (6/8) Installing libproc2 (4.0.4-r2) (7/8) Installing procps-ng (4.0.4-r2) (8/8) Installing .makedepends-redict (20250516.044412) Executing busybox-1.37.0-r17.trigger OK: 444 MiB in 112 packages >>> redict: Cleaning up srcdir >>> redict: Cleaning up pkgdir >>> redict: Cleaning up tmpdir >>> redict: Fetching https://distfiles.alpinelinux.org/distfiles/v3.22/redict-7.3.3.tar.gz Connecting to distfiles.alpinelinux.org (172.105.82.32:443) saving to '/var/cache/distfiles/v3.22/redict-7.3.3.tar.gz.part' redict-7.3.3.tar.gz. 14% |**** | 479k 0:00:05 ETA redict-7.3.3.tar.gz. 100% |********************************| 3335k 0:00:00 ETA '/var/cache/distfiles/v3.22/redict-7.3.3.tar.gz.part' saved >>> redict: Fetching https://distfiles.alpinelinux.org/distfiles/v3.22/redict-7.3.3.tar.gz >>> redict: Checking sha512sums... redict-7.3.3.tar.gz: OK redict.conf.patch: OK sentinel.conf.patch: OK redict.initd: OK redict.confd: OK redict-sentinel.initd: OK redict.logrotate: OK >>> redict: Unpacking /var/cache/distfiles/v3.22/redict-7.3.3.tar.gz... >>> redict: redict.conf.patch patching file redict.conf Hunk #1 succeeded at 153 (offset 41 lines). Hunk #2 succeeded at 304 (offset 63 lines). Hunk #3 succeeded at 322 (offset 63 lines). Hunk #4 succeeded at 334 (offset 64 lines). Hunk #5 succeeded at 489 (offset 67 lines). >>> redict: sentinel.conf.patch patching file sentinel.conf Hunk #1 succeeded at 31 with fuzz 2 (offset -2 lines). make -C src all make[1]: Entering directory '/home/buildozer/aports/community/redict/src/redict/src' CC Makefile.dep rm -rf redict-server redict-sentinel redict-cli redict-benchmark redict-check-rdb redict-check-aof *.o *.gcda *.gcno *.gcov redict.info lcov-html Makefile.dep *.so rm -f threads_mngr.d adlist.d quicklist.d ae.d anet.d dict.d kvstore.d server.d sds.d zmalloc.d lzf_c.d lzf_d.d pqsort.d zipmap.d sha1.d ziplist.d release.d networking.d util.d object.d db.d replication.d rdb.d t_string.d t_list.d t_set.d t_zset.d t_hash.d config.d aof.d pubsub.d multi.d debug.d sort.d intset.d syncio.d cluster.d cluster_legacy.d crc16.d endianconv.d slowlog.d eval.d bio.d rio.d rand.d memtest.d syscheck.d crcspeed.d crc64.d bitops.d sentinel.d notify.d setproctitle.d blocked.d hyperloglog.d latency.d sparkline.d redict-check-rdb.d redict-check-aof.d geo.d lazyfree.d module.d evict.d expire.d geohash.d geohash_helper.d childinfo.d defrag.d siphash.d rax.d t_stream.d listpack.d localtime.d lolwut.d lolwut5.d lolwut6.d acl.d tracking.d socket.d tls.d sha256.d timeout.d setcpuaffinity.d monotonic.d mt19937-64.d resp_parser.d call_reply.d script_lua.d script.d functions.d function_lua.d commands.d strl.d connection.d unix.d logreqres.d anet.d adlist.d dict.d redict-cli.d zmalloc.d release.d ae.d redictassert.d crcspeed.d crc64.d siphash.d crc16.d monotonic.d cli_common.d mt19937-64.d strl.d cli_commands.d ae.d anet.d redict-benchmark.d adlist.d dict.d zmalloc.d redictassert.d release.d crcspeed.d crc64.d siphash.d crc16.d monotonic.d cli_common.d mt19937-64.d strl.d (cd ../deps && make distclean) make[2]: Entering directory '/home/buildozer/aports/community/redict/src/redict/deps' (cd hiredict && make clean) > /dev/null || true (cd linenoise && make clean) > /dev/null || true (cd lua && make clean) > /dev/null || true (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true (cd hdr_histogram && make clean) > /dev/null || true (cd fpconv && make clean) > /dev/null || true (rm -f .make-*) make[2]: Leaving directory '/home/buildozer/aports/community/redict/src/redict/deps' (cd modules && make clean) make[2]: Entering directory '/home/buildozer/aports/community/redict/src/redict/src/modules' rm -rf *.xo *.so make[2]: Leaving directory '/home/buildozer/aports/community/redict/src/redict/src/modules' (cd ../tests/modules && make clean) make[2]: Entering directory '/home/buildozer/aports/community/redict/src/redict/tests/modules' rm -f commandfilter.so basics.so testrdb.so fork.so infotest.so propagate.so misc.so hooks.so blockonkeys.so blockonbackground.so scan.so datatype.so datatype2.so auth.so keyspace_events.so blockedclient.so getkeys.so getchannels.so test_lazyfree.so timer.so defragtest.so keyspecs.so hash.so zset.so stream.so mallocsize.so aclcheck.so list.so subcommands.so reply.so cmdintrospection.so eventloop.so moduleconfigs.so moduleconfigstwo.so publish.so usercall.so postnotifications.so moduleauthtwo.so rdbloadsave.so crash.so commandfilter.xo basics.xo testrdb.xo fork.xo infotest.xo propagate.xo misc.xo hooks.xo blockonkeys.xo blockonbackground.xo scan.xo datatype.xo datatype2.xo auth.xo keyspace_events.xo blockedclient.xo getkeys.xo getchannels.xo test_lazyfree.xo timer.xo defragtest.xo keyspecs.xo hash.xo zset.xo stream.xo mallocsize.xo aclcheck.xo list.xo subcommands.xo reply.xo cmdintrospection.xo eventloop.xo moduleconfigs.xo moduleconfigstwo.xo publish.xo usercall.xo postnotifications.xo moduleauthtwo.xo rdbloadsave.xo crash.xo make[2]: Leaving directory '/home/buildozer/aports/community/redict/src/redict/tests/modules' (rm -f .make-*) echo STD=-pedantic -DREDICT_STATIC='' -std=gnu11 >> .make-settings echo WARN=-Wall -W -Wno-missing-field-initializers -Werror=deprecated-declarations -Wstrict-prototypes >> .make-settings echo OPT=-O3 -flto=auto -fno-omit-frame-pointer >> .make-settings echo MALLOC=libc >> .make-settings echo BUILD_TLS=yes >> .make-settings echo USE_SYSTEMD= >> .make-settings echo CFLAGS=-Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto >> .make-settings echo LDFLAGS=-Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs >> .make-settings echo REDICT_CFLAGS= >> .make-settings echo REDICT_LDFLAGS= >> .make-settings echo PREV_FINAL_CFLAGS=-pedantic -DREDICT_STATIC='' -std=gnu11 -Wall -W -Wno-missing-field-initializers -Werror=deprecated-declarations -Wstrict-prototypes -O3 -flto=auto -fno-omit-frame-pointer -g -ggdb -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -I../deps/hiredict -I../deps/linenoise -I../deps/lua/src -I../deps/hdr_histogram -I../deps/fpconv -DUSE_OPENSSL=1 -DBUILD_TLS_MODULE=0 >> .make-settings echo PREV_FINAL_LDFLAGS=-Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs -O3 -flto=auto -fno-omit-frame-pointer -g -ggdb -rdynamic >> .make-settings (cd ../deps && make hiredict linenoise lua hdr_histogram fpconv) make[2]: Entering directory '/home/buildozer/aports/community/redict/src/redict/deps' (cd hiredict && make clean) > /dev/null || true (cd linenoise && make clean) > /dev/null || true (cd lua && make clean) > /dev/null || true (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true (cd hdr_histogram && make clean) > /dev/null || true (cd fpconv && make clean) > /dev/null || true (rm -f .make-*) (echo "-Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto" > .make-cflags) (echo "-Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs" > .make-ldflags) MAKE hiredict MAKE linenoise cd hiredict && make static USE_SSL=1 cd linenoise && make MAKE lua cd lua/src && make all CFLAGS="-Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2" MYLDFLAGS="-Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs" AR="ar rc" MAKE hdr_histogram make[3]: Entering directory '/home/buildozer/aports/community/redict/src/redict/deps/hiredict' cd hdr_histogram && make MAKE fpconv cd fpconv && make make[3]: Entering directory '/home/buildozer/aports/community/redict/src/redict/deps/linenoise' cc -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -c linenoise.c make[3]: Entering directory '/home/buildozer/aports/community/redict/src/redict/deps/lua/src' cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lapi.o lapi.c make[3]: Entering directory '/home/buildozer/aports/community/redict/src/redict/deps/hdr_histogram' cc -std=c99 -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHDR_MALLOC_INCLUDE=\"hdr_redis_malloc.h\" -c hdr_histogram.c make[3]: Entering directory '/home/buildozer/aports/community/redict/src/redict/deps/fpconv' cc -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -c fpconv_dtoa.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lcode.o lcode.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o ldebug.o ldebug.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o ldo.o ldo.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o ldump.o ldump.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lfunc.o lfunc.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lgc.o lgc.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o llex.o llex.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDICT_TEST_SSL -Wall -Wextra -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -pedantic alloc.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lmem.o lmem.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lobject.o lobject.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDICT_TEST_SSL -Wall -Wextra -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -pedantic net.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lopcodes.o lopcodes.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lparser.o lparser.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDICT_TEST_SSL -Wall -Wextra -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -pedantic hiredict.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lstate.o lstate.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDICT_TEST_SSL -Wall -Wextra -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -pedantic sds.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lstring.o lstring.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDICT_TEST_SSL -Wall -Wextra -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -pedantic async.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o ltable.o ltable.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o ltm.o ltm.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDICT_TEST_SSL -Wall -Wextra -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -pedantic read.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lundump.o lundump.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDICT_TEST_SSL -Wall -Wextra -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -pedantic sockcompat.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lvm.o lvm.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDICT_TEST_SSL -Wall -Wextra -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -pedantic ssl.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lzio.o lzio.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o strbuf.o strbuf.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o fpconv.o fpconv.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lauxlib.o lauxlib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lbaselib.o lbaselib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o ldblib.o ldblib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o liolib.o liolib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lmathlib.o lmathlib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o loslib.o loslib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o ltablib.o ltablib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lstrlib.o lstrlib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o loadlib.o loadlib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o linit.o linit.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lua_cjson.o lua_cjson.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lua_struct.o lua_struct.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lua_cmsgpack.o lua_cmsgpack.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lua_bit.o lua_bit.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lua.o lua.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o luac.o luac.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o print.o print.c ar rcs libfpconv.a fpconv_dtoa.o make[3]: Leaving directory '/home/buildozer/aports/community/redict/src/redict/deps/fpconv' make[3]: Leaving directory '/home/buildozer/aports/community/redict/src/redict/deps/linenoise' ar rcs libhdrhistogram.a hdr_histogram.o make[3]: Leaving directory '/home/buildozer/aports/community/redict/src/redict/deps/hdr_histogram' ar rcs libhiredict.a alloc.o net.o hiredict.o sds.o async.o read.o sockcompat.o ar rc liblua.a lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o strbuf.o fpconv.o lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o loslib.o ltablib.o lstrlib.o loadlib.o linit.o lua_cjson.o lua_struct.o lua_cmsgpack.o lua_bit.o # DLL needs all object files ranlib liblua.a cc -o lua -Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs lua.o liblua.a -lm cc -o luac -Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs luac.o print.o liblua.a -lm ar rcs libhiredict_ssl.a ssl.o make[3]: Leaving directory '/home/buildozer/aports/community/redict/src/redict/deps/hiredict' make[3]: Leaving directory '/home/buildozer/aports/community/redict/src/redict/deps/lua/src' make[2]: Leaving directory '/home/buildozer/aports/community/redict/src/redict/deps' CC threads_mngr.o CC adlist.o CC quicklist.o CC ae.o CC anet.o CC dict.o CC kvstore.o CC server.o CC sds.o CC zmalloc.o CC lzf_c.o CC lzf_d.o CC pqsort.o CC zipmap.o CC sha1.o CC ziplist.o CC release.o CC networking.o CC util.o CC object.o CC db.o CC replication.o CC rdb.o CC t_string.o CC t_list.o CC t_set.o CC t_zset.o CC t_hash.o CC config.o CC aof.o CC pubsub.o CC multi.o CC debug.o CC sort.o CC intset.o CC syncio.o CC cluster.o CC cluster_legacy.o CC crc16.o CC endianconv.o CC slowlog.o CC eval.o CC bio.o CC rio.o CC rand.o CC memtest.o CC syscheck.o CC crcspeed.o CC crc64.o CC bitops.o CC sentinel.o CC notify.o CC setproctitle.o CC blocked.o CC hyperloglog.o CC latency.o CC sparkline.o CC redict-check-rdb.o CC redict-check-aof.o CC geo.o CC lazyfree.o CC module.o CC evict.o CC expire.o CC geohash.o CC geohash_helper.o CC childinfo.o CC defrag.o CC siphash.o CC rax.o CC t_stream.o CC listpack.o CC localtime.o CC lolwut.o CC lolwut5.o CC lolwut6.o CC acl.o CC tracking.o CC socket.o CC tls.o CC sha256.o CC timeout.o CC setcpuaffinity.o CC monotonic.o CC mt19937-64.o CC resp_parser.o CC call_reply.o CC script_lua.o CC script.o CC functions.o CC function_lua.o CC commands.o CC strl.o CC connection.o CC unix.o CC logreqres.o CC redict-cli.o CC redictassert.o CC cli_common.o CC cli_commands.o CC redict-benchmark.o LINK redict-benchmark LINK redict-cli LINK redict-server INSTALL redict-sentinel INSTALL redict-check-rdb INSTALL redict-check-aof Hint: It's a good idea to run 'make test' ;) make[1]: Leaving directory '/home/buildozer/aports/community/redict/src/redict/src' make -C src test make[1]: Entering directory '/home/buildozer/aports/community/redict/src/redict/src' CC Makefile.dep CC release.o LINK redict-server LINK redict-cli LINK redict-benchmark INSTALL redict-check-aof Cleanup: may take some time... OK Starting test server at port 21079 [ready]: 59047 Testing unit/printver [ready]: 59054 Testing unit/dump [ready]: 59055 Testing unit/auth [ready]: 59049 Testing unit/protocol [ready]: 59048 Testing unit/keyspace [ready]: 59050 Testing unit/scan [ready]: 59051 Testing unit/info [ready]: 59052 Testing unit/info-command [ready]: 59053 Testing unit/type/string [ready]: 59056 Testing unit/type/incr [ready]: 59057 Testing unit/type/list [ready]: 59062 Testing unit/type/list-2 [ready]: 59058 Testing unit/type/list-3 [ready]: 59059 Testing unit/type/set [ready]: 59060 Testing unit/type/zset [ready]: 59061 Testing unit/type/hash Testing Redict version 7.3.3 (00000000) [ok]: DUMP / RESTORE are able to serialize / unserialize a simple key (1 ms) [ok]: RESTORE can set an arbitrary expire to the materialized key (1 ms) [ok]: AUTH fails if there is no password configured server side (1 ms) [ok]: Arity check for auth command (0 ms) [ok]: RESTORE can set an expire that overflows a 32 bit integer (1 ms) [ok]: DEL against a single item (1 ms) [ok]: RESTORE can set an absolute expire (1 ms) [ok]: Vararg DEL (1 ms) [ok]: info command with at most one sub command (3 ms) [ok]: SET and GET an item (1 ms) [ok]: Untagged multi-key commands (1 ms) [ok]: SET and GET an empty item (0 ms) [ok]: info command with one sub-section (0 ms) [ok]: RESTORE with ABSTTL in the past (2 ms) [ok]: INCR against non existing key (1 ms) [ok]: INCR against key created by incr itself (0 ms) [ok]: KEYS with pattern (1 ms) [ok]: DECR against key created by incr (0 ms) [ok]: KEYS to get all keys (1 ms) [ok]: DBSIZE (0 ms) [ok]: info command with multiple sub-sections (2 ms) [ok]: DECR against key is not exist and incr (0 ms) [ok]: INCR against key originally set with SET (0 ms) [ok]: RESTORE can set LRU (2 ms) [ok]: INCR over 32bit value (0 ms) [ok]: KEYS with hashtag (1 ms) [ok]: INCRBY over 32bit value with over 32bit increment (0 ms) [ok]: Explicit regression for a list bug (1 ms) [ok]: INCR fails against key with spaces (left) (1 ms) [ok]: INCR fails against key with spaces (right) (0 ms) [ok]: RESTORE can set LFU (1 ms) [ok]: INCR fails against key with spaces (both) (0 ms) [ok]: DEL all keys (2 ms) [ok]: DECRBY negation overflow (0 ms) [ok]: RESTORE returns an error of the key already exists (1 ms) [ok]: packed node check compression with insert and pop (3 ms) [ok]: INCR fails against a key holding a list (0 ms) [ok]: DECRBY over 32bit value with over 32bit increment, negative res (1 ms) [ok]: HSET/HLEN - Small hash creation (2 ms) [ok]: DECRBY against key is not exist (0 ms) [ok]: Is the small hash encoded with a listpack? (0 ms) [ok]: packed node check compression combined with trim (1 ms) [ok]: RESTORE can overwrite an existing key with REPLACE (1 ms) [ok]: RESTORE can detect a syntax error for unrecognized options (0 ms) [ok]: INCR uses shared objects in the 0-9999 range (1 ms) [ok]: packed node check compression with lset (1 ms) [ok]: INCR can modify objects in-place (1 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - listpack (2 ms) [ok]: INCRBYFLOAT against non existing key (0 ms) [ok]: INCRBYFLOAT against key originally set with SET (0 ms) [ok]: INCRBYFLOAT over 32bit value (0 ms) [ok]: INCRBYFLOAT over 32bit value with over 32bit increment (0 ms) [ok]: INCRBYFLOAT fails against key with spaces (left) (1 ms) [ok]: Check encoding - listpack (1 ms) [ok]: INCRBYFLOAT fails against key with spaces (right) (0 ms) [ok]: INCRBYFLOAT fails against key with spaces (both) (0 ms) [ok]: ZSET basic ZADD and score update - listpack (1 ms) [ok]: INCRBYFLOAT fails against a key holding a list (1 ms) [ok]: ZSET element can't be set to NaN with ZADD - listpack (0 ms) [ok]: INCRBYFLOAT does not allow NaN or Infinity (0 ms) [ok]: ZSET element can't be set to NaN with ZINCRBY - listpack (0 ms) [ok]: INCRBYFLOAT decrement (1 ms) [ok]: ZADD with options syntax error with incomplete pair - listpack (1 ms) [ok]: string to double with null terminator (0 ms) [ok]: ZADD XX option without key - listpack (0 ms) [ok]: No negative zero (1 ms) [ok]: ZADD XX existing key - listpack (1 ms) [ok]: ZADD XX returns the number of elements actually added - listpack (0 ms) [ok]: INCRBY INCRBYFLOAT DECRBY against unhappy path (1 ms) [ok]: ZADD XX updates existing elements score - listpack (1 ms) [ok]: ZADD GT updates existing elements when new scores are greater - listpack (1 ms) [ok]: incr operation should update encoding from raw to int (1 ms) [ok]: ZADD LT updates existing elements when new scores are lower - listpack (1 ms) [ok]: decr operation should update encoding from raw to int (1 ms) [ok]: ZADD GT XX updates existing elements when new scores are greater and skips new elements - listpack (1 ms) [ok]: incrby operation should update encoding from raw to int (1 ms) [ok]: ZADD LT XX updates existing elements when new scores are lower and skips new elements - listpack (1 ms) [ok]: ZADD XX and NX are not compatible - listpack (0 ms) [ok]: decrby operation should update encoding from raw to int (1 ms) [ok]: ZADD NX with non existing key - listpack (0 ms) [ok]: HRANDFIELD - listpack (11 ms) [ok]: ZADD NX only add new elements without updating old ones - listpack (1 ms) [ok]: ZADD GT and NX are not compatible - listpack (1 ms) [ok]: ZADD LT and NX are not compatible - listpack (0 ms) [ok]: ZADD LT and GT are not compatible - listpack (1 ms) [ok]: ZADD INCR LT/GT replies with nill if score not updated - listpack (0 ms) [ok]: ZADD INCR LT/GT with inf - listpack (3 ms) [ok]: ZADD INCR works like ZINCRBY - listpack (0 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - hashtable (16 ms) [ok]: ZADD INCR works with a single score-elemenet pair - listpack (1 ms) [ok]: ZADD CH option changes return value to all changed elements - listpack (0 ms) [ok]: ZINCRBY calls leading to NaN result in error - listpack (1 ms) [ok]: ZINCRBY against invalid incr value - listpack (0 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - intset (2 ms) [ok]: ZADD - Variadic version base case - listpack (1 ms) [ok]: SMISMEMBER SMEMBERS SCARD against non set (1 ms) [ok]: ZADD - Return value is the number of actually added items - listpack (0 ms) [ok]: SMISMEMBER SMEMBERS SCARD against non existing key (0 ms) [ok]: ZADD - Variadic version does not add nothing on single parsing err - listpack (0 ms) [ok]: SMISMEMBER requires one or more members (1 ms) [ok]: ZADD - Variadic version will raise error on missing arg - listpack (0 ms) [ok]: SADD against non set (0 ms) [ok]: ZINCRBY does not work variadic even if shares ZADD implementation - listpack (0 ms) [ok]: SADD a non-integer against a small intset (1 ms) [ok]: ZCARD basics - listpack (1 ms) [ok]: ZREM removes key after last element is removed - listpack (1 ms) [ok]: HRANDFIELD - hashtable (9 ms) [ok]: ZREM variadic version - listpack (0 ms) [ok]: ZREM variadic version -- remove elements after key deletion - listpack (1 ms) [ok]: HRANDFIELD with RESP3 (1 ms) [ok]: HRANDFIELD count of 0 is handled correctly (0 ms) [ok]: HRANDFIELD count overflow (0 ms) [ok]: HRANDFIELD with against non existing key (1 ms) [ok]: HRANDFIELD count of 0 is handled correctly - emptyarray (0 ms) [ok]: HRANDFIELD with against non existing key - emptyarray (0 ms) [ok]: ZRANGE basics - listpack (2 ms) [ok]: ZREVRANGE basics - listpack (3 ms) [ok]: ZRANK/ZREVRANK basics - listpack (2 ms) [ok]: ZRANK - after deletion - listpack (1 ms) [ok]: ZINCRBY - can create a new sorted set - listpack (1 ms) [ok]: SADD a non-integer against a large intset (11 ms) [ok]: SADD an integer larger than 64 bits (0 ms) [ok]: ZINCRBY - increment and decrement - listpack (1 ms) [ok]: ZINCRBY return value - listpack (0 ms) [ok]: Handle an empty query (45 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - listpack (5 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - listpack (1 ms) [ok]: SADD an integer larger than 64 bits to a large intset (12 ms) [ok]: ZRANGEBYSCORE with LIMIT - listpack (5 ms) [ok]: ZRANGEBYSCORE with LIMIT and WITHSCORES - listpack (1 ms) [ok]: ZRANGEBYSCORE with non-value min or max - listpack (0 ms) [ok]: ZRANGEBYLEX/ZREVRANGEBYLEX/ZLEXCOUNT basics - listpack (3 ms) [ok]: ZLEXCOUNT advanced - listpack (2 ms) [ok]: ZRANGEBYLEX with LIMIT - listpack (6 ms) [ok]: ZRANGEBYLEX with invalid lex range specifiers - listpack (1 ms) [ok]: ZREMRANGEBYSCORE basics - listpack (10 ms) [ok]: ZREMRANGEBYSCORE with non-value min or max - listpack (1 ms) [ok]: ZREMRANGEBYRANK basics - listpack (4 ms) [ok]: RESTORE should not store key that are already expired, with REPLACE will propagate it as DEL or UNLINK (80 ms) [ok]: DUMP of non existing key returns nil (0 ms) [ok]: Negative multibulk length (50 ms) [ok]: Out of range multibulk length (1 ms) [1/91 done]: unit/info-command (0 seconds) Testing unit/type/stream [ok]: Wrong multibulk payload header (0 ms) [ok]: Negative multibulk payload length (0 ms) [ok]: ZREMRANGEBYLEX basics - listpack (13 ms) [ok]: ZUNIONSTORE against non-existing key doesn't set destination - listpack (1 ms) [ok]: Out of range multibulk payload length (1 ms) [2/91 done]: unit/printver (0 seconds) Testing unit/type/stream-cgroups [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF against non-existing key - listpack (0 ms) [ok]: Non-number multibulk payload length (0 ms) [ok]: ZUNIONSTORE with empty set - listpack (1 ms) [ok]: Multi bulk request not followed by bulk arguments (1 ms) [ok]: Generic wrong number of args (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with empty set - listpack (1 ms) [ok]: Unbalanced number of quotes (0 ms) [ok]: ZUNIONSTORE basics - listpack (1 ms) [3/91 done]: unit/type/incr (0 seconds) Testing unit/sort [ok]: SADD overflows the maximum allowed integers in an intset - single (47 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with integer members - listpack (1 ms) [ok]: ZUNIONSTORE with weights - listpack (1 ms) [ok]: ZUNION with weights - listpack (0 ms) [ok]: ZUNIONSTORE with a regular set and weights - listpack (1 ms) [ok]: ZUNIONSTORE with AGGREGATE MIN - listpack (0 ms) [ok]: ZUNION/ZINTER with AGGREGATE MIN - listpack (1 ms) [ok]: ZUNIONSTORE with AGGREGATE MAX - listpack (0 ms) [ok]: ZUNION/ZINTER with AGGREGATE MAX - listpack (1 ms) [ok]: ZINTERSTORE basics - listpack (0 ms) [ok]: ZINTER basics - listpack (1 ms) [ok]: ZINTERCARD with illegal arguments (0 ms) [ok]: ZINTERCARD basics - listpack (1 ms) [ok]: ZINTER RESP3 - listpack (1 ms) [ok]: ZINTERSTORE with weights - listpack (0 ms) [ok]: ZINTER with weights - listpack (1 ms) [ok]: ZINTERSTORE with a regular set and weights - listpack (0 ms) [ok]: ZINTERSTORE with AGGREGATE MIN - listpack (1 ms) [ok]: ZINTERSTORE with AGGREGATE MAX - listpack (0 ms) [ok]: ZUNIONSTORE with +inf/-inf scores - listpack (2 ms) [ok]: ZUNIONSTORE with NaN weights - listpack (1 ms) [ok]: ZINTERSTORE with +inf/-inf scores - listpack (1 ms) [ok]: ZINTERSTORE with NaN weights - listpack (0 ms) [ok]: ZDIFFSTORE basics - listpack (0 ms) [ok]: ZDIFF basics - listpack (1 ms) [ok]: Very big payload in GET/SET (95 ms) [ok]: ZDIFFSTORE with a regular set - listpack (0 ms) [ok]: ZDIFF subtracting set from itself - listpack (1 ms) [ok]: ZDIFF algorithm 1 - listpack (1 ms) [ok]: ZDIFF algorithm 2 - listpack (1 ms) [ok]: latencystats: disable/enable (2 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single (20 ms) [ok]: latencystats: configure percentiles (3 ms) [ok]: latencystats: bad configure percentiles (2 ms) [ok]: {standalone} SCAN basic (128 ms) [ok]: latencystats: blocking commands (3 ms) [ok]: latencystats: subcommands (2 ms) [ok]: Regression for quicklist #3343 bug (149 ms) [ok]: Protocol desync regression test #1 (66 ms) [ok]: SADD overflows the maximum allowed integers in an intset - multiple (44 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - multiple (2 ms) [ok]: latencystats: measure latency (52 ms) [ok]: errorstats: failed call authentication error (3 ms) [ok]: errorstats: failed call within MULTI/EXEC (4 ms) [ok]: errorstats: failed call within LUA (4 ms) [ok]: errorstats: failed call NOSCRIPT error (3 ms) [ok]: errorstats: failed call NOGROUP error (2 ms) [ok]: errorstats: rejected call unknown command (2 ms) [ok]: errorstats: rejected call within MULTI/EXEC (4 ms) [ok]: errorstats: rejected call due to wrong arity (2 ms) [ok]: errorstats: rejected call by OOM error (2 ms) [ok]: errorstats: rejected call by authorization error (2 ms) [ok]: errorstats: blocking commands (2 ms) [ok]: SADD overflows the maximum allowed integers in an intset - single_multiple (48 ms) [ok]: XADD wrong number of args (0 ms) [ok]: XADD can add entries into a stream that XRANGE can fetch (1 ms) [ok]: XADD IDs are incremental (1 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single_multiple (2 ms) [ok]: XADD IDs are incremental when ms is the same as well (1 ms) [ok]: Variadic SADD (1 ms) [ok]: XADD IDs correctly report an error when overflowing (0 ms) [ok]: XADD auto-generated sequence is incremented for last ID (1 ms) [ok]: XGROUP CREATE: creation and duplicate group name detection (1 ms) [ok]: AUTH fails when a wrong password is given (0 ms) [ok]: XADD auto-generated sequence is zero for future timestamp ID (0 ms) [ok]: Arbitrary command gives an error when AUTH is required (0 ms) [ok]: AUTH succeeds when the right password is given (0 ms) [ok]: XADD auto-generated sequence can't be smaller than last ID (0 ms) [ok]: Once AUTH succeeded we can actually send commands to the server (1 ms) [ok]: XADD auto-generated sequence can't overflow (0 ms) [ok]: XADD 0-* should succeed (0 ms) [ok]: XGROUP CREATE: with ENTRIESREAD parameter (1 ms) [ok]: For unauthenticated clients multibulk and bulk length are limited (0 ms) [ok]: XGROUP CREATE: automatic stream creation fails without MKSTREAM (1 ms) [ok]: XGROUP CREATE: automatic stream creation works with MKSTREAM (0 ms) [ok]: XREADGROUP will return only new elements (1 ms) [ok]: XREADGROUP can read the history of the elements we own (1 ms) [ok]: XPENDING is able to return pending items (1 ms) [ok]: XPENDING can return single consumer items (0 ms) [ok]: XPENDING only group (0 ms) [ok]: Listpack: SORT BY key (1 ms) [ok]: Listpack: SORT BY key with limit (0 ms) [ok]: Listpack: SORT BY hash field (0 ms) [ok]: HRANDFIELD with - hashtable (194 ms) [ok]: Protocol desync regression test #2 (75 ms) [ok]: XPENDING with IDLE (21 ms) [ok]: XPENDING with exclusive range intervals works as expected (1 ms) [ok]: XACK is able to remove items from the consumer/group PEL (1 ms) [ok]: XACK can't remove the same item multiple times (0 ms) [ok]: XACK is able to accept multiple arguments (0 ms) [ok]: XACK should fail if got at least one invalid ID (2 ms) [ok]: PEL NACK reassignment after XGROUP SETID event (1 ms) [ok]: XREADGROUP will not report data on empty history. Bug #5577 (2 ms) [ok]: XREADGROUP history reporting of deleted entries. Bug #5570 (1 ms) [ok]: Check compression with recompress (99 ms) [ok]: {standalone} SCAN COUNT (134 ms) [ok]: Blocking XREADGROUP will not reply with an empty array (23 ms) [ok]: Blocking XREADGROUP: key deleted (1 ms) [ok]: Blocking XREADGROUP: key type changed with SET (1 ms) [ok]: Blocking XREADGROUP: key type changed with transaction (2 ms) [ok]: Blocking XREADGROUP: flushed DB (1 ms) [ok]: Blocking XREADGROUP: swapped DB, key doesn't exist (2 ms) [ok]: Blocking XREADGROUP: swapped DB, key is not a stream (2 ms) [ok]: XREAD and XREADGROUP against wrong parameter (1 ms) [ok]: Blocking XREAD: key deleted (1 ms) [ok]: Blocking XREAD: key type changed with SET (1 ms) [ok]: Blocking XREADGROUP for stream that ran dry (issue #5299) (23 ms) [ok]: Blocking XREADGROUP will ignore BLOCK if ID is not > (4 ms) [ok]: MIGRATE is caching connections (230 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on list (4 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - avoid endless loop (2 ms) [ok]: XADD with MAXLEN option (123 ms) [ok]: Protocol desync regression test #3 (115 ms) [ok]: raw protocol response (0 ms) [ok]: raw protocol response - deferred (0 ms) [ok]: raw protocol response - multiline (1 ms) [ok]: RESP3 attributes (1 ms) [ok]: RESP3 attributes readraw (1 ms) [ok]: RESP3 attributes on RESP2 (1 ms) [ok]: test big number parsing (0 ms) [ok]: test bool parsing (1 ms) [ok]: test verbatim str parsing (1 ms) [ok]: {standalone} SCAN MATCH (110 ms) [ok]: errorstats: limit errors will not increase indefinitely (171 ms) [ok]: Set encoding after DEBUG RELOAD (184 ms) [ok]: SREM basics - $type (1 ms) [ok]: plain node check compression with insert and pop (397 ms) [ok]: HRANDFIELD with - listpack (188 ms) [ok]: SREM basics - $type (16 ms) [ok]: SREM basics - intset (1 ms) [ok]: SREM with multiple arguments (0 ms) [ok]: SREM variadic version with more args needed to destroy the key (1 ms) [ok]: SINTERCARD with illegal arguments (1 ms) [ok]: SINTERCARD against non-set should throw error (0 ms) [ok]: SINTERCARD against non-existing key (1 ms) [ok]: XADD with MAXLEN option and the '=' argument (121 ms) [ok]: test large number of args (105 ms) [ok]: test argument rewriting - issue 9598 (1 ms) [ok]: Generated sets must be encoded correctly - regular (1 ms) [ok]: SINTER with two sets - regular (0 ms) [ok]: SINTERCARD with two sets - regular (1 ms) [ok]: SINTERSTORE with two sets - regular (0 ms) [ok]: SINTERSTORE with two sets, after a DEBUG RELOAD - regular (5 ms) [ok]: stats: eventloop metrics (111 ms) [ok]: Quicklist: SORT BY key (18 ms) [ok]: Crash due to wrongly recompress after lrem (250 ms) [ok]: Quicklist: SORT BY key with limit (2 ms) [ok]: SUNION with two sets - regular (26 ms) [ok]: {standalone} SCAN TYPE (150 ms) [ok]: Quicklist: SORT BY hash field (18 ms) [ok]: SUNIONSTORE with two sets - regular (26 ms) [ok]: SINTER against three sets - regular (1 ms) [ok]: SINTERCARD against three sets - regular (0 ms) [ok]: SINTERSTORE with three sets - regular (1 ms) [ok]: plain node check compression combined with trim (148 ms) [ok]: HSET/HLEN - Big hash creation (144 ms) [ok]: Is the big hash encoded with an hash table? (0 ms) [ok]: HGET against the small hash (1 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element before it (61 ms) [ok]: SUNION with non existing keys - regular (26 ms) [ok]: SDIFF with two sets - regular (1 ms) [ok]: SDIFF with three sets - regular (0 ms) [ok]: SDIFFSTORE with three sets - regular (1 ms) [ok]: XADD with MAXLEN option and the '~' argument (112 ms) [ok]: XADD with NOMKSTREAM option (1 ms) [ok]: SINTER/SUNION/SDIFF with three same sets - regular (20 ms) [ok]: {standalone} SCAN unknown type (95 ms) [ok]: Regression for a crash with blocking ops and pipelining (1 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element after it (60 ms) [ok]: HGET against the big hash (88 ms) [ok]: HGET against non existing key (0 ms) [ok]: HSET in update and insert mode (0 ms) [ok]: HSETNX target key missing - small hash (0 ms) [ok]: HSETNX target key exists - small hash (0 ms) [ok]: HSETNX target key missing - big hash (0 ms) [ok]: HSETNX target key exists - big hash (1 ms) [ok]: HSET/HMSET wrong number of args (0 ms) [ok]: HMSET - small hash (1 ms) [ok]: Generated sets must be encoded correctly - intset (1 ms) [ok]: SINTER with two sets - intset (0 ms) [ok]: SINTERCARD with two sets - intset (0 ms) [ok]: SINTERSTORE with two sets - intset (1 ms) [ok]: SINTERSTORE with two sets, after a DEBUG RELOAD - intset (3 ms) [ok]: SUNION with two sets - intset (13 ms) [ok]: XADD with MINID option (121 ms) [ok]: XTRIM with MINID option (1 ms) [ok]: XTRIM with MINID option, big delta from master record (0 ms) [ok]: SUNIONSTORE with two sets - intset (14 ms) [ok]: SINTER against three sets - intset (1 ms) [ok]: SINTERCARD against three sets - intset (0 ms) [ok]: SINTERSTORE with three sets - intset (0 ms) [ok]: SUNION with non existing keys - intset (13 ms) [ok]: SDIFF with two sets - intset (0 ms) [ok]: SDIFF with three sets - intset (0 ms) [ok]: SDIFFSTORE with three sets - intset (1 ms) [4/91 done]: unit/protocol (1 seconds) Testing unit/expire [ok]: SINTER/SUNION/SDIFF with three same sets - intset (9 ms) [ok]: {standalone} SCAN with expired keys (113 ms) [ok]: SINTERSTORE with two listpack sets where result is intset (1 ms) [ok]: plain node check compression with lset (199 ms) [ok]: HMSET - big hash (100 ms) [ok]: HMGET against non existing key and fields (0 ms) [ok]: SINTERSTORE with two hashtable sets where result is intset (28 ms) [ok]: SUNION hashtable and listpack (2 ms) [ok]: SDIFF with first set empty (0 ms) [ok]: SDIFF with same set two times (1 ms) [ok]: Hash commands against wrong type (4 ms) [ok]: HMGET - small hash (1 ms) [ok]: EXPIRE - set timeouts multiple times (1 ms) [ok]: EXPIRE - It should be still possible to read 'x' (0 ms) [ok]: HMGET - big hash (93 ms) [ok]: HKEYS - small hash (1 ms) [ok]: {standalone} SCAN with expired keys with TYPE filter (126 ms) [ok]: {standalone} SSCAN with encoding intset (3 ms) [ok]: {standalone} SSCAN with encoding listpack (2 ms) [ok]: {standalone} SSCAN with encoding hashtable (7 ms) [ok]: {standalone} HSCAN with encoding listpack (2 ms) [ok]: HKEYS - big hash (30 ms) [ok]: HVALS - small hash (0 ms) [ok]: HVALS - big hash (4 ms) [ok]: HGETALL - small hash (0 ms) [ok]: Test LPUSH and LPOP on plain nodes (3 ms) [ok]: Test LINDEX and LINSERT on plain nodes (1 ms) [ok]: Test LTRIM on plain nodes (1 ms) [ok]: Test LREM on plain nodes (2 ms) [ok]: Test LPOS on plain nodes (1 ms) [ok]: Test LMOVE on plain nodes (1 ms) [ok]: HGETALL - big hash (66 ms) [ok]: HGETALL against non-existing key (0 ms) [ok]: {standalone} HSCAN with encoding hashtable (118 ms) [ok]: HDEL and return value (2 ms) [ok]: HDEL - more than a single value (1 ms) [ok]: HDEL - hash becomes empty before deleting all specified fields (0 ms) [ok]: {standalone} ZSCAN with encoding listpack (3 ms) [ok]: HEXISTS (1 ms) [ok]: Is a ziplist encoded Hash promoted on big payload? (1 ms) [ok]: HINCRBY against non existing database key (0 ms) [ok]: HINCRBY HINCRBYFLOAT against non-integer increment value (1 ms) [ok]: HINCRBY against non existing hash key (1 ms) [ok]: HINCRBY against hash key created by hincrby itself (0 ms) [ok]: HINCRBY against hash key originally set with HSET (1 ms) [ok]: HINCRBY over 32bit value (1 ms) [ok]: HINCRBY over 32bit value with over 32bit increment (0 ms) [ok]: HINCRBY fails against hash value with spaces (left) (1 ms) [ok]: HINCRBY fails against hash value with spaces (right) (1 ms) [ok]: HINCRBY can detect overflows (1 ms) [ok]: HINCRBYFLOAT against non existing database key (0 ms) [ok]: HINCRBYFLOAT against non existing hash key (1 ms) [ok]: HINCRBYFLOAT against hash key created by hincrby itself (1 ms) [ok]: HINCRBYFLOAT against hash key originally set with HSET (1 ms) [ok]: HINCRBYFLOAT over 32bit value (0 ms) [ok]: HINCRBYFLOAT over 32bit value with over 32bit increment (0 ms) [ok]: HINCRBYFLOAT fails against hash value with spaces (left) (1 ms) [ok]: HINCRBYFLOAT fails against hash value with spaces (right) (1 ms) [ok]: HINCRBYFLOAT fails against hash value that contains a null-terminator in the middle (0 ms) [ok]: HSTRLEN against the small hash (1 ms) [ok]: {standalone} ZSCAN with encoding skiplist (92 ms) [ok]: DEL against expired key (1101 ms) [ok]: EXISTS (0 ms) [ok]: Zero length value in key. SET/GET/EXISTS (1 ms) [ok]: Commands pipelining (1 ms) [ok]: Non existing command (0 ms) [ok]: RENAME basic usage (1 ms) [ok]: RENAME source key should no longer exist (0 ms) [ok]: {standalone} SCAN guarantees check under write load (30 ms) [ok]: RENAME against already existing key (1 ms) [ok]: {standalone} SSCAN with integer encoded object (issue #1345) (0 ms) [ok]: {standalone} SSCAN with PATTERN (1 ms) [ok]: RENAMENX basic usage (1 ms) [ok]: {standalone} HSCAN with PATTERN (0 ms) [ok]: RENAMENX against already existing key (0 ms) [ok]: RENAMENX against already existing key (2) (1 ms) [ok]: {standalone} HSCAN with NOVALUES (1 ms) [ok]: RENAME against non existing source key (0 ms) [ok]: {standalone} ZSCAN with PATTERN (0 ms) [ok]: RENAME where source and dest key are the same (existing) (0 ms) [ok]: RENAMENX where source and dest key are the same (existing) (0 ms) [ok]: RENAME where source and dest key are the same (non existing) (0 ms) [ok]: RENAME with volatile key, should move the TTL as well (2 ms) [ok]: RENAME with volatile key, should not inherit TTL of target key (1 ms) [ok]: DEL all keys again (DB 0) (1 ms) [ok]: DEL all keys again (DB 1) (0 ms) [ok]: COPY basic usage for string (2 ms) [ok]: COPY for string does not replace an existing key without REPLACE option (0 ms) [ok]: COPY for string can replace an existing key with REPLACE option (1 ms) [ok]: COPY for string ensures that copied data is independent of copying data (1 ms) [ok]: COPY for string does not copy data to no-integer DB (0 ms) [ok]: COPY can copy key expire metadata as well (1 ms) [ok]: COPY does not create an expire if it does not exist (1 ms) [ok]: Test LSET with packed / plain combinations (207 ms) [ok]: Test LSET with packed is split in the middle (2 ms) [ok]: HSTRLEN against the big hash (141 ms) [ok]: HSTRLEN against non existing field (0 ms) [ok]: HSTRLEN corner cases (4 ms) [ok]: HINCRBYFLOAT over hash-max-listpack-value encoded with a listpack (3 ms) [ok]: Hash ziplist regression test for large keys (1 ms) [ok]: COPY basic usage for list - quicklist (49 ms) [ok]: COPY basic usage for list - listpack (2 ms) [ok]: COPY basic usage for $type set (2 ms) [ok]: COPY basic usage for $type set (2 ms) [ok]: {standalone} ZSCAN scores: regression test for issue #2175 (77 ms) [ok]: COPY basic usage for $type set (30 ms) [ok]: COPY basic usage for listpack sorted set (1 ms) [ok]: Hash fuzzing #1 - 10 fields (72 ms) [ok]: COPY basic usage for skiplist sorted set (20 ms) [ok]: COPY basic usage for listpack hash (1 ms) [ok]: COPY basic usage for hashtable hash (39 ms) [ok]: Hash fuzzing #2 - 10 fields (48 ms) [ok]: Test LSET with packed consist only one item (208 ms) [ok]: Crash due to delete entry from a compress quicklist node (1 ms) [ok]: Crash due to split quicklist node wrongly (1 ms) [ok]: Test LPUSH and LPOP on plain nodes (3 ms) [ok]: Test LINDEX and LINSERT on plain nodes (1 ms) [ok]: Test LTRIM on plain nodes (1 ms) [ok]: Test LREM on plain nodes (1 ms) [ok]: Test LPOS on plain nodes (1 ms) [ok]: Test LMOVE on plain nodes (2 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - reprocessing command (1090 ms) [ok]: XGROUP DESTROY should unblock XREADGROUP with -NOGROUP (4 ms) [ok]: RENAME can unblock XREADGROUP with data (2 ms) [ok]: RENAME can unblock XREADGROUP with -NOGROUP (1 ms) [ok]: COPY basic usage for stream (208 ms) [ok]: COPY basic usage for stream-cgroups (15 ms) [ok]: MOVE basic usage (0 ms) [ok]: MOVE against key existing in the target DB (0 ms) [ok]: MOVE against non-integer DB (#1428) (0 ms) [ok]: MOVE can move key expire metadata as well (2 ms) [ok]: MOVE does not create an expire if it does not exist (1 ms) [ok]: SET/GET keys in different DBs (1 ms) [ok]: RANDOMKEY (11 ms) [ok]: RANDOMKEY against empty DB (0 ms) [ok]: RANDOMKEY regression 1 (0 ms) [ok]: KEYS * two times with long key, Github issue #1208 (1 ms) [ok]: Regression for pattern matching long nested loops (0 ms) [ok]: Test LSET with packed / plain combinations (219 ms) [ok]: Test LSET with packed is split in the middle (2 ms) [ok]: Regression for pattern matching very long nested loops (106 ms) [ok]: Coverage: basic SWAPDB test and unhappy path (3 ms) [ok]: Coverage: SWAPDB and FLUSHDB (2 ms) [5/91 done]: unit/keyspace (2 seconds) Testing unit/other [ok]: Test LSET with packed consist only one item (208 ms) [ok]: Crash due to delete entry from a compress quicklist node (1 ms) [ok]: Crash due to split quicklist node wrongly (1 ms) [ok]: Coverage: HELP commands (3 ms) [ok]: Coverage: MEMORY MALLOC-STATS (1 ms) [ok]: Coverage: MEMORY PURGE (0 ms) [ok]: SAVE - make sure there are all the types as values (3 ms) [ok]: LPOS basic usage - quicklist (42 ms) [ok]: LPOS RANK (positive, negative and zero rank) option (1 ms) [ok]: LPOS COUNT option (1 ms) [ok]: LPOS COUNT + RANK option (0 ms) [ok]: LPOS non existing key (0 ms) [ok]: LPOS no match (0 ms) [ok]: LPOS MAXLEN (1 ms) [ok]: LPOS when RANK is greater than matches (0 ms) [ok]: XCLAIM can claim PEL items from another consumer (605 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - quicklist (97 ms) [ok]: LPOP/RPOP with wrong number of arguments (0 ms) [ok]: stats: instantaneous metrics (1602 ms) [ok]: RPOP/LPOP with the optional count argument - quicklist (49 ms) [ok]: LPOS basic usage - listpack (0 ms) [ok]: LPOS RANK (positive, negative and zero rank) option (1 ms) [ok]: LPOS COUNT option (1 ms) [ok]: LPOS COUNT + RANK option (0 ms) [ok]: LPOS non existing key (0 ms) [ok]: LPOS no match (1 ms) [ok]: LPOS MAXLEN (0 ms) [ok]: LPOS when RANK is greater than matches (1 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - listpack (2 ms) [ok]: LPOP/RPOP with wrong number of arguments (1 ms) [ok]: RPOP/LPOP with the optional count argument - listpack (0 ms) [ok]: LPOP/RPOP with the count 0 returns an empty array in RESP3 (0 ms) [ok]: LPOP/RPOP against non existing key in RESP3 (1 ms) [ok]: LPOP/RPOP with against non existing key in RESP3 (0 ms) [ok]: LPOP/RPOP with the count 0 returns an empty array in RESP2 (0 ms) [ok]: LPOP/RPOP against non existing key in RESP2 (1 ms) [ok]: LPOP/RPOP with against non existing key in RESP2 (0 ms) [ok]: Variadic RPUSH/LPUSH (0 ms) [ok]: DEL a list (1 ms) [ok]: BLPOP: single existing list - quicklist (47 ms) [ok]: stats: debug metrics (112 ms) [ok]: stats: client input and output buffer limit disconnections (76 ms) [ok]: clients: pubsub clients (3 ms) [ok]: clients: watching clients (9 ms) [ok]: BLPOP: multiple existing lists - quicklist (110 ms) [ok]: BLPOP: second list has an entry - quicklist (50 ms) [ok]: BLMPOP_LEFT: single existing list - quicklist (50 ms) [ok]: XCLAIM without JUSTID increments delivery count (403 ms) [ok]: BLMPOP_LEFT: multiple existing lists - quicklist (110 ms) [ok]: memory: database and pubsub overhead and rehashing dict count (5 ms) [ok]: BLMPOP_LEFT: second list has an entry - quicklist (60 ms) [6/91 done]: unit/info (3 seconds) Testing unit/multi [ok]: XCLAIM same consumer (203 ms) [ok]: BRPOPLPUSH - quicklist (50 ms) [ok]: BLMOVE left left - quicklist (60 ms) [ok]: BLMOVE left right - quicklist (50 ms) [ok]: MULTI / EXEC basics (1 ms) [ok]: DISCARD (1 ms) [ok]: Nested MULTI are not allowed (0 ms) [ok]: MULTI where commands alter argc/argv (1 ms) [ok]: WATCH inside MULTI is not allowed (0 ms) [ok]: EXEC fails if there are errors while queueing commands #1 (1 ms) [ok]: EXEC fails if there are errors while queueing commands #2 (2 ms) [ok]: If EXEC aborts, the client MULTI state is cleared (0 ms) [ok]: EXEC works on WATCHed key not modified (0 ms) [ok]: EXEC fail on WATCHed key modified (1 key of 1 watched) (1 ms) [ok]: EXEC fail on WATCHed key modified (1 key of 5 watched) (0 ms) [ok]: EXEC fail on WATCHed key modified by SORT with STORE even if the result is empty (0 ms) [ok]: FUZZ stresser with data model binary (944 ms) [ok]: BLMOVE right left - quicklist (60 ms) [ok]: EXEC fail on lazy expired WATCHed key (102 ms) [ok]: WATCH stale keys should not fail EXEC (3 ms) [ok]: Delete WATCHed stale keys should not fail EXEC (3 ms) [ok]: BLMOVE right right - quicklist (60 ms) [ok]: BLPOP: single existing list - listpack (2 ms) [ok]: FLUSHDB while watching stale keys should not fail EXEC (3 ms) [ok]: After successful EXEC key is no longer watched (1 ms) [ok]: After failed EXEC key is no longer watched (1 ms) [ok]: BLPOP: multiple existing lists - listpack (2 ms) [ok]: It is possible to UNWATCH (1 ms) [ok]: UNWATCH when there is nothing watched works as expected (0 ms) [ok]: FLUSHALL is able to touch the watched keys (1 ms) [ok]: BLPOP: second list has an entry - listpack (1 ms) [ok]: FLUSHALL does not touch non affected keys (1 ms) [ok]: FLUSHDB is able to touch the watched keys (0 ms) [ok]: FLUSHDB does not touch non affected keys (1 ms) [ok]: BLMPOP_LEFT: single existing list - listpack (2 ms) [ok]: SWAPDB is able to touch the watched keys that exist (1 ms) [ok]: SWAPDB is able to touch the watched keys that do not exist (1 ms) [ok]: BLMPOP_LEFT: multiple existing lists - listpack (3 ms) [ok]: BLMPOP_LEFT: second list has an entry - listpack (2 ms) [ok]: SWAPDB does not touch watched stale keys (3 ms) [ok]: BRPOPLPUSH - listpack (1 ms) [ok]: SWAPDB does not touch non-existing key replaced with stale key (3 ms) [ok]: BLMOVE left left - listpack (1 ms) [ok]: BLMOVE left right - listpack (2 ms) [ok]: SWAPDB does not touch stale key replaced with another stale key (3 ms) [ok]: BLMOVE right left - listpack (2 ms) [ok]: WATCH is able to remember the DB a key belongs to (1 ms) [ok]: WATCH will consider touched keys target of EXPIRE (1 ms) [ok]: BLMOVE right right - listpack (2 ms) [ok]: BLPOP, LPUSH + DEL should not awake blocked client (2 ms) [ok]: BLPOP, LPUSH + DEL + SET should not awake blocked client (2 ms) [ok]: BLMPOP_LEFT, LPUSH + DEL should not awake blocked client (2 ms) [ok]: BLMPOP_LEFT, LPUSH + DEL + SET should not awake blocked client (2 ms) [ok]: BLPOP with same key multiple times should work (issue #801) (2 ms) [ok]: MULTI/EXEC is isolated from the point of view of BLPOP (2 ms) [ok]: BLPOP with variadic LPUSH (1 ms) [ok]: MULTI/EXEC is isolated from the point of view of BLMPOP_LEFT (1 ms) [ok]: BLMPOP_LEFT with variadic LPUSH (1 ms) [ok]: BRPOPLPUSH with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE left left with zero timeout should block indefinitely (2 ms) [ok]: BLMOVE left right with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE right left with zero timeout should block indefinitely (2 ms) [ok]: BLMOVE right right with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE (left, left) with a client BLPOPing the target list (2 ms) [ok]: BLMOVE (left, right) with a client BLPOPing the target list (2 ms) [ok]: BLMOVE (right, left) with a client BLPOPing the target list (2 ms) [ok]: BLMOVE (right, right) with a client BLPOPing the target list (2 ms) [ok]: BRPOPLPUSH with wrong source type (1 ms) [ok]: BRPOPLPUSH with wrong destination type (2 ms) [ok]: BRPOPLPUSH maintains order of elements after failure (2 ms) [ok]: BRPOPLPUSH with multiple blocked clients (2 ms) [ok]: BLMPOP with multiple blocked clients (4 ms) [ok]: Linked LMOVEs (2 ms) [ok]: Circular BRPOPLPUSH (1 ms) [ok]: Self-referential BRPOPLPUSH (1 ms) [ok]: BRPOPLPUSH inside a transaction (1 ms) [ok]: PUSH resulting from BRPOPLPUSH affect WATCH (2 ms) [ok]: BRPOPLPUSH does not affect WATCH while still blocked (2 ms) [ok]: EXPIRE - After 2.1 seconds the key should no longer be here (2101 ms) [ok]: EXPIRE - write on expire should work (1 ms) [ok]: EXPIREAT - Check for EXPIRE alike behavior (1 ms) [ok]: SETEX - Set + Expire combo operation. Check for TTL (0 ms) [ok]: SETEX - Check value (0 ms) [ok]: SETEX - Overwrite old key (0 ms) [ok]: XADD mass insertion and XLEN (2378 ms) [ok]: XADD with ID 0-0 (0 ms) [ok]: XADD with LIMIT delete entries no more than limit (1 ms) [ok]: XRANGE COUNT works as expected (1 ms) [ok]: XREVRANGE COUNT works as expected (1 ms) [ok]: XAUTOCLAIM can claim PEL items from another consumer (604 ms) [ok]: Hash fuzzing #1 - 512 fields (2115 ms) [ok]: XAUTOCLAIM as an iterator (202 ms) [ok]: XAUTOCLAIM COUNT must be > 0 (0 ms) [ok]: XCLAIM with XDEL (1 ms) [ok]: XCLAIM with trimming (2 ms) [ok]: XAUTOCLAIM with XDEL (1 ms) [ok]: XAUTOCLAIM with XDEL and count (2 ms) [ok]: XAUTOCLAIM with out of range count (0 ms) [ok]: XCLAIM with trimming (1 ms) [ok]: XINFO FULL output (6 ms) [ok]: Consumer seen-time and active-time (207 ms) [ok]: XGROUP CREATECONSUMER: create consumer if does not exist (3 ms) [ok]: XGROUP CREATECONSUMER: group must exist (0 ms) [ok]: XREADGROUP with NOACK creates consumer (4 ms) [ok]: FUZZ stresser with data model alpha (1039 ms) [ok]: XRANGE can be used to iterate the whole stream (733 ms) [ok]: Big Quicklist: SORT BY key (515 ms) [ok]: Big Quicklist: SORT BY key with limit (11 ms) [ok]: Consumer without PEL is present in AOF after AOFRW (106 ms) [ok]: BRPOPLPUSH timeout (1020 ms) [ok]: SWAPDB awakes blocked client (1 ms) [ok]: WATCH will consider touched expired keys (1105 ms) [ok]: DISCARD should clear the WATCH dirty flag on the client (1 ms) [ok]: DISCARD should UNWATCH all the keys (1 ms) [ok]: Consumer group read counter and lag in empty streams (3 ms) [ok]: Consumer group read counter and lag sanity (10 ms) [ok]: Consumer group lag with XDELs (19 ms) [ok]: Loading from legacy (Redict <= v6.2.x, rdb_ver < 10) persistence (3 ms) [ok]: Loading from legacy (Redict <= v7.0.x, rdb_ver < 11) persistence (1 ms) [ok]: MULTI / EXEC is not propagated (single write command) (52 ms) [ok]: SETEX - Wait for the key to expire (1100 ms) [ok]: SETEX - Wrong time parameter (0 ms) [ok]: PERSIST can undo an EXPIRE (1 ms) [ok]: PERSIST returns 0 against non existing or non volatile keys (1 ms) [ok]: MULTI / EXEC is propagated correctly (multiple commands) (101 ms) [ok]: SWAPDB wants to wake blocked client, but the key already expired (198 ms) [ok]: MULTI / EXEC is propagated correctly (multiple commands with SELECT) (101 ms) [ok]: Consumer group last ID propagation to slave (NOACK=0) (105 ms) [ok]: MULTI / EXEC is propagated correctly (empty transaction) (99 ms) [ok]: Consumer group last ID propagation to slave (NOACK=1) (103 ms) [ok]: Big Quicklist: SORT BY hash field (531 ms) [ok]: Intset: SORT BY key (1 ms) [ok]: Intset: SORT BY key with limit (0 ms) [ok]: Intset: SORT BY hash field (0 ms) [ok]: MULTI / EXEC is propagated correctly (read-only commands) (101 ms) [ok]: MULTI + LPUSH + EXPIRE + DEBUG SLEEP on blocked client, key already expired (300 ms) [ok]: MULTI / EXEC is propagated correctly (write command, no effect) (101 ms) [ok]: MULTI / EXEC with REPLICAOF (101 ms) [ok]: DISCARD should not fail during OOM (1 ms) [ok]: Replication tests of XCLAIM with deleted entries (autoclaim=0) (106 ms) [ok]: Replication tests of XCLAIM with deleted entries (autoclaim=1) (4 ms) [ok]: XREADGROUP ACK would propagate entries-read (3 ms) [ok]: Hash fuzzing #2 - 512 fields (1303 ms) [ok]: Hash table: SORT BY key (18 ms) [ok]: Hash table: SORT BY key with limit (2 ms) [ok]: Hash table: SORT BY hash field (19 ms) [ok]: FUZZ stresser with data model compr (1060 ms) [ok]: FLUSHALL should not reset the dirty counter if we disable save (1 ms) [ok]: FLUSHALL should reset the dirty counter to 0 if we enable save (1 ms) [ok]: Empty stream with no lastid can be rewrite into AOF correctly (105 ms) [ok]: MULTI and script timeout (405 ms) [ok]: BGSAVE (54 ms) [ok]: SELECT an out of range DB (0 ms) [7/91 done]: unit/type/stream-cgroups (5 seconds) Testing unit/quit [ok]: EXPIRE precision is now the millisecond (1103 ms) [ok]: PSETEX can set sub-second expires (102 ms) [ok]: QUIT returns OK (0 ms) [ok]: Pipelined commands after QUIT must not be executed (1 ms) [ok]: Pipelined commands after QUIT that exceed read buffer size (1 ms) [ok]: Very big payload random access (5157 ms) [ok]: PEXPIRE can set sub-second expires (102 ms) [8/91 done]: unit/quit (0 seconds) Testing unit/aofrw [ok]: EXEC and script timeout (405 ms) [ok]: BLPOP unblock but the key is expired and then block again - reprocessing command (1004 ms) [ok]: BLPOP when new key is moved into place (2 ms) [ok]: BLPOP when result key is created by SORT..STORE (2 ms) [ok]: BLMPOP_LEFT when new key is moved into place (1 ms) [ok]: BLMPOP_LEFT when result key is created by SORT..STORE (1 ms) [ok]: BLPOP: timeout value out of range (1 ms) [ok]: BLPOP: with single empty list argument (1 ms) [ok]: BLPOP: with negative timeout (0 ms) [ok]: BLPOP: with non-integer timeout (2 ms) [ok]: BLPOP: with zero timeout should block indefinitely (1 ms) [ok]: BLPOP: with 0.001 timeout should not block indefinitely (22 ms) [ok]: BLPOP: second argument is not a list (1 ms) [ok]: PEXPIREAT can set sub-second expires (202 ms) [ok]: TTL returns time to live in seconds (1 ms) [ok]: PTTL returns time to live in milliseconds (0 ms) [ok]: TTL / PTTL / EXPIRETIME / PEXPIRETIME return -1 if key has no expire (1 ms) [ok]: TTL / PTTL / EXPIRETIME / PEXPIRETIME return -2 if key does not exit (1 ms) [ok]: EXPIRETIME returns absolute expiration time in seconds (1 ms) [ok]: PEXPIRETIME returns absolute expiration time in milliseconds (0 ms) [ok]: MULTI-EXEC body and script timeout (406 ms) [ok]: ZDIFF fuzzing - listpack (5838 ms) [ok]: ZPOPMIN with the count 0 returns an empty array (1 ms) [ok]: ZPOPMIN with negative count (1 ms) [ok]: ZPOPMAX with the count 0 returns an empty array (0 ms) [ok]: ZPOPMAX with negative count (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX with a single key - listpack (2 ms) [ok]: ZPOPMIN/ZPOPMAX with count - listpack (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - listpack (2 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - listpack (2 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - listpack (2 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - listpack (2 ms) [ok]: BZPOPMIN/BZPOPMAX second sorted set has members - listpack (2 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with a single existing sorted set - listpack (2 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with multiple existing sorted sets - listpack (2 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX second sorted set has members - listpack (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX - listpack RESP3 (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - listpack RESP3 (2 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX - listpack RESP3 (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - listpack RESP3 (2 ms) [ok]: BZPOPMIN/BZPOPMAX - listpack RESP3 (2 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX - listpack RESP3 (3 ms) [ok]: Check encoding - skiplist (1 ms) [ok]: ZSET basic ZADD and score update - skiplist (1 ms) [ok]: ZSET element can't be set to NaN with ZADD - skiplist (0 ms) [ok]: ZSET element can't be set to NaN with ZINCRBY - skiplist (0 ms) [ok]: ZADD with options syntax error with incomplete pair - skiplist (0 ms) [ok]: ZADD XX option without key - skiplist (0 ms) [ok]: ZADD XX existing key - skiplist (0 ms) [ok]: ZADD XX returns the number of elements actually added - skiplist (1 ms) [ok]: ZADD XX updates existing elements score - skiplist (1 ms) [ok]: ZADD GT updates existing elements when new scores are greater - skiplist (0 ms) [ok]: ZADD LT updates existing elements when new scores are lower - skiplist (0 ms) [ok]: ZADD GT XX updates existing elements when new scores are greater and skips new elements - skiplist (1 ms) [ok]: ZADD LT XX updates existing elements when new scores are lower and skips new elements - skiplist (1 ms) [ok]: ZADD XX and NX are not compatible - skiplist (0 ms) [ok]: ZADD NX with non existing key - skiplist (0 ms) [ok]: ZADD NX only add new elements without updating old ones - skiplist (1 ms) [ok]: ZADD GT and NX are not compatible - skiplist (0 ms) [ok]: ZADD LT and NX are not compatible - skiplist (0 ms) [ok]: ZADD LT and GT are not compatible - skiplist (1 ms) [ok]: ZADD INCR LT/GT replies with nill if score not updated - skiplist (0 ms) [ok]: ZADD INCR LT/GT with inf - skiplist (2 ms) [ok]: ZADD INCR works like ZINCRBY - skiplist (0 ms) [ok]: ZADD INCR works with a single score-elemenet pair - skiplist (1 ms) [ok]: ZADD CH option changes return value to all changed elements - skiplist (0 ms) [ok]: ZINCRBY calls leading to NaN result in error - skiplist (0 ms) [ok]: ZINCRBY against invalid incr value - skiplist (0 ms) [ok]: ZADD - Variadic version base case - skiplist (0 ms) [ok]: ZADD - Return value is the number of actually added items - skiplist (0 ms) [ok]: ZADD - Variadic version does not add nothing on single parsing err - skiplist (0 ms) [ok]: ZADD - Variadic version will raise error on missing arg - skiplist (1 ms) [ok]: ZINCRBY does not work variadic even if shares ZADD implementation - skiplist (0 ms) [ok]: ZCARD basics - skiplist (1 ms) [ok]: ZREM removes key after last element is removed - skiplist (0 ms) [ok]: ZREM variadic version - skiplist (1 ms) [ok]: ZREM variadic version -- remove elements after key deletion - skiplist (0 ms) [ok]: ZRANGE basics - skiplist (2 ms) [ok]: ZREVRANGE basics - skiplist (3 ms) [ok]: ZRANK/ZREVRANK basics - skiplist (2 ms) [ok]: ZRANK - after deletion - skiplist (1 ms) [ok]: ZINCRBY - can create a new sorted set - skiplist (0 ms) [ok]: ZINCRBY - increment and decrement - skiplist (1 ms) [ok]: ZINCRBY return value - skiplist (1 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - skiplist (5 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - skiplist (1 ms) [ok]: ZRANGEBYSCORE with LIMIT - skiplist (7 ms) [ok]: ZRANGEBYSCORE with LIMIT and WITHSCORES - skiplist (1 ms) [ok]: ZRANGEBYSCORE with non-value min or max - skiplist (1 ms) [ok]: ZRANGEBYLEX/ZREVRANGEBYLEX/ZLEXCOUNT basics - skiplist (3 ms) [ok]: XREVRANGE returns the reverse of XRANGE (2226 ms) [ok]: ZLEXCOUNT advanced - skiplist (2 ms) [ok]: XRANGE exclusive ranges (5 ms) [ok]: XREAD with non empty stream (0 ms) [ok]: Non blocking XREAD with empty streams (0 ms) [ok]: ZRANGEBYLEX with LIMIT - skiplist (6 ms) [ok]: ZRANGEBYLEX with invalid lex range specifiers - skiplist (1 ms) [ok]: ZREMRANGEBYSCORE basics - skiplist (13 ms) [ok]: ZREMRANGEBYSCORE with non-value min or max - skiplist (0 ms) [ok]: ZREMRANGEBYRANK basics - skiplist (6 ms) [ok]: ZREMRANGEBYLEX basics - skiplist (16 ms) [ok]: ZUNIONSTORE against non-existing key doesn't set destination - skiplist (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF against non-existing key - skiplist (1 ms) [ok]: ZUNIONSTORE with empty set - skiplist (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with empty set - skiplist (1 ms) [ok]: ZUNIONSTORE basics - skiplist (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with integer members - skiplist (1 ms) [ok]: ZUNIONSTORE with weights - skiplist (1 ms) [ok]: ZUNION with weights - skiplist (0 ms) [ok]: ZUNIONSTORE with a regular set and weights - skiplist (1 ms) [ok]: ZUNIONSTORE with AGGREGATE MIN - skiplist (0 ms) [ok]: ZUNION/ZINTER with AGGREGATE MIN - skiplist (0 ms) [ok]: ZUNIONSTORE with AGGREGATE MAX - skiplist (0 ms) [ok]: ZUNION/ZINTER with AGGREGATE MAX - skiplist (1 ms) [ok]: ZINTERSTORE basics - skiplist (0 ms) [ok]: ZINTER basics - skiplist (1 ms) [ok]: ZINTERCARD with illegal arguments (0 ms) [ok]: ZINTERCARD basics - skiplist (1 ms) [ok]: ZINTER RESP3 - skiplist (1 ms) [ok]: ZINTERSTORE with weights - skiplist (0 ms) [ok]: ZINTER with weights - skiplist (0 ms) [ok]: ZINTERSTORE with a regular set and weights - skiplist (1 ms) [ok]: ZINTERSTORE with AGGREGATE MIN - skiplist (0 ms) [ok]: ZINTERSTORE with AGGREGATE MAX - skiplist (0 ms) [ok]: ZUNIONSTORE with +inf/-inf scores - skiplist (2 ms) [ok]: ZUNIONSTORE with NaN weights - skiplist (0 ms) [ok]: ZINTERSTORE with +inf/-inf scores - skiplist (2 ms) [ok]: ZINTERSTORE with NaN weights - skiplist (1 ms) [ok]: ZDIFFSTORE basics - skiplist (0 ms) [ok]: ZDIFF basics - skiplist (0 ms) [ok]: ZDIFFSTORE with a regular set - skiplist (0 ms) [ok]: ZDIFF subtracting set from itself - skiplist (1 ms) [ok]: ZDIFF algorithm 1 - skiplist (1 ms) [ok]: ZDIFF algorithm 2 - skiplist (1 ms) [ok]: Redict should actively expire keys incrementally (704 ms) [ok]: just EXEC and script timeout (404 ms) [ok]: exec with write commands and state change (1 ms) [ok]: SDIFF fuzzing (5761 ms) [ok]: SDIFF against non-set should throw error (1 ms) [ok]: SDIFF should handle non existing key as empty (1 ms) [ok]: SDIFFSTORE against non-set should throw error (2 ms) [ok]: SDIFFSTORE should handle non existing key as empty (2 ms) [ok]: SINTER against non-set should throw error (1 ms) [ok]: SINTER should handle non existing key as empty (1 ms) [ok]: SINTER with same integer elements but different encoding (1 ms) [ok]: SINTERSTORE against non-set should throw error (2 ms) [ok]: SINTERSTORE against non existing keys should delete dstkey (1 ms) [ok]: SUNION against non-set should throw error (1 ms) [ok]: SUNION should handle non existing key as empty (0 ms) [ok]: SUNIONSTORE against non-set should throw error (2 ms) [ok]: SUNIONSTORE should handle non existing key as empty (2 ms) [ok]: SUNIONSTORE against non existing keys should delete dstkey (0 ms) [ok]: SPOP basics - listpack (1 ms) [ok]: SPOP with =1 - listpack (1 ms) [ok]: SRANDMEMBER - listpack (12 ms) [ok]: SPOP basics - intset (1 ms) [ok]: SPOP with =1 - intset (1 ms) [ok]: BLPOP: timeout (1066 ms) [ok]: SRANDMEMBER - intset (12 ms) [ok]: BLPOP: arguments are empty (3 ms) [ok]: BRPOP: with single empty list argument (1 ms) [ok]: SPOP integer from listpack set (1 ms) [ok]: BRPOP: with negative timeout (1 ms) [ok]: BRPOP: with non-integer timeout (1 ms) [ok]: BRPOP: with zero timeout should block indefinitely (1 ms) [ok]: SPOP with - listpack (4 ms) [ok]: SPOP with - intset (4 ms) [ok]: SPOP with - hashtable (5 ms) [ok]: SPOP using integers, testing Knuth's and Floyd's algorithm (4 ms) [ok]: SPOP using integers with Knuth's algorithm (0 ms) [ok]: SPOP new implementation: code path #1 intset (4 ms) [ok]: SPOP new implementation: code path #2 intset (3 ms) [ok]: BRPOP: with 0.001 timeout should not block indefinitely (22 ms) [ok]: BRPOP: second argument is not a list (1 ms) [ok]: SPOP new implementation: code path #3 intset (3 ms) [ok]: SPOP new implementation: code path #1 listpack (3 ms) [ok]: SPOP new implementation: code path #2 listpack (3 ms) [ok]: SPOP new implementation: code path #3 listpack (3 ms) [ok]: Check consistency of different data types after a reload (1520 ms) [ok]: SPOP new implementation: code path #1 propagate as DEL or UNLINK (106 ms) [ok]: SRANDMEMBER count of 0 is handled correctly (0 ms) [ok]: SRANDMEMBER with against non existing key (0 ms) [ok]: SRANDMEMBER count overflow (1 ms) [ok]: SRANDMEMBER count of 0 is handled correctly - emptyarray (0 ms) [ok]: SRANDMEMBER with against non existing key - emptyarray (0 ms) [ok]: SRANDMEMBER with - listpack (48 ms) [ok]: SRANDMEMBER with - intset (41 ms) [ok]: SRANDMEMBER with - hashtable (39 ms) [ok]: Stress test the hash ziplist -> hashtable encoding conversion (2187 ms) [ok]: SRANDMEMBER histogram distribution - listpack (139 ms) [ok]: Hash ziplist of various encodings (105 ms) [ok]: Hash ziplist of various encodings - sanitize dump (4 ms) [ok]: HINCRBYFLOAT does not allow NaN or Infinity (0 ms) [ok]: Same dataset digest if saving/reloading as AOF? (338 ms) [9/91 done]: unit/type/hash (7 seconds) Testing unit/acl [ok]: EXPIRES after a reload (snapshot + append only file rewrite) (54 ms) [ok]: SRANDMEMBER histogram distribution - intset (147 ms) [ok]: Connections start with the default user (0 ms) [ok]: It is possible to create new users (0 ms) [ok]: Coverage: ACL USERS (0 ms) [ok]: Usernames can not contain spaces or null characters (0 ms) [ok]: New users start disabled (0 ms) [ok]: Enabling the user allows the login (0 ms) [ok]: Only the set of correct passwords work (1 ms) [ok]: It is possible to remove passwords from the set of valid ones (0 ms) [ok]: Test password hashes can be added (1 ms) [ok]: Test password hashes validate input (0 ms) [ok]: ACL GETUSER returns the password hash instead of the actual password (0 ms) [ok]: Test hashed passwords removal (0 ms) [ok]: By default users are not able to access any command (0 ms) [ok]: By default users are not able to access any key (1 ms) [ok]: It's possible to allow the access of a subset of keys (0 ms) [ok]: By default, only default user is able to publish to any channel (1 ms) [ok]: By default, only default user is not able to publish to any shard channel (0 ms) [ok]: By default, only default user is able to subscribe to any channel (1 ms) [ok]: By default, only default user is able to subscribe to any shard channel (1 ms) [ok]: By default, only default user is able to subscribe to any pattern (1 ms) [ok]: It's possible to allow publishing to a subset of channels (0 ms) [ok]: It's possible to allow publishing to a subset of shard channels (1 ms) [ok]: Validate subset of channels is prefixed with resetchannels flag (1 ms) [ok]: In transaction queue publish/subscribe/psubscribe to unauthorized channel will fail (2 ms) [ok]: It's possible to allow subscribing to a subset of channels (0 ms) [ok]: It's possible to allow subscribing to a subset of shard channels (0 ms) [ok]: It's possible to allow subscribing to a subset of channel patterns (1 ms) [ok]: Subscribers are killed when revoked of channel permission (2 ms) [ok]: Subscribers are killed when revoked of channel permission (1 ms) [ok]: Subscribers are killed when revoked of pattern permission (1 ms) [ok]: Subscribers are killed when revoked of allchannels permission (1 ms) [ok]: Subscribers are pardoned if literal permissions are retained and/or gaining allchannels (2 ms) [ok]: blocked command gets rejected when reprocessed after permission change (2 ms) [ok]: Users can be configured to authenticate with any password (1 ms) [ok]: ACLs can exclude single commands (0 ms) [ok]: ACLs can include or exclude whole classes of commands (1 ms) [ok]: ACLs can include single subcommands (1 ms) [ok]: ACLs can exclude single subcommands, case 1 (1 ms) [ok]: ACLs can exclude single subcommands, case 2 (1 ms) [ok]: ACLs cannot include a subcommand with a specific arg (0 ms) [ok]: ACLs cannot exclude or include a container commands with a specific arg (1 ms) [ok]: ACLs cannot exclude or include a container command with two args (1 ms) [ok]: ACLs including of a type includes also subcommands (1 ms) [ok]: ACLs can block SELECT of all but a specific DB (1 ms) [ok]: ACLs can block all DEBUG subcommands except one (1 ms) [ok]: ACLs set can include subcommands, if already full command exists (2 ms) [ok]: ACLs set can exclude subcommands, if already full command exists (5 ms) [ok]: ACL SETUSER RESET reverting to default newly created user (2 ms) [ok]: ACL GETUSER is able to translate back command permissions (1 ms) [ok]: ACL GETUSER provides reasonable results (26 ms) [ok]: ACL GETUSER provides correct results (8 ms) [ok]: ACL CAT with illegal arguments (0 ms) [ok]: ACL CAT without category - list all categories (1 ms) [ok]: ACL CAT category - list all commands/subcommands that belong to category (2 ms) [ok]: ACL requires explicit permission for scripting for EVAL_RO, EVALSHA_RO and FCALL_RO (1 ms) [ok]: ACL #5998 regression: memory leaks adding / removing subcommands (1 ms) [ok]: ACL LOG aggregates similar errors together and assigns unique entry-id to new errors (8 ms) [ok]: ACL LOG shows failed command executions at toplevel (2 ms) [ok]: ACL LOG shows failed subcommand executions at toplevel (1 ms) [ok]: ACL LOG is able to test similar events (2 ms) [ok]: ACL LOG is able to log keys access violations and key name (2 ms) [ok]: ACL LOG is able to log channel access violations and channel name (1 ms) [ok]: ACL LOG RESET is able to flush the entries in the log (0 ms) [ok]: ACL LOG can distinguish the transaction context (1) (1 ms) [ok]: ACL LOG can distinguish the transaction context (2) (3 ms) [ok]: ACL can log errors in the context of Lua scripting (1 ms) [ok]: SET 10000 numeric keys and access all them in reverse order (1978 ms) [ok]: DBSIZE should be 10000 now (0 ms) [ok]: SETNX target key missing (1 ms) [ok]: SETNX target key exists (0 ms) [ok]: SETNX against not-expired volatile key (1 ms) [ok]: ACL LOG can accept a numerical argument to show less entries (4 ms) [ok]: ACL LOG can log failed auth attempts (2 ms) [ok]: ACLLOG - zero max length is correctly handled (2 ms) [ok]: ACL LOG entries are limited to a maximum amount (5 ms) [ok]: ACL LOG entries are still present on update of max len config (2 ms) [ok]: When default user is off, new connections are not authenticated (1 ms) [ok]: When default user has no command permission, hello command still works for other users (1 ms) [ok]: When an authentication chain is used in the HELLO cmd, the last auth cmd has precedence (1 ms) [ok]: Redict should lazy expire keys (1003 ms) [ok]: When a setname chain is used in the HELLO cmd, the last setname cmd has precedence (1 ms) [ok]: When authentication fails in the HELLO cmd, the client setname should not be applied (1 ms) [ok]: ACL HELP should not have unexpected options (0 ms) [ok]: Delete a user that the client doesn't use (0 ms) [ok]: Delete a user that the client is using (0 ms) [ok]: ACL GENPASS command failed test (1 ms) [ok]: Default user can not be removed (0 ms) [ok]: ACL load non-existing configured ACL file (0 ms) [ok]: ACL-Metrics user AUTH failure (6 ms) [ok]: SRANDMEMBER histogram distribution - hashtable (150 ms) [ok]: ACL-Metrics invalid command accesses (3 ms) [ok]: ACL-Metrics invalid key accesses (4 ms) [ok]: ACL-Metrics invalid channels accesses (3 ms) [ok]: default: load from include file, can access any channels (1 ms) [ok]: default: with config acl-pubsub-default allchannels after reset, can access any channels (1 ms) [ok]: default: with config acl-pubsub-default resetchannels after reset, can not access any channels (2 ms) [ok]: Alice: can execute all command (0 ms) [ok]: Bob: just execute @set and acl command (1 ms) [ok]: ACL LOAD only disconnects affected clients (2 ms) [ok]: ACL LOAD disconnects clients of deleted users (2 ms) [ok]: ACL load and save (2 ms) [ok]: ACL load and save with restricted channels (2 ms) [ok]: XREAD with non empty second stream (1506 ms) [ok]: Blocking XREAD waiting new data (2 ms) [ok]: Blocking XREAD waiting old data (1 ms) [ok]: Blocking XREAD will not reply with an empty array (34 ms) [ok]: BRPOP: timeout (1071 ms) [ok]: BRPOP: arguments are empty (2 ms) [ok]: BLMPOP_LEFT: with single empty list argument (1 ms) [ok]: BLMPOP_LEFT: with negative timeout (1 ms) [ok]: BLMPOP_LEFT: with non-integer timeout (1 ms) [ok]: BLMPOP_LEFT: with zero timeout should block indefinitely (1 ms) [ok]: Default user has access to all channels irrespective of flag (1 ms) [ok]: Update acl-pubsub-default, existing users shouldn't get affected (2 ms) [ok]: Single channel is valid (0 ms) [ok]: Blocking XREAD for stream that ran dry (issue #5299) (101 ms) [ok]: Single channel is not valid with allchannels (0 ms) [ok]: XREAD last element from non-empty stream (1 ms) [ok]: BLMPOP_LEFT: with 0.001 timeout should not block indefinitely (22 ms) [ok]: XREAD last element from empty stream (1 ms) [ok]: BLMPOP_LEFT: second argument is not a list (0 ms) [ok]: XREAD last element blocking from empty stream (2 ms) [ok]: XREAD last element blocking from non-empty stream (1 ms) [ok]: XREAD last element from multiple streams (2 ms) [ok]: XREAD last element with count > 1 (0 ms) [ok]: XREAD: XADD + DEL should not awake client (1 ms) [ok]: XREAD: XADD + DEL + LPUSH should not awake client (2 ms) [ok]: XREAD with same stream name multiple times should work (2 ms) [ok]: XREAD + multiple XADD inside transaction (3 ms) [ok]: XDEL basic test (1 ms) [ok]: XDEL multiply id test (2 ms) [ok]: Only default user has access to all channels irrespective of flag (1 ms) [ok]: default: load from config file, without channel permission default user can't access any channels (0 ms) [ok]: EXPIRE should not resurrect keys (issue #1026) (1002 ms) [ok]: 5 keys in, 5 keys out (1 ms) [ok]: EXPIRE with empty string as TTL should report an error (1 ms) [ok]: SET with EX with big integer should report an error (0 ms) [ok]: SET with EX with smallest integer should report an error (0 ms) [ok]: GETEX with big integer should report an error (1 ms) [ok]: GETEX with smallest integer should report an error (0 ms) [ok]: EXPIRE with big integer overflows when converted to milliseconds (2 ms) [ok]: PEXPIRE with big integer overflow when basetime is added (0 ms) [ok]: EXPIRE with big negative integer (1 ms) [ok]: PEXPIREAT with big integer works (0 ms) [ok]: PEXPIREAT with big negative integer works (1 ms) [ok]: Big Hash table: SORT BY key (566 ms) [ok]: default: load from config file with all channels permissions (1 ms) [ok]: Big Hash table: SORT BY key with limit (22 ms) [ok]: Test loading an ACL file with duplicate users (3 ms) [ok]: Test loading an ACL file with duplicate default user (3 ms) [ok]: Test loading duplicate users in config on startup (12 ms) [ok]: BLMPOP_LEFT: timeout (1074 ms) [ok]: BLMPOP_LEFT: arguments are empty (3 ms) [ok]: BLMPOP_RIGHT: with single empty list argument (1 ms) [ok]: BLMPOP_RIGHT: with negative timeout (1 ms) [ok]: exec with read commands and stale replica state change (2504 ms) [ok]: BLMPOP_RIGHT: with non-integer timeout (1 ms) [ok]: EXEC with only read commands should not be rejected when OOM (1 ms) [ok]: BLMPOP_RIGHT: with zero timeout should block indefinitely (1 ms) [ok]: EXEC with at least one use-memory command should fail (1 ms) [ok]: Blocking commands ignores the timeout (1 ms) [ok]: BLMPOP_RIGHT: with 0.001 timeout should not block indefinitely (21 ms) [ok]: BLMPOP_RIGHT: second argument is not a list (0 ms) [ok]: MULTI propagation of PUBLISH (97 ms) [ok]: MULTI propagation of SCRIPT LOAD (101 ms) [ok]: Big Hash table: SORT BY hash field (632 ms) [ok]: ACL from config file and config rewrite (206 ms) [ok]: SORT GET # (0 ms) [ok]: SORT GET (1 ms) [ok]: SORT_RO GET (0 ms) [ok]: SORT GET (key and hash) with sanity check (5 ms) [ok]: SORT BY key STORE (1 ms) [ok]: SORT BY hash field STORE (1 ms) [ok]: SORT extracts STORE correctly (0 ms) [ok]: SORT_RO get keys (1 ms) [ok]: SORT extracts multiple STORE correctly (0 ms) [ok]: SORT DESC (0 ms) [ok]: SORT ALPHA against integer encoded strings (1 ms) [ok]: SORT sorted set (1 ms) [ok]: SORT sorted set BY nosort should retain ordering (1 ms) [ok]: SORT sorted set BY nosort + LIMIT (2 ms) [ok]: SORT sorted set BY nosort works as expected from scripts (1 ms) [10/91 done]: unit/acl (2 seconds) Testing unit/acl-v2 [ok]: SORT sorted set: +inf and -inf handling (1 ms) [ok]: SORT regression for issue #19, sorting floats (13 ms) [ok]: SORT with STORE returns zero if result is empty (github issue 224) (1 ms) [ok]: SORT with STORE does not create empty lists (github issue 224) (0 ms) [ok]: SORT with STORE removes key if result is empty (github issue 227) (1 ms) [ok]: SORT with BY and STORE should still order output (1 ms) [ok]: SORT will complain with numerical sorting and bad doubles (1) (0 ms) [ok]: SORT will complain with numerical sorting and bad doubles (2) (1 ms) [ok]: SORT BY sub-sorts lexicographically if score is the same (1 ms) [ok]: SORT GET with pattern ending with just -> does not get hash field (0 ms) [ok]: SORT by nosort retains native order for lists (1 ms) [ok]: SORT by nosort plus store retains native order for lists (0 ms) [ok]: SORT by nosort with limit returns based on original list order (0 ms) [ok]: SORT_RO - Successful case (0 ms) [ok]: SORT_RO - Cannot run with STORE arg (1 ms) [ok]: MULTI propagation of EVAL (100 ms) [ok]: SORT speed, 100 element list BY key, 100 times (42 ms) [ok]: Test basic multiple selectors (1 ms) [ok]: Test ACL selectors by default have no permissions (1 ms) [ok]: Test deleting selectors (1 ms) [ok]: Test selector syntax error reports the error in the selector context (1 ms) [ok]: Test flexible selector definition (3 ms) [ok]: Test separate read permission (1 ms) [ok]: Test separate write permission (0 ms) [ok]: Test separate read and write permissions (1 ms) [ok]: Validate read and write permissions format (1 ms) [ok]: Validate key permissions format - empty and omitted pattern (1 ms) [ok]: Test separate read and write permissions on different selectors are not additive (2 ms) [ok]: Test SET with separate read permission (1 ms) [ok]: Test SET with separate write permission (1 ms) [ok]: Test SET with read and write permissions (2 ms) [ok]: Test BITFIELD with separate read permission (1 ms) [ok]: Test BITFIELD with separate write permission (1 ms) [ok]: SORT speed, 100 element list BY hash field, 100 times (45 ms) [ok]: Test BITFIELD with read and write permissions (1 ms) [ok]: EXPIRES after AOF reload (without rewrite) (2106 ms) [ok]: Test ACL log correctly identifies the relevant item when selectors are used (3 ms) [ok]: Test ACL GETUSER response information (0 ms) [ok]: Test ACL list idempotency (1 ms) [ok]: Test R+W is the same as all permissions (1 ms) [ok]: Test basic dry run functionality (0 ms) [ok]: Test various commands for command permissions (1 ms) [ok]: Test various odd commands for key permissions (4 ms) [ok]: Existence test commands are not marked as access (1 ms) [ok]: Intersection cardinaltiy commands are access commands (1 ms) [ok]: Test general keyspace commands require some type of permission to execute (2 ms) [ok]: Cardinality commands require some type of permission to execute (3 ms) [ok]: Test sharded channel permissions (1 ms) [ok]: Test sort with ACL permissions (2 ms) [ok]: Test DRYRUN with wrong number of arguments (1 ms) [ok]: MULTI propagation of SCRIPT FLUSH (101 ms) [ok]: SORT speed, 100 element list directly, 100 times (43 ms) [ok]: SORT speed, 100 element list BY , 100 times (39 ms) [ok]: SETRANGE with huge offset (6 ms) [ok]: MULTI propagation of XREADGROUP (101 ms) [ok]: MULTI with SAVE (0 ms) [ok]: MULTI with SHUTDOWN (1 ms) [ok]: SORT STORE quicklist with the right options (66 ms) [ok]: Test behavior of loading ACLs (1 ms) [11/91 done]: unit/acl-v2 (0 seconds) Testing unit/latency-monitor [ok]: MULTI with BGREWRITEAOF (204 ms) [ok]: LATENCY HISTOGRAM with empty histogram (0 ms) [ok]: LATENCY HISTOGRAM all commands (0 ms) [ok]: LATENCY HISTOGRAM sub commands (1 ms) [ok]: LATENCY HISTOGRAM with a subset of commands (1 ms) [ok]: LATENCY HISTOGRAM command (1 ms) [ok]: LATENCY HISTOGRAM with wrong command name skips the invalid one (1 ms) [ok]: MULTI with config set appendonly (206 ms) [ok]: MULTI with config error (1 ms) [ok]: Flushall while watching several keys by one client (0 ms) [ok]: BLMPOP_RIGHT: timeout (1071 ms) [ok]: BLMPOP_RIGHT: arguments are empty (2 ms) [ok]: BLPOP inside a transaction (1 ms) [ok]: BLMPOP_LEFT inside a transaction (1 ms) [ok]: MULTI with FLUSHALL and AOF (2 ms) [12/91 done]: unit/multi (7 seconds) Testing integration/block-repl [ok]: BLMPOP propagate as pop with count command to replica (198 ms) [ok]: LPUSHX, RPUSHX - generic (1 ms) [ok]: LPUSHX, RPUSHX - quicklist (50 ms) [ok]: For unauthenticated clients output buffer is limited (9933 ms) [ok]: LINSERT - quicklist (61 ms) [ok]: LPUSHX, RPUSHX - listpack (1 ms) [ok]: LINSERT - listpack (3 ms) [ok]: LINSERT raise error on bad syntax (0 ms) [ok]: LINSERT against non-list value error (0 ms) [ok]: LINSERT against non existing key (1 ms) [ok]: LINDEX consistency test - listpack (80 ms) [ok]: SETNX against expired volatile key (3061 ms) [ok]: GETEX EX option (0 ms) [ok]: GETEX PX option (1 ms) [ok]: GETEX EXAT option (0 ms) [ok]: GETEX PXAT option (1 ms) [ok]: GETEX PERSIST option (0 ms) [ok]: GETEX no option (1 ms) [ok]: GETEX syntax errors (0 ms) [ok]: GETEX and GET expired key or not exist (2 ms) [ok]: GETEX no arguments (0 ms) [ok]: GETDEL command (0 ms) [ok]: LINDEX random access - listpack (53 ms) [ok]: AUTH fails when binary password is wrong (0 ms) [ok]: AUTH succeeds when binary password is correct (1 ms) [ok]: All time-to-live(TTL) in commands are propagated as absolute timestamp in milliseconds in AOF (2018 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (105 ms) [ok]: GETDEL propagate as DEL command to replica (108 ms) [ok]: GETEX without argument does not propagate to replica (100 ms) [ok]: MGET (7 ms) [ok]: MGET against non existing key (0 ms) [ok]: MGET against non-string key (0 ms) [ok]: GETSET (set new value) (1 ms) [ok]: GETSET (replace old value) (0 ms) [ok]: MSET base case (0 ms) [ok]: MSET/MSETNX wrong number of args (0 ms) [ok]: MSET with already existing - same key twice (0 ms) [ok]: MSETNX with already existent key (1 ms) [ok]: MSETNX with not existing keys (0 ms) [ok]: MSETNX with not existing keys - same key twice (0 ms) [ok]: MSETNX with already existing keys - same key twice (0 ms) [ok]: STRLEN against non-existing key (0 ms) [ok]: STRLEN against integer-encoded value (0 ms) [ok]: STRLEN against plain string (0 ms) [ok]: SETBIT against non-existing key (0 ms) [ok]: SETBIT against string-encoded key (0 ms) [ok]: SETBIT against integer-encoded key (0 ms) [ok]: SETBIT against key with wrong type (1 ms) [ok]: SETBIT with out of range bit offset (0 ms) [ok]: SETBIT with non-bit argument (1 ms) [ok]: All TTL in commands are propagated as absolute timestamp in replication stream (58 ms) [ok]: LINDEX consistency test - listpack (155 ms) [ok]: First server should have role slave after REPLICAOF (1 ms) [ok]: For all replicated TTL-related commands, absolute expire times are identical on primary and replica (7 ms) [ok]: LINDEX random access - listpack (107 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (216 ms) [ok]: expired key which is created in writeable replicas should be deleted by active expiry (291 ms) [ok]: LINDEX consistency test - quicklist (80 ms) [ok]: LINDEX random access - quicklist (53 ms) [ok]: SETBIT fuzzing (516 ms) [ok]: GETBIT against non-existing key (1 ms) [ok]: GETBIT against string-encoded key (0 ms) [ok]: GETBIT against integer-encoded key (0 ms) [ok]: SETRANGE against non-existing key (1 ms) [ok]: SETRANGE against string-encoded key (1 ms) [ok]: SETRANGE against integer-encoded key (2 ms) [ok]: SETRANGE against key with wrong type (1 ms) [ok]: SETRANGE with out of range offset (0 ms) [ok]: GETRANGE against non-existing key (1 ms) [ok]: GETRANGE against wrong key type (0 ms) [ok]: GETRANGE against string value (1 ms) [ok]: GETRANGE against integer-encoded value (0 ms) [ok]: SET command will remove expire (1 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed (0 ms) [ok]: PIPELINING stresser (also a regression for the old epoll bug) (1972 ms) [ok]: APPEND basics (0 ms) [ok]: APPEND basics, integer encoded values (0 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (107 ms) [ok]: First server should have role slave after SLAVEOF (1002 ms) [ok]: LINDEX consistency test - quicklist (149 ms) [ok]: sort by in cluster mode (0 ms) [ok]: sort get in cluster mode (1 ms) [ok]: sort_ro by in cluster mode (0 ms) [ok]: sort_ro get in cluster mode (1 ms) [ok]: MASTERAUTH test with binary password (910 ms) [ok]: LINDEX random access - quicklist (105 ms) [ok]: Stress tester for #3343-alike bugs comp: 2 (10789 ms) [ok]: XDEL fuzz test (3711 ms) [ok]: {standalone} SCAN regression test for issue #4906 (10234 ms) [ok]: APPEND fuzzing (328 ms) [ok]: {standalone} SCAN MATCH pattern implies cluster slot (40 ms) [13/91 done]: unit/sort (11 seconds) Testing integration/replication [ok]: FLUSHDB (38 ms) [ok]: Perform a final SAVE to leave a clean DB on disk (1 ms) [ok]: RESET clears client state (0 ms) [ok]: RESET clears MONITOR state (1 ms) [ok]: RESET clears and discards MULTI state (0 ms) [ok]: RESET clears Pub/Sub state (1 ms) [ok]: RESET clears authenticated state (0 ms) [ok]: Subcommand syntax error crash (issue #10070) (1 ms) [14/91 done]: unit/auth (11 seconds) Testing integration/replication-2 [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (211 ms) [ok]: LLEN against non-list value error (0 ms) [ok]: LLEN against non existing key (0 ms) [ok]: LINDEX against non-list value error (0 ms) [ok]: LINDEX against non existing key (0 ms) [ok]: LPUSH against non-list value error (0 ms) [ok]: RPUSH against non-list value error (0 ms) [ok]: RPOPLPUSH base case - quicklist (51 ms) [ok]: Slave enters handshake (0 ms) [ok]: Slave enters wait_bgsave (0 ms) [ok]: LMOVE left left base case - quicklist (60 ms) [ok]: LMOVE left right base case - quicklist (50 ms) [ok]: LTRIM stress testing - quicklist (11792 ms) [ok]: LMOVE right left base case - quicklist (50 ms) [ok]: LMOVE right right base case - quicklist (50 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: If min-slaves-to-write is honored, write is accepted (1 ms) [ok]: No write if min-slaves-to-write is < attached slaves (0 ms) [ok]: If min-slaves-to-write is honored, write is accepted (again) (1 ms) [ok]: RPOPLPUSH with the same list as src and dst - quicklist (50 ms) [ok]: LMOVE left left with the same list as src and dst - quicklist (50 ms) [ok]: LMOVE left right with the same list as src and dst - quicklist (60 ms) [ok]: LMOVE right left with the same list as src and dst - quicklist (50 ms) [ok]: ZDIFF fuzzing - skiplist (6032 ms) [ok]: ZPOPMIN with the count 0 returns an empty array (0 ms) [ok]: ZPOPMIN with negative count (1 ms) [ok]: ZPOPMAX with the count 0 returns an empty array (0 ms) [ok]: ZPOPMAX with negative count (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX with a single key - skiplist (1 ms) [ok]: LMOVE right right with the same list as src and dst - quicklist (60 ms) [ok]: ZPOPMIN/ZPOPMAX with count - skiplist (0 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - skiplist (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist (1 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - skiplist (2 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - skiplist (1 ms) [ok]: BZPOPMIN/BZPOPMAX second sorted set has members - skiplist (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with a single existing sorted set - skiplist (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with multiple existing sorted sets - skiplist (2 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX second sorted set has members - skiplist (2 ms) [ok]: Basic ZPOPMIN/ZPOPMAX - skiplist RESP3 (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - skiplist RESP3 (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX - skiplist RESP3 (2 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist RESP3 (1 ms) [ok]: BZPOPMIN/BZPOPMAX - skiplist RESP3 (2 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX - skiplist RESP3 (2 ms) [ok]: ZPOP/ZMPOP against wrong type (2 ms) [ok]: ZMPOP with illegal argument (2 ms) [ok]: ZMPOP propagate as pop with count command to replica (52 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP3 (2 ms) [ok]: Don't rehash if redict has child process (512 ms) [ok]: RPOPLPUSH with quicklist source and existing target quicklist (110 ms) [ok]: LMOVE left left with quicklist source and existing target quicklist (100 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP3 (195 ms) [ok]: ZMPOP readraw in RESP3 (3 ms) [ok]: Process title set as expected (1 ms) [ok]: LMOVE left right with quicklist source and existing target quicklist (100 ms) [ok]: LMOVE right left with quicklist source and existing target quicklist (110 ms) [ok]: BZMPOP readraw in RESP3 (197 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP2 (2 ms) [ok]: LMOVE right right with quicklist source and existing target quicklist (99 ms) [ok]: RPOPLPUSH with quicklist source and existing target listpack (50 ms) [ok]: LMOVE left left with quicklist source and existing target listpack (50 ms) [ok]: LMOVE left right with quicklist source and existing target listpack (50 ms) [ok]: GETRANGE fuzzing (1750 ms) [ok]: Coverage: SUBSTR (0 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP2 (197 ms) [ok]: Extended SET can detect syntax errors (0 ms) [ok]: Extended SET NX option (0 ms) [ok]: Extended SET XX option (0 ms) [ok]: Extended SET GET option (0 ms) [ok]: Extended SET GET option with no previous value (0 ms) [ok]: Extended SET GET option with XX (0 ms) [ok]: Extended SET GET option with XX and no previous value (1 ms) [ok]: ZMPOP readraw in RESP2 (3 ms) [ok]: Extended SET GET option with NX (0 ms) [ok]: Extended SET GET option with NX and previous value (0 ms) [ok]: Extended SET GET with incorrect type should result in wrong type error (1 ms) [ok]: Extended SET EX option (0 ms) [ok]: Extended SET PX option (1 ms) [ok]: Extended SET EXAT option (0 ms) [ok]: Extended SET PXAT option (0 ms) [ok]: Extended SET using multiple options at once (1 ms) [ok]: GETRANGE with huge ranges, Github issue #1844 (0 ms) [ok]: LCS basic (1 ms) [ok]: LCS len (0 ms) [ok]: LCS indexes (1 ms) [ok]: LCS indexes with match len (1 ms) [ok]: LCS indexes with match len and minimum match len (0 ms) [ok]: SETRANGE with huge offset (0 ms) [ok]: APPEND modifies the encoding from int to raw (1 ms) [15/91 done]: unit/type/string (13 seconds) Testing integration/replication-3 [ok]: LMOVE right left with quicklist source and existing target listpack (50 ms) [ok]: LMOVE right right with quicklist source and existing target listpack (50 ms) [ok]: RPOPLPUSH base case - listpack (1 ms) [ok]: LMOVE left left base case - listpack (2 ms) [ok]: LMOVE left right base case - listpack (1 ms) [ok]: LMOVE right left base case - listpack (1 ms) [ok]: LMOVE right right base case - listpack (2 ms) [ok]: RPOPLPUSH with the same list as src and dst - listpack (1 ms) [ok]: LMOVE left left with the same list as src and dst - listpack (1 ms) [ok]: LMOVE left right with the same list as src and dst - listpack (0 ms) [ok]: LMOVE right left with the same list as src and dst - listpack (0 ms) [ok]: LMOVE right right with the same list as src and dst - listpack (0 ms) [ok]: RPOPLPUSH with listpack source and existing target quicklist (49 ms) [ok]: Test latency events logging (3401 ms) [ok]: LATENCY HISTORY output is ok (0 ms) [ok]: LATENCY LATEST output is ok (0 ms) [ok]: LATENCY GRAPH can output the event graph (1 ms) [ok]: BZMPOP readraw in RESP2 (198 ms) [ok]: ZINTERSTORE regression with two sets, intset+hashtable (1 ms) [ok]: ZUNIONSTORE regression, should not create NaN in scores (0 ms) [ok]: LMOVE left left with listpack source and existing target quicklist (50 ms) [ok]: ZINTERSTORE #516 regression, mixed sets and ziplist zsets (1 ms) [ok]: LMOVE left right with listpack source and existing target quicklist (50 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed after loadaof (2004 ms) [ok]: GETEX use of PERSIST option should remove TTL (1 ms) [ok]: GETEX use of PERSIST option should remove TTL after loadaof (1 ms) [ok]: LMOVE right left with listpack source and existing target quicklist (60 ms) [ok]: GETEX propagate as to replica as PERSIST, DEL, or nothing (71 ms) [ok]: EXPIRE with NX option on a key with ttl (0 ms) [ok]: EXPIRE with NX option on a key without ttl (1 ms) [ok]: EXPIRE with XX option on a key with ttl (0 ms) [ok]: EXPIRE with XX option on a key without ttl (1 ms) [ok]: EXPIRE with GT option on a key with lower ttl (0 ms) [ok]: EXPIRE with GT option on a key with higher ttl (1 ms) [ok]: EXPIRE with GT option on a key without ttl (0 ms) [ok]: EXPIRE with LT option on a key with higher ttl (0 ms) [ok]: EXPIRE with LT option on a key with lower ttl (0 ms) [ok]: EXPIRE with LT option on a key without ttl (0 ms) [ok]: EXPIRE with LT and XX option on a key with ttl (1 ms) [ok]: EXPIRE with LT and XX option on a key without ttl (0 ms) [ok]: EXPIRE with conflicting options: LT GT (1 ms) [ok]: EXPIRE with conflicting options: NX GT (0 ms) [ok]: EXPIRE with conflicting options: NX LT (0 ms) [ok]: EXPIRE with conflicting options: NX XX (0 ms) [ok]: EXPIRE with unsupported options (1 ms) [ok]: EXPIRE with unsupported options (0 ms) [ok]: EXPIRE with negative expiry (0 ms) [ok]: EXPIRE with negative expiry on a non-valitale key (1 ms) [ok]: EXPIRE with non-existed key (0 ms) [ok]: ZUNIONSTORE result is sorted (157 ms) [ok]: ZUNIONSTORE/ZINTERSTORE/ZDIFFSTORE error if using WITHSCORES (0 ms) [ok]: ZMSCORE retrieve (0 ms) [ok]: ZMSCORE retrieve from empty set (0 ms) [ok]: ZMSCORE retrieve with missing member (1 ms) [ok]: ZMSCORE retrieve single member (0 ms) [ok]: ZMSCORE retrieve requires one or more members (0 ms) [ok]: ZSET commands don't accept the empty strings as valid score (0 ms) [ok]: zunionInterDiffGenericCommand at least 1 input key (1 ms) [ok]: First server should have role slave after SLAVEOF (102 ms) [ok]: LMOVE right right with listpack source and existing target quicklist (61 ms) [ok]: RPOPLPUSH with listpack source and existing target listpack (2 ms) [ok]: LMOVE left left with listpack source and existing target listpack (2 ms) [ok]: LMOVE left right with listpack source and existing target listpack (1 ms) [ok]: LMOVE right left with listpack source and existing target listpack (1 ms) [ok]: LMOVE right right with listpack source and existing target listpack (1 ms) [ok]: RPOPLPUSH against non existing key (0 ms) [ok]: RPOPLPUSH against non list src key (1 ms) [ok]: ZSCORE - listpack (25 ms) [ok]: ZMSCORE - listpack (26 ms) [ok]: RPOPLPUSH against non list dst key - quicklist (48 ms) [ok]: RPOPLPUSH against non list dst key - listpack (2 ms) [ok]: RPOPLPUSH against non existing src key (0 ms) [ok]: Redict should not propagate the read command on lazy expire (92 ms) [ok]: ZSCORE after a DEBUG RELOAD - listpack (33 ms) [ok]: ZSET sorting stresser - listpack (40 ms) [ok]: Basic LPOP/RPOP/LMPOP - quicklist (98 ms) [ok]: Basic LPOP/RPOP/LMPOP - listpack (2 ms) [ok]: LPOP/RPOP/LMPOP against empty list (1 ms) [ok]: LPOP/RPOP/LMPOP NON-BLOCK or BLOCK against non list value (3 ms) [ok]: SCAN: Lazy-expire should not be wrapped in MULTI/EXEC (101 ms) [ok]: Mass RPOP/LPOP - listpack (55 ms) [ok]: RANDOMKEY: Lazy-expire should not be wrapped in MULTI/EXEC (101 ms) [ok]: Mass RPOP/LPOP - listpack (108 ms) [ok]: LMPOP with illegal argument (4 ms) [ok]: {cluster} SCAN basic (115 ms) [ok]: LMPOP single existing list - quicklist (176 ms) [ok]: {cluster} SCAN COUNT (120 ms) [ok]: {cluster} SCAN MATCH (97 ms) [ok]: LMPOP multiple existing lists - quicklist (210 ms) [ok]: LMPOP single existing list - listpack (4 ms) [ok]: LMPOP multiple existing lists - listpack (4 ms) [ok]: LMPOP propagate as pop with count command to replica (66 ms) [ok]: LRANGE basics - quicklist (46 ms) [ok]: {cluster} SCAN TYPE (162 ms) [ok]: LRANGE inverted indexes - quicklist (49 ms) [ok]: LRANGE out of range indexes including the full list - quicklist (60 ms) [ok]: {cluster} SCAN unknown type (97 ms) [ok]: LRANGE out of range negative end index - quicklist (50 ms) [ok]: LRANGE basics - listpack (2 ms) [ok]: LRANGE inverted indexes - listpack (1 ms) [ok]: LRANGE out of range indexes including the full list - listpack (1 ms) [ok]: LRANGE out of range negative end index - listpack (1 ms) [ok]: LRANGE against non existing key (0 ms) [ok]: LRANGE with start > end yields an empty array for backward compatibility (1 ms) [ok]: {cluster} SCAN with expired keys (110 ms) [ok]: {cluster} SCAN with expired keys with TYPE filter (107 ms) [ok]: {cluster} SSCAN with encoding intset (2 ms) [ok]: {cluster} SSCAN with encoding listpack (3 ms) [ok]: {cluster} SSCAN with encoding hashtable (6 ms) [ok]: {cluster} HSCAN with encoding listpack (2 ms) [ok]: {cluster} HSCAN with encoding hashtable (141 ms) [ok]: {cluster} ZSCAN with encoding listpack (3 ms) [ok]: {cluster} ZSCAN with encoding skiplist (102 ms) [ok]: {cluster} SCAN guarantees check under write load (30 ms) [ok]: {cluster} SSCAN with integer encoded object (issue #1345) (0 ms) [ok]: {cluster} SSCAN with PATTERN (1 ms) [ok]: {cluster} HSCAN with PATTERN (0 ms) [ok]: {cluster} HSCAN with NOVALUES (1 ms) [ok]: {cluster} ZSCAN with PATTERN (0 ms) [ok]: No write if min-slaves-max-lag is > of the slave lag (2820 ms) [ok]: min-slaves-to-write is ignored by slaves (0 ms) [ok]: {cluster} ZSCAN scores: regression test for issue #2175 (84 ms) [ok]: LTRIM basics - quicklist (603 ms) [ok]: LTRIM out of range negative end index - quicklist (109 ms) [ok]: LSET - quicklist (61 ms) [ok]: LSET out of range index - quicklist (0 ms) [ok]: LTRIM basics - listpack (14 ms) [ok]: LTRIM out of range negative end index - listpack (3 ms) [ok]: LSET - listpack (1 ms) [ok]: LSET out of range index - listpack (0 ms) [ok]: LSET against non existing key (1 ms) [ok]: LSET against non list value (0 ms) [ok]: LREM remove all the occurrences - quicklist (51 ms) [ok]: LREM remove the first occurrence - quicklist (0 ms) [ok]: LREM remove non existing element - quicklist (1 ms) [ok]: LREM starting from tail with negative count - quicklist (49 ms) [ok]: LREM starting from tail with negative count (2) - quicklist (1 ms) [ok]: LREM deleting objects that may be int encoded - quicklist (48 ms) [ok]: LREM remove all the occurrences - listpack (2 ms) [ok]: LREM remove the first occurrence - listpack (0 ms) [ok]: LREM remove non existing element - listpack (1 ms) [ok]: LREM starting from tail with negative count - listpack (2 ms) [ok]: LREM starting from tail with negative count (2) - listpack (0 ms) [ok]: LREM deleting objects that may be int encoded - listpack (2 ms) [ok]: Regression for bug 593 - chaining BRPOPLPUSH with other blocking cmds (2 ms) [ok]: BLPOP/BLMOVE should increase dirty (4 ms) [ok]: client unblock tests (9 ms) [ok]: client unblock tests (4 ms) [ok]: List listpack -> quicklist encoding conversion (5 ms) [ok]: MIGRATE cached connections are released after some time (15002 ms) [ok]: List listpack -> quicklist encoding conversion (199 ms) [ok]: MIGRATE is able to migrate a key between two instances (218 ms) [ok]: List quicklist -> listpack encoding conversion (250 ms) [ok]: List encoding conversion when RDB loading (6 ms) [ok]: List invalid list-max-listpack-size config (53 ms) [ok]: MIGRATE is able to copy a key between two instances (219 ms) [ok]: List of various encodings (106 ms) [ok]: List of various encodings - sanitize dump (5 ms) [ok]: Unblock fairness is kept while pipelining (3 ms) [ok]: Unblock fairness is kept during nested unblock (4 ms) [ok]: Blocking command accounted only once in commandstats (2 ms) [ok]: Blocking command accounted only once in commandstats after timeout (2 ms) [ok]: Command being unblocked cause another command to get unblocked execution order test (95 ms) [ok]: MIGRATE will not overwrite existing keys, unless REPLACE is used (219 ms) [16/91 done]: unit/type/list (16 seconds) Testing integration/replication-4 [ok]: MIGRATE propagates TTL correctly (218 ms) [ok]: First server should have role slave after SLAVEOF (1 ms) [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 128 element sorted set - listpack (3050 ms) [ok]: Redict can trigger resizing (1817 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (364 ms) [ok]: expire scan should skip dictionaries with lot's of empty buckets (1329 ms) [17/91 done]: unit/expire (16 seconds) Testing integration/replication-psync [ok]: Redict can rewind and trigger smaller slot resizing (699 ms) [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (536 ms) [ok]: ZSETs skiplist implementation backlink consistency test - listpack (37 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Redict can resize empty dict (132 ms) [18/91 done]: unit/other (15 seconds) Testing integration/replication-buffer [ok]: ZSETs ZRANK augmented skip list stress testing - listpack (1066 ms) [ok]: BZPOPMIN, ZADD + DEL should not awake blocked client (2 ms) [ok]: Detect write load to master (1002 ms) [ok]: BZPOPMIN, ZADD + DEL + SET should not awake blocked client (2 ms) [ok]: BZMPOP_MIN, ZADD + DEL should not awake blocked client (1 ms) [ok]: BZMPOP_MIN, ZADD + DEL + SET should not awake blocked client (2 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: no, disabled, reconnect: 0) (41 ms) [ok]: AOF rewrite during write load: RDB preamble=yes (13114 ms) [ok]: MASTER and SLAVE consistency with expire (5670 ms) [ok]: Slave should be able to synchronize with the master (102 ms) [ok]: Master can replicate command longer than client-query-buffer-limit on replica (110 ms) [ok]: BZPOPMIN unblock but the key is expired and then block again - reprocessing command (1004 ms) [ok]: BZPOPMIN with same key multiple times should work (3 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZPOPMIN (2 ms) [ok]: BZPOPMIN with variadic ZADD (2 ms) [ok]: Detect write load to master (1001 ms) [ok]: All replicas share one global replication buffer (168 ms) [ok]: Replication buffer will become smaller when no replica uses (3 ms) [ok]: BZPOPMIN with zero timeout should block indefinitely (1002 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZMPOP_MIN (2 ms) [ok]: BZMPOP_MIN with variadic ZADD (2 ms) [ok]: Stress tester for #3343-alike bugs comp: 1 (9542 ms) [ok]: SRANDMEMBER with a dict containing long chain (14004 ms) [ok]: SMOVE basics - from regular set to intset (3 ms) [ok]: SMOVE basics - from intset to regular set (2 ms) [ok]: SMOVE non existing key (1 ms) [ok]: SMOVE non existing src set (1 ms) [ok]: SMOVE from regular set to non existing destination set (2 ms) [ok]: SMOVE from intset to non existing destination set (1 ms) [ok]: SMOVE wrong src key type (0 ms) [ok]: SMOVE wrong dst key type (0 ms) [ok]: SMOVE with identical source and destination (0 ms) [ok]: SMOVE only notify dstset when the addition is successful (2 ms) [ok]: BZMPOP_MIN with zero timeout should block indefinitely (1002 ms) [ok]: ZSCORE - skiplist (31 ms) [ok]: ZMSCORE - skiplist (32 ms) [ok]: Test replication with parallel clients writing in different DBs (5230 ms) [ok]: ZSCORE after a DEBUG RELOAD - skiplist (33 ms) [ok]: ZSET sorting stresser - skiplist (46 ms) [ok]: LATENCY GRAPH can output the expire event graph (0 ms) [ok]: LATENCY of expire events are correctly collected (8568 ms) [ok]: LATENCY HISTORY / RESET with wrong event name is fine (0 ms) [ok]: LATENCY DOCTOR produces some output (0 ms) [ok]: LATENCY RESET is able to reset events (0 ms) [ok]: LATENCY HELP should not have unexpected options (0 ms) [19/91 done]: unit/latency-monitor (13 seconds) Testing integration/shutdown [ok]: Slave is able to detect timeout during handshake (0 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: With min-slaves-to-write (1,3): master should be writable (0 ms) [ok]: With min-slaves-to-write (2,3): master should not be writable (0 ms) [ok]: With min-slaves-to-write function without no-write flag (1 ms) [ok]: With not enough good slaves, read in Lua script is still accepted (1 ms) [ok]: Set instance A as slave of B (101 ms) [ok]: INCRBYFLOAT replication, should not remove expire (2 ms) [ok]: GETSET replication (2 ms) [ok]: BRPOPLPUSH replication, when blocking against empty list (2 ms) [ok]: BRPOPLPUSH replication, list exists (1003 ms) [ok]: BLMOVE (left, left) replication, when blocking against empty list (2 ms) [ok]: Replication backlog size can outgrow the backlog limit config (2037 ms) [ok]: {cluster} SCAN regression test for issue #4906 (8978 ms) [ok]: {cluster} SCAN MATCH pattern implies cluster slot (28 ms) [20/91 done]: unit/scan (24 seconds) Testing integration/aof [ok]: XRANGE fuzzing (12394 ms) [ok]: XREVRANGE regression test for issue #5006 (1 ms) [ok]: XREAD streamID edge (no-blocking) (1 ms) [ok]: XREAD streamID edge (blocking) (1 ms) [ok]: XADD streamID edge (1 ms) [ok]: LTRIM stress testing - listpack (12064 ms) [ok]: Unfinished MULTI: Server should start if load-truncated is yes (0 ms) [ok]: Shutting down master waits for replica to catch up (sigterm) (2247 ms) [ok]: XTRIM with MAXLEN option basic test (109 ms) [ok]: XADD with LIMIT consecutive calls (11 ms) [21/91 done]: unit/type/list-2 (24 seconds) Testing integration/aof-race [ok]: XTRIM with ~ is limited (12 ms) [ok]: XTRIM without ~ is not limited (12 ms) [ok]: XTRIM without ~ and with LIMIT (13 ms) [ok]: XTRIM with LIMIT delete entries no more than limit (0 ms) [ok]: intsets implementation stress testing (2725 ms) [22/91 done]: unit/type/set (24 seconds) Testing integration/aof-multi-part [ok]: Short read: Server should start if load-truncated is yes (0 ms) [ok]: Truncated AOF loaded: we expect foo to be equal to 5 (0 ms) [ok]: Append a new command after loading an incomplete AOF (0 ms) [ok]: Multi Part AOF can't load data when some file missing (114 ms) [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 100 element sorted set - skiplist (2669 ms) [ok]: XADD with MAXLEN > xlen can propagate correctly (16 ms) [ok]: BLMOVE (left, left) replication, list exists (1002 ms) [ok]: BLMOVE (left, right) replication, when blocking against empty list (1 ms) [ok]: Multi Part AOF can't load data when the sequence not increase monotonically (112 ms) [ok]: Short read + command: Server should start (1 ms) [ok]: Truncated AOF loaded: we expect foo to be equal to 6 now (0 ms) [ok]: Multi Part AOF can't load data when there are blank lines in the manifest file (111 ms) [ok]: XADD with MINID > lastid can propagate correctly (13 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (297 ms) [ok]: Multi Part AOF can't load data when there is a duplicate base file (113 ms) [ok]: Bad format: Server should have logged an error (1 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (type unknown) (113 ms) [ok]: Unfinished MULTI: Server should have logged an error (1 ms) [ok]: XADD with ~ MAXLEN can propagate correctly (14 ms) [ok]: With min-slaves-to-write: master not writable with lagged slave (2723 ms) [23/91 done]: integration/aof-race (1 seconds) Testing integration/rdb [ok]: Multi Part AOF can't load data when the manifest format is wrong (missing key) (112 ms) [ok]: Short read: Server should have logged an error (0 ms) [ok]: Short read: Utility should confirm the AOF is not valid (6 ms) [ok]: Short read: Utility should show the abnormal line num in AOF (7 ms) [ok]: Short read: Utility should be able to fix the AOF (6 ms) [ok]: test old version rdb file (1 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (line too short) (113 ms) [ok]: XADD with ~ MAXLEN and LIMIT can propagate correctly (13 ms) [ok]: Fixed AOF: Server should have been started (1 ms) [ok]: Fixed AOF: Keyspace should contain values that were parseable (0 ms) [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (397 ms) [ok]: ZSETs skiplist implementation backlink consistency test - skiplist (26 ms) [ok]: Slave is able to evict keys created in writable slaves (6003 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (line too long) (115 ms) [ok]: RDB encoding loading test (11 ms) [ok]: Writable replica doesn't return expired keys (103 ms) [ok]: PFCOUNT updates cache on readonly replica (2 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (odd parameter) (117 ms) [ok]: XADD with ~ MINID can propagate correctly (16 ms) [ok]: AOF+SPOP: Server should have been started (1 ms) [ok]: AOF+SPOP: Set should have 1 member (0 ms) [ok]: PFCOUNT doesn't use expired key on readonly replica (102 ms) [ok]: Multi Part AOF can't load data when the manifest file is empty (118 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: MIGRATE can correctly transfer large values (9051 ms) [ok]: Server started empty with non-existing RDB file (0 ms) [ok]: BLMOVE (left, right) replication, list exists (1003 ms) [ok]: BLMOVE (right, left) replication, when blocking against empty list (1 ms) [ok]: XADD with ~ MINID and LIMIT can propagate correctly (14 ms) [ok]: AOF+SPOP: Server should have been started (0 ms) [ok]: AOF+SPOP: Set should have 1 member (1 ms) [ok]: Multi Part AOF can start when no aof and no manifest (228 ms) [ok]: MIGRATE can correctly transfer hashes (218 ms) [ok]: Server started empty with empty RDB file (1 ms) [ok]: AOF+EXPIRE: Server should have been started (1 ms) [ok]: AOF+EXPIRE: List should be empty (0 ms) [ok]: XTRIM with ~ MAXLEN can propagate correctly (18 ms) [ok]: Multi Part AOF can start when we have en empty AOF dir (226 ms) [ok]: Replication of an expired key does not delete the expired key (517 ms) [ok]: Replica could use replication buffer (beyond backlog config) for partial resynchronization (2426 ms) [ok]: XADD can CREATE an empty stream (0 ms) [ok]: XSETID can set a specific ID (1 ms) [ok]: XSETID cannot SETID with smaller ID (0 ms) [ok]: XSETID cannot SETID on non-existent key (1 ms) [ok]: XSETID cannot run with an offset but without a maximal tombstone (0 ms) [ok]: XSETID cannot run with a maximal tombstone but without an offset (0 ms) [ok]: XSETID errors on negstive offset (0 ms) [ok]: XSETID cannot set the maximal tombstone with larger ID (1 ms) [ok]: Redict should not try to convert DEL into EXPIREAT for EXPIRE -1 (0 ms) [ok]: XSETID cannot set the offset to less than the length (0 ms) [ok]: XSETID cannot set smaller ID than current MAXDELETEDID (2 ms) [ok]: Test RDB stream encoding (123 ms) [ok]: Test RDB stream encoding - sanitize dump (9 ms) [ok]: Multi Part AOF can load data discontinuously increasing sequence (226 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - skiplist (983 ms) [ok]: BZPOPMIN, ZADD + DEL should not awake blocked client (1 ms) [ok]: BZPOPMIN, ZADD + DEL + SET should not awake blocked client (1 ms) [ok]: BZMPOP_MIN, ZADD + DEL should not awake blocked client (1 ms) [ok]: BZMPOP_MIN, ZADD + DEL + SET should not awake blocked client (2 ms) [ok]: Shutting down master waits for replica to catch up (shutdown) (2096 ms) [24/91 done]: integration/replication-3 (13 seconds) Testing integration/corrupt-dump [ok]: XADD advances the entries-added counter and sets the recorded-first-entry-id (2 ms) [ok]: Server should not start if RDB file can't be open (1 ms) [ok]: XDEL/TRIM are reflected by recorded first entry (6 ms) [ok]: Maximum XDEL ID behaves correctly (3 ms) [ok]: XADD with artial ID with maximal seq (0 ms) [ok]: MIGRATE timeout actually works (634 ms) [ok]: Multi Part AOF can load data when manifest add new k-v (232 ms) [ok]: Server should not start if RDB is corrupted (0 ms) [ok]: Test replication partial resync: ok psync (diskless: no, disabled, reconnect: 1) (6240 ms) [ok]: First server should have role slave after SLAVEOF (1 ms) [ok]: Replication backlog memory will become smaller if disconnecting with replica (468 ms) [ok]: corrupt payload: #7445 - with sanitize (220 ms) [ok]: MASTER and SLAVE dataset should be identical after complex ops (11548 ms) [ok]: BLMOVE (right, left) replication, list exists (1003 ms) [ok]: BLMOVE (right, right) replication, when blocking against empty list (2 ms) [ok]: MIGRATE can migrate multiple keys at once (223 ms) [ok]: MIGRATE with multiple keys must have empty key arg (0 ms) [ok]: Empty stream can be rewrite into AOF correctly (104 ms) [ok]: Multi Part AOF can load data when some AOFs are empty (222 ms) [ok]: Stream can be rewrite into AOF correctly after XDEL lastid (106 ms) [ok]: corrupt payload: hash with valid zip list header, invalid entry len (220 ms) [25/91 done]: integration/replication-2 (15 seconds) Testing integration/corrupt-dump-fuzzer [ok]: MIGRATE with multiple keys migrate just existing ones (221 ms) [ok]: XGROUP HELP should not have unexpected options (0 ms) [ok]: XINFO HELP should not have unexpected options (0 ms) [ok]: Slave should be able to synchronize with the master (102 ms) [ok]: corrupt payload: invalid zlbytes header (220 ms) [ok]: Multi Part AOF can load data from old version redict (rdb preamble no) (337 ms) [ok]: Test FLUSHALL aborts bgsave (513 ms) [ok]: MIGRATE with multiple keys: stress command rewriting (220 ms) [26/91 done]: unit/type/stream (27 seconds) Testing integration/convert-zipmap-hash-on-load [ok]: bgsave resets the change counter (103 ms) [ok]: corrupt payload: valid zipped hash header, dup records (220 ms) [ok]: RDB load zipmap hash: converts to listpack (1 ms) [ok]: BZPOPMIN unblock but the key is expired and then block again - reprocessing command (1003 ms) [ok]: BZPOPMIN with same key multiple times should work (2 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZPOPMIN (2 ms) [ok]: BZPOPMIN with variadic ZADD (1 ms) [ok]: MIGRATE with multiple keys: delete just ack keys (222 ms) [ok]: Multi Part AOF can load data from old version redict (rdb preamble yes) (327 ms) [ok]: corrupt payload: quicklist big ziplist prev len (220 ms) [ok]: RDB load zipmap hash: converts to hash table when hash-max-ziplist-entries is exceeded (1 ms) [ok]: MIGRATE AUTH: correct and wrong password cases (222 ms) [ok]: Multi Part AOF can continue the upgrade from the interrupted upgrade state (232 ms) [ok]: BLMOVE (right, right) replication, list exists (1004 ms) [27/91 done]: unit/dump (27 seconds) Testing integration/convert-ziplist-hash-on-load [ok]: corrupt payload: quicklist small ziplist prev len (219 ms) [ok]: RDB load zipmap hash: converts to hash table when hash-max-ziplist-value is exceeded (0 ms) [ok]: BLPOP followed by role change, issue #2473 (103 ms) [ok]: RDB load ziplist hash: converts to listpack when RDB loading (1 ms) [ok]: Multi Part AOF can be loaded correctly when both server dir and aof dir contain old AOF (222 ms) [28/91 done]: integration/convert-zipmap-hash-on-load (0 seconds) Testing integration/convert-ziplist-zset-on-load [ok]: corrupt payload: quicklist ziplist wrong count (220 ms) [ok]: Multi Part AOF can't load data when the manifest contains the old AOF file name but the file does not exist in server dir and aof dir (122 ms) [ok]: RDB load ziplist zset: converts to listpack when RDB loading (1 ms) [ok]: RDB load ziplist hash: converts to hash table when hash-max-ziplist-entries is exceeded (1 ms) [ok]: Detect write load to master (1001 ms) [29/91 done]: integration/convert-ziplist-hash-on-load (1 seconds) Testing integration/logging [ok]: corrupt payload: #3080 - quicklist (220 ms) [ok]: Second server should have role master at first (0 ms) [ok]: SLAVEOF should start with link status "down" (1 ms) [ok]: The role should immediately be changed to "replica" (0 ms) [ok]: RDB load ziplist zset: converts to skiplist when zset-max-ziplist-entries is exceeded (0 ms) [ok]: Sync should have transferred keys from master (0 ms) [ok]: The link status should be up (0 ms) [ok]: SET on the master should immediately propagate (1 ms) [30/91 done]: integration/convert-ziplist-zset-on-load (1 seconds) Testing integration/psync2 [ok]: BZPOPMIN with zero timeout should block indefinitely (1002 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZMPOP_MIN (2 ms) [ok]: BZMPOP_MIN with variadic ZADD (2 ms) [ok]: Multi Part AOF can upgrade when when two redict share the same server dir (redict1) (105 ms) [ok]: Crash report generated on SIGABRT (103 ms) [ok]: FLUSHDB / FLUSHALL should replicate (93 ms) [ok]: ROLE in master reports master with a slave (0 ms) [ok]: ROLE in slave reports slave in connected state (0 ms) [ok]: corrupt payload: quicklist with empty ziplist (220 ms) [ok]: client freed during loading (1091 ms) [ok]: Multi Part AOF can upgrade when when two redict share the same server dir (redict2) (106 ms) [ok]: Crash report generated on DEBUG SEGFAULT (2 ms) [ok]: Shutting down master waits for replica timeout (2207 ms) [ok]: corrupt payload: quicklist encoded_len is 0 (219 ms) [ok]: Multi Part AOF can upgrade when when two redict share the same server dir (633 ms) [ok]: Stacktraces generated on SIGALRM (103 ms) [31/91 done]: integration/logging (0 seconds) Testing integration/psync2-reg [ok]: corrupt payload: quicklist listpack entry start with EOF (221 ms) [ok]: PSYNC2: --- CYCLE 1 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #2 as master (1 ms) [ok]: PSYNC2: Set #4 to replicate from #0 (0 ms) [ok]: Multi Part AOF can handle appendfilename contains whitespaces (331 ms) [ok]: corrupt payload: #3080 - ziplist (219 ms) [ok]: corrupt payload: load corrupted rdb with no CRC - #3505 (111 ms) [ok]: Multi Part AOF can create BASE (RDB format) when redict starts from empty (224 ms) [ok]: PSYNC2 #3899 regression: setup (5 ms) [ok]: Test RDB load info (634 ms) [ok]: BZMPOP_MIN with zero timeout should block indefinitely (1003 ms) [ok]: script won't load anymore if it's in rdb (0 ms) [ok]: BZPOP/BZMPOP against wrong type (2 ms) [ok]: BZMPOP with illegal argument (3 ms) [ok]: BZMPOP with multiple blocked clients (6 ms) [ok]: corrupt payload: load corrupted rdb with empty keys (220 ms) [ok]: Multi Part AOF can create BASE (AOF format) when redict starts from empty (224 ms) [ok]: Make sure aof manifest appendonly.aof.manifest not in aof directory (0 ms) [ok]: BZMPOP propagate as pop with count command to replica (181 ms) [ok]: BZMPOP should not blocks on non key arguments - #10762 (3 ms) [ok]: corrupt payload: load corrupted rdb with empty keys (230 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: corrupt payload: listpack invalid size header (220 ms) [ok]: Shutting down master waits for replica then fails (1250 ms) [ok]: failed bgsave prevents writes (330 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: PSYNC2: Set #0 to replicate from #2 (1 ms) [ok]: corrupt payload: listpack too long entry len (124 ms) [32/91 done]: integration/rdb (4 seconds) Testing integration/psync2-pingoff [ok]: Partial resynchronization is successful even client-output-buffer-limit is less than repl-backlog-size (3232 ms) [ok]: AOF enable will create manifest file (485 ms) [ok]: corrupt payload: listpack very long entry len (127 ms) [ok]: corrupt payload: listpack too long entry prev len (221 ms) [ok]: Shutting down master waits for replica then aborted (519 ms) [33/91 done]: integration/shutdown (8 seconds) Testing integration/psync2-master-restart [ok]: corrupt payload: stream with duplicate consumers (219 ms) [ok]: The update of replBufBlock's repl_offset is ok - Regression test for #11666 (2 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: ZSET skiplist order consistency when elements are moved (1081 ms) [ok]: ZRANGESTORE basic (0 ms) [ok]: ZRANGESTORE RESP3 (1 ms) [ok]: ZRANGESTORE range (1 ms) [ok]: ZRANGESTORE BYLEX (0 ms) [ok]: ZRANGESTORE BYSCORE (1 ms) [ok]: ZRANGESTORE BYSCORE LIMIT (0 ms) [ok]: ZRANGESTORE BYSCORE REV LIMIT (1 ms) [ok]: ZRANGE BYSCORE REV LIMIT (0 ms) [ok]: ZRANGESTORE - src key missing (0 ms) [ok]: ZRANGESTORE - src key wrong type (0 ms) [ok]: ZRANGESTORE - empty range (0 ms) [ok]: ZRANGESTORE BYLEX - empty range (1 ms) [ok]: ZRANGESTORE BYSCORE - empty range (0 ms) [ok]: ZRANGE BYLEX (0 ms) [ok]: ZRANGESTORE invalid syntax (1 ms) [ok]: ZRANGESTORE with zset-max-listpack-entries 0 #10767 case (1 ms) [ok]: ZRANGESTORE with zset-max-listpack-entries 1 dst key should use skiplist encoding (1 ms) [ok]: ZRANGE invalid syntax (0 ms) [ok]: ZRANDMEMBER - listpack (9 ms) [ok]: ZRANDMEMBER - skiplist (10 ms) [ok]: ZRANDMEMBER with RESP3 (1 ms) [ok]: ZRANDMEMBER count of 0 is handled correctly (0 ms) [ok]: ZRANDMEMBER with against non existing key (0 ms) [ok]: ZRANDMEMBER count overflow (1 ms) [ok]: ZRANDMEMBER count of 0 is handled correctly - emptyarray (0 ms) [ok]: ZRANDMEMBER with against non existing key - emptyarray (0 ms) [ok]: corrupt payload: hash ziplist with duplicate records (218 ms) [ok]: PSYNC2: Set #1 to replicate from #4 (1 ms) [ok]: corrupt payload: hash listpack with duplicate records (218 ms) [ok]: ZRANDMEMBER with - skiplist (343 ms) [ok]: corrupt payload: hash listpack with duplicate records - convert (125 ms) [ok]: Replica client-output-buffer size is limited to backlog_limit/16 when no replication data is pending (1128 ms) [34/91 done]: integration/replication-buffer (14 seconds) Testing integration/failover [ok]: AOF multiple rewrite failures will open multiple INCR AOFs (1167 ms) [ok]: PSYNC2 pingoff: setup (1003 ms) [ok]: PSYNC2 pingoff: write and wait replication (0 ms) [ok]: corrupt payload: hash ziplist uneven record count (219 ms) [ok]: ZRANDMEMBER with - listpack (338 ms) [ok]: zset score double range (1 ms) [ok]: zunionInterDiffGenericCommand acts on SET and ZSET (18 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - single (7 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - multiple (2 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - single_multiple (2 ms) [35/91 done]: unit/type/zset (31 seconds) Testing integration/redict-cli [ok]: failover command fails without connected replica (0 ms) [ok]: corrupt payload: hash duplicate records (218 ms) [ok]: setup replication for following tests (103 ms) [ok]: failover command fails with invalid host (0 ms) [ok]: failover command fails with invalid port (0 ms) [ok]: failover command fails with just force and timeout (0 ms) [ok]: failover command fails when sent to a replica (0 ms) [ok]: failover command fails with force without timeout (0 ms) [ok]: Interactive CLI: INFO response should be printed raw (61 ms) [ok]: AOF rewrite doesn't open new aof when AOF turn off (451 ms) [ok]: AOF fsync always barrier issue (5233 ms) [ok]: Interactive CLI: Status reply (60 ms) [ok]: Interactive CLI: Integer reply (61 ms) [ok]: corrupt payload: hash empty zipmap (219 ms) [ok]: Interactive CLI: Bulk reply (61 ms) [ok]: AOF enable/disable auto gc (206 ms) [ok]: GETEX should not append to AOF (1 ms) [ok]: Interactive CLI: Multi-bulk reply (61 ms) [ok]: corrupt payload: fuzzer findings - NPD in streamIteratorGetID (126 ms) [ok]: PSYNC2: Set #3 to replicate from #0 (0 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields when offset is 0 (1117 ms) [ok]: AOF can produce consecutive sequence number after reload (124 ms) [ok]: corrupt payload: fuzzer findings - listpack NPD on invalid stream (125 ms) [ok]: Unknown command: Server should have logged an error (1 ms) [ok]: corrupt payload: fuzzer findings - NPD in quicklistIndex (221 ms) [ok]: AOF enable during BGSAVE will not write data util AOFRW finish (310 ms) [ok]: Interactive CLI: Parsing quotes (425 ms) [ok]: AOF+LMPOP/BLMPOP: pop elements from the list (102 ms) [ok]: failover command to specific replica works (732 ms) [ok]: Stress tester for #3343-alike bugs comp: 0 (11069 ms) [ok]: corrupt payload: fuzzer findings - encoded entry header reach outside the allocation (218 ms) [ok]: AOF+LMPOP/BLMPOP: after pop elements from the list (1 ms) [ok]: corrupt payload: fuzzer findings - invalid ziplist encoding (220 ms) [ok]: AOF will trigger limit when AOFRW fails many times (588 ms) [ok]: AOF+ZMPOP/BZMPOP: pop elements from the zset (103 ms) [ok]: corrupt payload: fuzzer findings - hash crash (218 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: Interactive CLI: Subscribed mode (605 ms) [ok]: PSYNC2: cluster is consistent after failover (1 ms) [ok]: AOF+ZMPOP/BZMPOP: after pop elements from the zset (0 ms) [ok]: corrupt payload: fuzzer findings - uneven entry count in hash (218 ms) [ok]: Interactive non-TTY CLI: Subscribed mode (415 ms) [ok]: corrupt payload: fuzzer findings - invalid read in lzf_decompress (218 ms) [ok]: Non-interactive TTY CLI: Status reply (2 ms) [ok]: Non-interactive TTY CLI: Integer reply (2 ms) [ok]: Non-interactive TTY CLI: Bulk reply (1 ms) [ok]: Non-interactive TTY CLI: Multi-bulk reply (2 ms) [ok]: Non-interactive TTY CLI: Read last argument from pipe (5 ms) [ok]: Non-interactive TTY CLI: Read last argument from file (3 ms) [ok]: failover command to any replica works (1034 ms) [ok]: Non-interactive TTY CLI: Escape character in JSON mode (14 ms) [ok]: Non-interactive non-TTY CLI: Status reply (1 ms) [ok]: Non-interactive non-TTY CLI: Integer reply (2 ms) [ok]: Non-interactive non-TTY CLI: Bulk reply (2 ms) [ok]: Non-interactive non-TTY CLI: Multi-bulk reply (2 ms) [ok]: Non-interactive non-TTY CLI: ASK redirect test (54 ms) [ok]: Non-interactive non-TTY CLI: Quoted input arguments (1 ms) [ok]: Non-interactive non-TTY CLI: No accidental unquoting of input arguments (3 ms) [ok]: Non-interactive non-TTY CLI: Invalid quoted input arguments (3 ms) [ok]: Non-interactive non-TTY CLI: Read last argument from pipe (5 ms) [ok]: Non-interactive non-TTY CLI: Read last argument from file (3 ms) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - latest server (15 ms) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - no server (4 ms) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - old server (13 ms) [ok]: Generate timestamp annotations in AOF (328 ms) [ok]: corrupt payload: fuzzer findings - leak in rdbloading due to dup entry in set (231 ms) [ok]: Successfully load AOF which has timestamp annotations inside (1 ms) [ok]: failover to a replica with force works (428 ms) [ok]: corrupt payload: fuzzer findings - empty intset (229 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields with data (1119 ms) [ok]: corrupt payload: fuzzer findings - zset ziplist entry lensize is 0 (221 ms) [ok]: corrupt payload: fuzzer findings - valgrind ziplist prevlen reaches outside the ziplist (220 ms) [ok]: failover with timeout aborts if replica never catches up (565 ms) [ok]: failovers can be aborted (23 ms) [ok]: corrupt payload: fuzzer findings - valgrind - bad rdbLoadDoubleValue (217 ms) [ok]: Truncate AOF to specific timestamp (710 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: corrupt payload: fuzzer findings - valgrind ziplist prev too big (221 ms) [ok]: failover aborts if target rejects sync request (427 ms) [ok]: corrupt payload: fuzzer findings - lzf decompression fails, avoid valgrind invalid read (217 ms) [ok]: corrupt payload: fuzzer findings - stream bad lp_count (217 ms) [ok]: corrupt payload: fuzzer findings - stream bad lp_count - unsanitized (123 ms) [ok]: AOF will open a temporary INCR AOF to accumulate data until the first AOFRW success when AOF is dynamically enabled (2453 ms) [ok]: corrupt payload: fuzzer findings - stream integrity check issue (229 ms) [ok]: corrupt payload: fuzzer findings - infinite loop (126 ms) [36/91 done]: integration/aof-multi-part (11 seconds) Testing integration/redict-benchmark [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields with expire (1744 ms) [ok]: corrupt payload: fuzzer findings - hash ziplist too long entry len (220 ms) [ok]: benchmark: set,get (8 ms) [ok]: benchmark: connecting using URI set,get (5 ms) [ok]: benchmark: connecting using URI with authentication set,get (4 ms) [37/91 done]: integration/failover (4 seconds) Testing integration/dismiss-mem [ok]: benchmark: full test suite (103 ms) [ok]: Test replication partial resync: no backlog (diskless: no, disabled, reconnect: 1) (7837 ms) [ok]: corrupt payload: fuzzer findings - zset ziplist invalid tail offset (221 ms) [ok]: corrupt payload: fuzzer findings - negative reply length (126 ms) [ok]: PSYNC2 pingoff: pause replica and promote it (5001 ms) [ok]: Dumping an RDB - functions only: no (2804 ms) [ok]: corrupt payload: fuzzer findings - valgrind negative malloc (218 ms) [ok]: Slave should be able to synchronize with the master (102 ms) [ok]: benchmark: multi-thread set,get (507 ms) [ok]: corrupt payload: fuzzer findings - valgrind invalid read (217 ms) [ok]: benchmark: pipelined full set,get (187 ms) [ok]: benchmark: arbitrary command (7 ms) [ok]: Test replication with blocking lists and sorted sets operations (25005 ms) [ok]: benchmark: keyspace length (111 ms) [ok]: benchmark: clients idle mode should return error when reached maxclients limit (2 ms) [ok]: benchmark: read last argument from stdin (7 ms) [ok]: corrupt payload: fuzzer findings - empty hash ziplist (218 ms) [38/91 done]: integration/redict-benchmark (1 seconds) Testing unit/pubsub [39/91 done]: integration/block-repl (26 seconds) Testing unit/pubsubshard [ok]: Dumping an RDB - functions only: yes (591 ms) [ok]: corrupt payload: fuzzer findings - stream with no records (124 ms) [ok]: Pub/Sub PING on RESP2 (1 ms) [ok]: Pub/Sub PING on RESP3 (1 ms) [ok]: SPUBLISH/SSUBSCRIBE basics (2 ms) [ok]: PUBLISH/SUBSCRIBE basics (2 ms) [ok]: SPUBLISH/SSUBSCRIBE with two clients (1 ms) [ok]: PUBLISH/SUBSCRIBE with two clients (2 ms) [ok]: SPUBLISH/SSUBSCRIBE after UNSUBSCRIBE without arguments (2 ms) [ok]: PUBLISH/SUBSCRIBE after UNSUBSCRIBE without arguments (1 ms) [ok]: SSUBSCRIBE to one channel more than once (0 ms) [ok]: SUBSCRIBE to one channel more than once (1 ms) [ok]: SUNSUBSCRIBE from non-subscribed channels (1 ms) [ok]: PUBSUB command basics (0 ms) [ok]: UNSUBSCRIBE from non-subscribed channels (1 ms) [ok]: SPUBLISH/SSUBSCRIBE with two clients (1 ms) [ok]: SPUBLISH/SSUBSCRIBE with PUBLISH/SUBSCRIBE (1 ms) [ok]: PUBLISH/PSUBSCRIBE basics (3 ms) [ok]: PUBLISH/PSUBSCRIBE with two clients (2 ms) [ok]: PUBLISH/PSUBSCRIBE after PUNSUBSCRIBE without arguments (2 ms) [ok]: Scan mode (122 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: Fuzzer corrupt restore payloads - sanitize_dump: no (10132 ms) [ok]: PubSubShard with CLIENT REPLY OFF (101 ms) [ok]: PubSub messages with CLIENT REPLY OFF (116 ms) [ok]: PUNSUBSCRIBE from non-subscribed channels (1 ms) [ok]: NUMSUB returns numbers, not strings (#1561) (0 ms) [ok]: NUMPATs returns the number of unique patterns (3 ms) [ok]: Mix SUBSCRIBE and PSUBSCRIBE (1 ms) [ok]: PUNSUBSCRIBE and UNSUBSCRIBE should always reply (1 ms) [ok]: Keyspace notifications: we receive keyspace notifications (53 ms) [ok]: corrupt payload: fuzzer findings - quicklist ziplist tail followed by extra data which start with 0xff (222 ms) [ok]: Keyspace notifications: we receive keyevent notifications (60 ms) [ok]: Keyspace notifications: we can receive both kind of events (1 ms) [ok]: Keyspace notifications: we are able to mask events (1 ms) [ok]: Keyspace notifications: general events test (3 ms) [ok]: Keyspace notifications: list events test (2 ms) [ok]: Keyspace notifications: set events test (2 ms) [ok]: Keyspace notifications: zset events test (2 ms) [ok]: Keyspace notifications: hash events test (2 ms) [ok]: Keyspace notifications: stream events test (4 ms) [ok]: Make the old master a replica of the new one and check conditions (1005 ms) [ok]: dismiss all data types memory (1350 ms) [ok]: corrupt payload: fuzzer findings - dict init to huge size (220 ms) [ok]: Detect write load to master (1001 ms) [ok]: Keyspace notifications: expired events (triggered expire) (202 ms) [ok]: setup replication for following tests (101 ms) [ok]: publish message to master and receive on replica (1 ms) [ok]: corrupt payload: fuzzer findings - huge string (218 ms) [ok]: Keyspace notifications: expired events (background expire) (220 ms) [ok]: Keyspace notifications: evicted events (2 ms) [ok]: Keyspace notifications: test CONFIG GET/SET of event flags (2 ms) [ok]: Keyspace notifications: new key test (2 ms) [ok]: publish to self inside multi (1 ms) [ok]: publish to self inside script (1 ms) [ok]: unsubscribe inside multi, and publish to self (2 ms) [40/91 done]: unit/pubsub (1 seconds) Testing unit/slowlog [ok]: PSYNC2: Full resync after Master restart when too many key expired (2034 ms) [ok]: corrupt payload: fuzzer findings - stream PEL without consumer (220 ms) [ok]: SLOWLOG - check that it starts with an empty log (0 ms) [ok]: corrupt payload: fuzzer findings - stream listpack valgrind issue (125 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 33739) (1 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (2 ms) [ok]: PSYNC2: --- CYCLE 2 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #4 as master (1 ms) [ok]: PSYNC2: Set #0 to replicate from #4 (0 ms) [41/91 done]: integration/psync2-master-restart (8 seconds) Testing unit/scripting [ok]: SLOWLOG - only logs commands taking more time than specified (201 ms) [ok]: SLOWLOG - zero max length is correctly handled (11 ms) [ok]: SLOWLOG - max entries is correctly handled (10 ms) [ok]: SLOWLOG - GET optional argument to limit output len works (3 ms) [ok]: SLOWLOG - RESET subcommand works (0 ms) [ok]: corrupt payload: fuzzer findings - stream with bad lpFirst (219 ms) [ok]: Redis compatibility global exists (0 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (1 ms) [ok]: EVAL - Return _G (0 ms) [ok]: EVAL - Return table with a metatable that raise error (1 ms) [ok]: EVAL - Return table with a metatable that call redict (0 ms) [ok]: EVAL - Lua integer -> Redict protocol type conversion (1 ms) [ok]: EVAL - Lua string -> Redict protocol type conversion (0 ms) [ok]: EVAL - Lua true boolean -> Redict protocol type conversion (1 ms) [ok]: EVAL - Lua false boolean -> Redict protocol type conversion (0 ms) [ok]: EVAL - Lua status code reply -> Redict protocol type conversion (1 ms) [ok]: EVAL - Lua error reply -> Redict protocol type conversion (0 ms) [ok]: EVAL - Lua table -> Redict protocol type conversion (1 ms) [ok]: EVAL - Are the KEYS and ARGV arrays populated correctly? (0 ms) [ok]: EVAL - is Lua able to call Redict API? (1 ms) [ok]: EVAL - Redict integer -> Lua type conversion (0 ms) [ok]: EVAL - Lua number -> Redict integer conversion (1 ms) [ok]: EVAL - Redict bulk -> Lua type conversion (1 ms) [ok]: EVAL - Redict multi bulk -> Lua type conversion (1 ms) [ok]: EVAL - Redict status reply -> Lua type conversion (0 ms) [ok]: EVAL - Redict error reply -> Lua type conversion (1 ms) [ok]: EVAL - Redict nil bulk reply -> Lua type conversion (0 ms) [ok]: EVAL - Is the Lua client using the currently selected DB? (1 ms) [ok]: EVAL - SELECT inside Lua should not affect the caller (1 ms) [ok]: EVAL - Scripts do not block on blpop command (1 ms) [ok]: EVAL - Scripts do not block on brpop command (0 ms) [ok]: EVAL - Scripts do not block on brpoplpush command (0 ms) [ok]: EVAL - Scripts do not block on blmove command (1 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (1 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (1 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (1 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (1 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option -- non empty stream (1 ms) [ok]: EVAL - Scripts can run non-deterministic commands (1 ms) [ok]: EVAL - No arguments to redict.call/pcall is considered an error (0 ms) [ok]: EVAL - redict.call variant raises a Lua error on Redict cmd error (1) (1 ms) [ok]: EVAL - redict.call variant raises a Lua error on Redict cmd error (1) (0 ms) [ok]: EVAL - redict.call variant raises a Lua error on Redict cmd error (1) (1 ms) [ignore]: EVAL - JSON string encoding a string larger than 2GB: large memory flag not provided [ok]: EVAL - JSON numeric decoding (0 ms) [ok]: EVAL - JSON string decoding (1 ms) [ok]: EVAL - JSON smoke test (0 ms) [ok]: EVAL - cmsgpack can pack double? (1 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [42/91 done]: unit/pubsubshard (2 seconds) Testing unit/functions [ok]: corrupt payload: fuzzer findings - stream listpack lpPrev valgrind issue (124 ms) [ok]: SLOWLOG - logged entry sanity check (200 ms) [ok]: SLOWLOG - Certain commands are omitted that contain sensitive information (4 ms) [ok]: SLOWLOG - Some commands can redact sensitive fields (2 ms) [ok]: SLOWLOG - Rewritten commands are logged as their original command (5 ms) [ok]: SLOWLOG - commands with too many arguments are trimmed (1 ms) [ok]: SLOWLOG - too long arguments are trimmed (1 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (185 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (2 ms) [ok]: EVAL - Numerical sanity check from bitop (0 ms) [ok]: EVAL - Verify minimal bitop functionality (1 ms) [ok]: EVAL - Able to parse trailing comments (0 ms) [ok]: EVAL_RO - Successful case (1 ms) [ok]: EVAL_RO - Cannot run write commands (0 ms) [ok]: redict.sha1hex() implementation (1 ms) [ok]: FUNCTION - Basic usage (0 ms) [ok]: FUNCTION - Load with unknown argument (0 ms) [ok]: FUNCTION - Create an already exiting library raise error (1 ms) [ok]: FUNCTION - Create an already exiting library raise error (case insensitive) (0 ms) [ok]: FUNCTION - Create a library with wrong name format (0 ms) [ok]: FUNCTION - Create library with unexisting engine (0 ms) [ok]: FUNCTION - Test uncompiled script (0 ms) [ok]: FUNCTION - test replace argument (0 ms) [ok]: FUNCTION - test function case insensitive (0 ms) [ok]: FUNCTION - test replace argument with failure keeps old libraries (1 ms) [ok]: FUNCTION - test function delete (0 ms) [ok]: FUNCTION - test fcall bad arguments (0 ms) [ok]: FUNCTION - test fcall bad number of keys arguments (1 ms) [ok]: FUNCTION - test fcall negative number of keys (0 ms) [ok]: FUNCTION - test delete on not exiting library (0 ms) [ok]: FUNCTION - test function kill when function is not running (0 ms) [ok]: FUNCTION - test wrong subcommand (1 ms) [ok]: FUNCTION - test loading from rdb (1 ms) [ok]: FUNCTION - test debug reload different options (2 ms) [ok]: FUNCTION - test debug reload with nosave and noflush (22 ms) [ok]: FUNCTION - test flushall and flushdb do not clean functions (1 ms) [ok]: FUNCTION - test function dump and restore (1 ms) [ok]: FUNCTION - test function dump and restore with flush argument (1 ms) [ok]: FUNCTION - test function dump and restore with append argument (1 ms) [ok]: FUNCTION - test function dump and restore with replace argument (1 ms) [ok]: FUNCTION - test function restore with bad payload do not drop existing functions (0 ms) [ok]: FUNCTION - test function restore with wrong number of arguments (1 ms) [ok]: FUNCTION - test fcall_ro with write command (0 ms) [ok]: FUNCTION - test fcall_ro with read only commands (1 ms) [ok]: FUNCTION - test keys and argv (0 ms) [ok]: FUNCTION - test command get keys on fcall (0 ms) [ok]: FUNCTION - test command get keys on fcall_ro (0 ms) [ok]: corrupt payload: fuzzer findings - stream with non-integer entry id (216 ms) [ok]: SLOWLOG - EXEC is not logged, just executed commands (201 ms) [ok]: SLOWLOG - can clean older entries (201 ms) [ok]: corrupt payload: fuzzer findings - empty quicklist (221 ms) [ok]: FUNCTION - test function kill (404 ms) [ok]: corrupt payload: fuzzer findings - empty zset (220 ms) [ok]: PSYNC2: Set #1 to replicate from #3 (0 ms) [ok]: SLOWLOG - can be disabled (402 ms) [ok]: SLOWLOG - count must be >= -1 (0 ms) [ok]: SLOWLOG - get all slow logs (2 ms) [ok]: Connecting as a replica (2128 ms) [ok]: SLOWLOG - blocking command is reported only after unblocked (3 ms) [ok]: corrupt payload: fuzzer findings - hash with len of 0 (218 ms) [43/91 done]: unit/slowlog (2 seconds) Testing unit/maxmemory [ok]: FUNCTION - test script kill not working on function (407 ms) [ok]: EVAL timeout with slow verbatim Lua script from AOF (4849 ms) [ok]: corrupt payload: fuzzer findings - hash listpack first element too long entry len (219 ms) [ok]: Measures elapsed time os.clock() (1001 ms) [ok]: Prohibit dangerous lua methods in sandbox (1 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (3 ms) [ok]: Globals protection reading an undeclared global variable (0 ms) [ok]: Globals protection setting an undeclared global* (0 ms) [ok]: lua bit.tohex bug (1 ms) [ok]: Test an example script DECR_IF_GT (2 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: false (54 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: EVAL can process writes from AOF in read-only replicas (229 ms) [ok]: Test redict-check-aof for old style resp AOF (6 ms) [ok]: Test redict-check-aof for old style resp AOF - has data in the same format as manifest (7 ms) [ok]: Test redict-check-aof for old style rdb-preamble AOF (7 ms) [ok]: Test redict-check-aof for Multi Part AOF with resp AOF base (6 ms) [ok]: Test redict-check-aof for Multi Part AOF with rdb-preamble AOF base (8 ms) [ok]: corrupt payload: fuzzer findings - stream double free listpack when insert dup node to rax returns 0 (217 ms) [ok]: Test redict-check-aof for Multi Part AOF contains a format error (7 ms) [ok]: Test redict-check-aof only truncates the last file for Multi Part AOF in fix mode (13 ms) [ok]: Test redict-check-aof only truncates the last file for Multi Part AOF in truncate-to-timestamp mode (7 ms) [ok]: FUNCTION - test function kill not working on eval (405 ms) [ok]: FUNCTION - test function flush (2 ms) [ok]: FUNCTION - test function wrong argument (0 ms) [ok]: FLUSHDB / FLUSHALL should persist in AOF (5 ms) [ok]: corrupt payload: fuzzer findings - LCS OOM (219 ms) [44/91 done]: integration/aof (15 seconds) Testing unit/introspection [ok]: corrupt payload: fuzzer findings - gcc asan reports false leak on assert (123 ms) [ok]: PING (1 ms) [ok]: CLIENT LIST (0 ms) [ok]: CLIENT LIST with IDs (0 ms) [ok]: CLIENT INFO (1 ms) [ok]: CLIENT KILL with illegal arguments (1 ms) [ok]: PSYNC2: Set #2 to replicate from #4 (1 ms) [ok]: corrupt payload: fuzzer findings - lpFind invalid access (122 ms) [ok]: eviction due to input buffer of a dead client, client eviction: false (686 ms) [ok]: Connect a replica to the master instance (102 ms) [ok]: FUNCTION - creation is replicated to replica (0 ms) [ok]: FUNCTION - call on replica (0 ms) [ok]: FUNCTION - restore is replicated to replica (1 ms) [ok]: FUNCTION - delete is replicated to replica (0 ms) [ok]: FUNCTION - flush is replicated to replica (1 ms) [ok]: Disconnecting the replica from master instance (102 ms) [ok]: FUNCTION - test replication to replica on rdb phase (0 ms) [ok]: FUNCTION - test replication to replica on rdb phase info command (1 ms) [ok]: FUNCTION - create on read only replica (0 ms) [ok]: FUNCTION - delete on read only replica (0 ms) [ok]: FUNCTION - function effect is replicated to replica (1 ms) [ok]: FUNCTION - modify key space of read only replica (0 ms) [ok]: corrupt payload: fuzzer findings - invalid access in ziplist tail prevlen decoding (221 ms) [ok]: corrupt payload: fuzzer findings - zset zslInsert with a NAN score (221 ms) [ok]: test various edge cases of repl topology changes with missing pings at the end (2519 ms) [ok]: corrupt payload: fuzzer findings - streamLastValidID panic (219 ms) [ok]: Piping raw protocol (1718 ms) [ok]: Options -X with illegal argument (5 ms) [ok]: DUMP RESTORE with -x option (8 ms) [ok]: DUMP RESTORE with -X option (9 ms) [45/91 done]: integration/redict-cli (9 seconds) Testing unit/introspection-2 [ok]: corrupt payload: fuzzer findings - valgrind fishy value warning (217 ms) [ok]: PSYNC2: Set #3 to replicate from #4 (1 ms) [ok]: The microsecond part of the TIME command will not overflow (0 ms) [ok]: EVAL does not leak in the Lua stack (1676 ms) [ok]: Call Redict command with many args from Lua (issue #1764) (2 ms) [ok]: Number conversion precision test (issue #1118) (0 ms) [ok]: String containing number precision test (regression of issue #1118) (0 ms) [ok]: Verify negative arg count is error instead of crash (issue #1842) (0 ms) [ok]: Scripts can handle commands with incorrect arity (1 ms) [ok]: Correct handling of reused argv (issue #1939) (0 ms) [ok]: Functions in the Redict namespace are able to report errors (1 ms) [ok]: CLUSTER RESET can not be invoke from within a script (0 ms) [ok]: Script with RESP3 map (2 ms) [ok]: corrupt payload: fuzzer findings - empty set listpack (219 ms) [ok]: FUNCTION can processes create, delete and flush commands in AOF when doing "debug loadaof" in read-only slaves (326 ms) [ok]: eviction due to output buffers of pubsub, client eviction: false (1135 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: true (68 ms) [ok]: Script return recursive object (247 ms) [ok]: LIBRARIES - test shared function can access default globals (0 ms) [ok]: LIBRARIES - usage and code sharing (1 ms) [ok]: LIBRARIES - test registration failure revert the entire load (1 ms) [ok]: LIBRARIES - test registration function name collision (0 ms) [ok]: LIBRARIES - test registration function name collision on same library (0 ms) [ok]: LIBRARIES - test registration with no argument (0 ms) [ok]: LIBRARIES - test registration with only name (0 ms) [ok]: LIBRARIES - test registration with to many arguments (0 ms) [ok]: LIBRARIES - test registration with no string name (0 ms) [ok]: LIBRARIES - test registration with wrong name format (1 ms) [ok]: LIBRARIES - test registration with empty name (0 ms) [ok]: LIBRARIES - math.random from function load (0 ms) [ok]: LIBRARIES - redict.call from function load (0 ms) [ok]: LIBRARIES - redict.setresp from function load (0 ms) [ok]: LIBRARIES - redict.set_repl from function load (0 ms) [ok]: LIBRARIES - redict.acl_check_cmd from function load (0 ms) [ok]: LIBRARIES - malicious access test (1 ms) [ok]: LIBRARIES - delete removed all functions on library (1 ms) [ok]: LIBRARIES - register function inside a function (0 ms) [ok]: LIBRARIES - register library with no functions (1 ms) [ok]: Script check unpack with massive arguments (42 ms) [ok]: Script read key with expiration set (1 ms) [ok]: Script del key with expiration set (0 ms) [ok]: Script ACL check (2 ms) [ok]: Binary code loading failed (0 ms) [ok]: Try trick global protection 1 (1 ms) [ok]: Try trick global protection 2 (0 ms) [ok]: Try trick global protection 3 (1 ms) [ok]: Try trick global protection 4 (0 ms) [ok]: Try trick readonly table on redict table (1 ms) [ok]: Try trick readonly table on json table (0 ms) [ok]: Try trick readonly table on cmsgpack table (0 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (0 ms) [ok]: Test dofile are not available (1 ms) [ok]: Test print are not available (0 ms) [ok]: corrupt payload: fuzzer findings - set with duplicate elements causes sdiff to hang (218 ms) [46/91 done]: integration/corrupt-dump (15 seconds) Testing unit/limits [ok]: LIBRARIES - load timeout (502 ms) [ok]: LIBRARIES - verify global protection on the load run (0 ms) [ok]: LIBRARIES - named arguments (0 ms) [ok]: LIBRARIES - named arguments, bad function name (0 ms) [ok]: LIBRARIES - named arguments, bad callback type (0 ms) [ok]: LIBRARIES - named arguments, bad description (0 ms) [ok]: LIBRARIES - named arguments, unknown argument (1 ms) [ok]: LIBRARIES - named arguments, missing function name (0 ms) [ok]: LIBRARIES - named arguments, missing callback (0 ms) [ok]: FUNCTION - test function restore with function name collision (3 ms) [ok]: FUNCTION - test function list with code (1 ms) [ok]: FUNCTION - test function list with pattern (0 ms) [ok]: FUNCTION - test function list wrong argument (0 ms) [ok]: FUNCTION - test function list with bad argument to library name (0 ms) [ok]: FUNCTION - test function list withcode multiple times (0 ms) [ok]: FUNCTION - test function list libraryname multiple times (0 ms) [ok]: FUNCTION - verify OOM on function load and function restore (2 ms) [ok]: FUNCTION - verify allow-omm allows running any command (0 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (403 ms) [ok]: CLIENT KILL maxAGE will kill old clients (2001 ms) [ok]: CLIENT KILL SKIPME YES/NO will kill all clients (3 ms) [ok]: CLIENT command unhappy path coverage (2 ms) [ok]: PSYNC2: cluster is consistent after failover (1 ms) [ok]: eviction due to input buffer of a dead client, client eviction: true (728 ms) [ok]: CLIENT KILL close the client connection during bgsave (98 ms) [ok]: FUNCTION - wrong flags type named arguments (0 ms) [ok]: FUNCTION - wrong flag type (1 ms) [ok]: FUNCTION - unknown flag (0 ms) [ok]: FUNCTION - write script on fcall_ro (0 ms) [ok]: FUNCTION - write script with no-writes flag (1 ms) [ok]: FUNCTION - deny oom (0 ms) [ok]: FUNCTION - deny oom on no-writes function (1 ms) [ok]: FUNCTION - allow stale (2 ms) [ok]: FUNCTION - redict version api (0 ms) [ok]: FUNCTION - legacy redis version is hard-coded to 7.2.4 (1 ms) [ok]: FUNCTION - function stats (1 ms) [ok]: FUNCTION - function stats reloaded correctly from rdb (1 ms) [ok]: FUNCTION - function stats delete library (0 ms) [ok]: FUNCTION - test function stats on loading failure (0 ms) [ok]: FUNCTION - function stats cleaned after flush (1 ms) [ok]: FUNCTION - function test empty engine (0 ms) [ok]: FUNCTION - function test unknown metadata value (0 ms) [ok]: FUNCTION - function test no name (0 ms) [ok]: FUNCTION - function test multiple names (1 ms) [ok]: FUNCTION - function test name with quotes (0 ms) [ok]: FUNCTION - trick global protection 1 (0 ms) [ok]: FUNCTION - test getmetatable on script load (0 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (188 ms) [ok]: CLIENT REPLY OFF/ON: disable all commands reply (51 ms) [ok]: CLIENT REPLY SKIP: skip the next command reply (50 ms) [47/91 done]: unit/functions (4 seconds) Testing unit/obuf-limits [ok]: CLIENT REPLY ON: unset SKIP flag (50 ms) [ok]: MONITOR can log executed commands (1 ms) [ok]: MONITOR can log commands issued by the scripting engine (1 ms) [ok]: MONITOR can log commands issued by functions (1 ms) [ok]: MONITOR supports redacting command arguments (2 ms) [ok]: MONITOR correctly handles multi-exec cases (2 ms) [ok]: MONITOR log blocked command only once (3 ms) [ok]: CLIENT GETNAME should return NIL if name is not assigned (1 ms) [ok]: CLIENT GETNAME check if name set correctly (0 ms) [ok]: CLIENT LIST shows empty fields for unassigned names (0 ms) [ok]: CLIENT SETNAME does not accept spaces (1 ms) [ok]: CLIENT SETNAME can assign a name to this connection (0 ms) [ok]: CLIENT SETNAME can change the name of an existing connection (0 ms) [ok]: After CLIENT SETNAME, connection can still be closed (1 ms) [ok]: CLIENT SETINFO can set a library name to this connection (1 ms) [ok]: CLIENT SETINFO invalid args (1 ms) [ok]: RESET does NOT clean library name (0 ms) [ok]: CLIENT SETINFO can clear library name (0 ms) [ok]: Timedout script does not cause a false dead client (181 ms) [ok]: CONFIG SET client-output-buffer-limit (2 ms) [ok]: Check if maxclients works refusing connections (906 ms) [48/91 done]: unit/limits (1 seconds) Testing unit/bitops [ok]: Timedout script link is still usable after Lua returns (305 ms) [ok]: BITCOUNT against wrong type (1 ms) [ok]: BITCOUNT returns 0 against non existing key (0 ms) [ok]: BITCOUNT returns 0 with out of range indexes (1 ms) [ok]: BITCOUNT returns 0 with negative indexes where start > end (0 ms) [ok]: BITCOUNT against test vector #1 (0 ms) [ok]: BITCOUNT against test vector #2 (0 ms) [ok]: BITCOUNT against test vector #3 (1 ms) [ok]: BITCOUNT against test vector #4 (0 ms) [ok]: BITCOUNT against test vector #5 (0 ms) [ok]: dismiss client output buffer (5507 ms) [ok]: dismiss client query buffer (205 ms) [ok]: CONFIG save params special case handled properly (878 ms) [ok]: Timedout scripts and unblocked command (535 ms) [ok]: eviction due to output buffers of pubsub, client eviction: true (1103 ms) [ok]: CONFIG sanity (35 ms) [ok]: Without maxmemory small integers are shared (0 ms) [ok]: With maxmemory and non-LRU policy integers are still shared (0 ms) [ok]: With maxmemory and LRU policy integers are not shared (1 ms) [ok]: CONFIG REWRITE sanity (162 ms) [ok]: Timedout scripts that modified data can't be killed by SCRIPT KILL (205 ms) [ok]: SHUTDOWN NOSAVE can kill a timedout script anyway (4 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: BITCOUNT fuzzing without start/end (841 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-random) (248 ms) [ok]: Before the replica connects we issue two EVAL commands (1 ms) [ok]: Connect a replica to the master instance (103 ms) [ok]: Replication of script multiple pushes to list with BLPOP (1 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: ziplist implementation: value encoding and backlink (11509 ms) [ok]: CONFIG REWRITE handles save and shutdown properly (661 ms) [ok]: CONFIG SET with multiple args (1 ms) [ok]: CONFIG SET rollback on set error (1 ms) [ok]: CONFIG SET rollback on apply error (3 ms) [ok]: CONFIG SET duplicate configs (0 ms) [ok]: CONFIG SET set immutable (0 ms) [ok]: CONFIG GET hidden configs (7 ms) [ok]: CONFIG GET multiple args (1 ms) [ok]: TTL, TYPE and EXISTS do not alter the last access time of a key (3003 ms) [ok]: redict-server command line arguments - error cases (73 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lru) (557 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=no, replica diskless=disabled (15060 ms) [ok]: redict-server command line arguments - allow passing option name and option value in the same arg (216 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: redict-server command line arguments - wrong usage that we support anyway (217 ms) [ok]: BITCOUNT fuzzing with start/end (1111 ms) [ok]: BITCOUNT with start, end (2 ms) [ok]: BITCOUNT with illegal arguments (1 ms) [ok]: BITCOUNT against non-integer value (1 ms) [ok]: BITCOUNT regression test for github issue #582 (1 ms) [ok]: BITCOUNT misaligned prefix (0 ms) [ok]: BITCOUNT misaligned prefix + full words + remainder (1 ms) [ok]: BITOP NOT (empty string) (0 ms) [ok]: BITOP NOT (known string) (0 ms) [ok]: BITOP where dest and target are the same key (0 ms) [ok]: BITOP AND|OR|XOR don't change the string with single input key (1 ms) [ok]: BITOP missing key is considered a stream of zero (1 ms) [ok]: BITOP shorter keys are zero-padded to the key with max length (1 ms) [ok]: dismiss replication backlog (1536 ms) [49/91 done]: integration/dismiss-mem (9 seconds) Testing unit/bitfield [ok]: redict-server command line arguments - allow option value to use the `--` prefix (219 ms) [ok]: BITFIELD signed SET and GET basics (1 ms) [ok]: BITFIELD unsigned SET and GET basics (1 ms) [ok]: BITFIELD signed SET and GET together (0 ms) [ok]: BITFIELD unsigned with SET, GET and INCRBY arguments (1 ms) [ok]: BITFIELD with only key as argument (0 ms) [ok]: BITFIELD # form (1 ms) [ok]: BITFIELD basic INCRBY form (1 ms) [ok]: BITFIELD chaining of multiple commands (0 ms) [ok]: BITFIELD unsigned overflow wrap (1 ms) [ok]: BITFIELD unsigned overflow sat (0 ms) [ok]: BITFIELD signed overflow wrap (0 ms) [ok]: BITFIELD signed overflow sat (0 ms) [ok]: Connect a replica to the master instance (102 ms) [ok]: redict.replicate_commands() can be issued anywhere now (0 ms) [ok]: redict.set_repl() can be issued before replicate_commands() now (0 ms) [ok]: redict.set_repl() don't accept invalid values (1 ms) [ok]: Test selective replication of certain Redict commands from Lua (1 ms) [ok]: PRNG is seeded randomly for command replication (0 ms) [ok]: Using side effects is not a problem with command replication (1 ms) [ok]: Chained replicas disconnect when replica re-connect with the same master (2919 ms) [ok]: AOF rewrite during write load: RDB preamble=no (25736 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lfu) (775 ms) [ok]: redict-server command line arguments - option name and option value in the same arg and `--` prefix (219 ms) [ok]: BITOP and fuzzing (453 ms) [ok]: BITFIELD overflow detection fuzzing (361 ms) [ok]: Turning off AOF kills the background writing child if any (105 ms) [ok]: AOF rewrite of list with listpack encoding, string data (105 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-lru) (596 ms) [ok]: AOF rewrite of list with quicklist encoding, string data (238 ms) [ok]: AOF rewrite of list with listpack encoding, int data (53 ms) [ok]: BITOP or fuzzing (586 ms) [ok]: test RESP2/2 big number protocol parsing (0 ms) [ok]: test RESP2/2 malformed big number protocol parsing (1 ms) [ok]: test RESP2/2 map protocol parsing (1 ms) [ok]: test RESP2/2 set protocol parsing (0 ms) [ok]: test RESP2/2 double protocol parsing (1 ms) [ok]: test RESP2/2 null protocol parsing (0 ms) [ok]: test RESP2/2 verbatim protocol parsing (1 ms) [ok]: test RESP2/2 true protocol parsing (0 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (0 ms) [ok]: test RESP2/3 malformed big number protocol parsing (1 ms) [ok]: test RESP2/3 map protocol parsing (0 ms) [ok]: test RESP2/3 set protocol parsing (0 ms) [ok]: test RESP2/3 double protocol parsing (1 ms) [ok]: test RESP2/3 null protocol parsing (0 ms) [ok]: test RESP2/3 verbatim protocol parsing (1 ms) [ok]: BITFIELD overflow wrap fuzzing (575 ms) [ok]: test RESP2/3 true protocol parsing (0 ms) [ok]: BITFIELD regression for #3221 (0 ms) [ok]: test RESP2/3 false protocol parsing (1 ms) [ok]: test RESP3/2 big number protocol parsing (0 ms) [ok]: test RESP3/2 malformed big number protocol parsing (1 ms) [ok]: test RESP3/2 map protocol parsing (0 ms) [ok]: test RESP3/2 set protocol parsing (1 ms) [ok]: test RESP3/2 double protocol parsing (0 ms) [ok]: BITFIELD regression for #3564 (3 ms) [ok]: BITFIELD_RO with only key as argument (0 ms) [ok]: test RESP3/2 null protocol parsing (0 ms) [ok]: BITFIELD_RO fails when write option is used (0 ms) [ok]: test RESP3/2 verbatim protocol parsing (0 ms) [ok]: test RESP3/2 true protocol parsing (0 ms) [ok]: test RESP3/2 false protocol parsing (0 ms) [ok]: test RESP3/3 big number protocol parsing (1 ms) [ok]: test RESP3/3 malformed big number protocol parsing (0 ms) [ok]: test RESP3/3 map protocol parsing (1 ms) [ok]: test RESP3/3 set protocol parsing (1 ms) [ok]: test RESP3/3 double protocol parsing (0 ms) [ok]: test RESP3/3 null protocol parsing (1 ms) [ok]: test RESP3/3 verbatim protocol parsing (0 ms) [ok]: test RESP3/3 true protocol parsing (1 ms) [ok]: test RESP3/3 false protocol parsing (0 ms) [ok]: test resp3 attribute protocol parsing (0 ms) [ok]: Script block the time during execution (11 ms) [ok]: Script delete the expired key (3 ms) [ok]: TIME command using cached time (11 ms) [ok]: AOF rewrite of list with quicklist encoding, int data (227 ms) [ok]: Script block the time in some expiration related commands (82 ms) [ok]: RESTORE expired keys with expiration time (11 ms) [50/91 done]: integration/psync2-pingoff (16 seconds) Testing unit/geo [ok]: AOF rewrite of set with intset encoding, string data (105 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-lfu) (523 ms) [ok]: GEO with wrong type src key (2 ms) [ok]: GEO with non existing src key (1 ms) [ok]: GEO BYLONLAT with empty search (1 ms) [ok]: GEO BYMEMBER with non existing member (1 ms) [ok]: GEOADD create (0 ms) [ok]: GEOADD update (0 ms) [ok]: GEOADD update with CH option (1 ms) [ok]: GEOADD update with NX option (0 ms) [ok]: GEOADD update with XX option (0 ms) [ok]: BITOP xor fuzzing (410 ms) [ok]: GEOADD update with CH NX option (1 ms) [ok]: GEOADD update with CH XX option (0 ms) [ok]: GEOADD update with XX NX option will return syntax error (0 ms) [ok]: GEOADD update with invalid option (0 ms) [ok]: GEOADD invalid coordinates (1 ms) [ok]: GEOADD multi add (0 ms) [ok]: Check geoset values (0 ms) [ok]: GEORADIUS simple (sorted) (1 ms) [ok]: GEORADIUS_RO simple (sorted) (0 ms) [ok]: GEOSEARCH simple (sorted) (0 ms) [ok]: GEOSEARCH FROMLONLAT and FROMMEMBER cannot exist at the same time (1 ms) [ok]: GEOSEARCH FROMLONLAT and FROMMEMBER one must exist (0 ms) [ok]: GEOSEARCH BYRADIUS and BYBOX cannot exist at the same time (0 ms) [ok]: GEOSEARCH BYRADIUS and BYBOX one must exist (0 ms) [ok]: GEOSEARCH with STOREDIST option (1 ms) [ok]: GEORADIUS withdist (sorted) (0 ms) [ok]: GEOSEARCH withdist (sorted) (0 ms) [ok]: GEORADIUS with COUNT (1 ms) [ok]: redict-server command line arguments - save with empty input (1110 ms) [ok]: GEORADIUS with multiple WITH* tokens (1 ms) [ok]: GEORADIUS with ANY not sorted by default (0 ms) [ok]: GEORADIUS with ANY sorted by ASC (0 ms) [ok]: GEORADIUS with ANY but no COUNT (0 ms) [ok]: GEORADIUS with COUNT but missing integer argument (0 ms) [ok]: GEORADIUS with COUNT DESC (0 ms) [ok]: GEORADIUS HUGE, issue #2767 (0 ms) [ok]: GEORADIUSBYMEMBER simple (sorted) (1 ms) [ok]: GEORADIUSBYMEMBER_RO simple (sorted) (0 ms) [ok]: GEORADIUSBYMEMBER search areas contain satisfied points in oblique direction (2 ms) [ok]: GEORADIUSBYMEMBER crossing pole search (0 ms) [ok]: GEOSEARCH FROMMEMBER simple (sorted) (0 ms) [ok]: GEOSEARCH vs GEORADIUS (1 ms) [ok]: GEOSEARCH non square, long and narrow (0 ms) [ok]: GEOSEARCH corner point test (0 ms) [ok]: GEORADIUSBYMEMBER withdist (sorted) (0 ms) [ok]: GEOHASH is able to return geohash strings (0 ms) [ok]: GEOHASH with only key as argument (0 ms) [ok]: GEOPOS simple (1 ms) [ok]: GEOPOS missing element (1 ms) [ok]: GEOPOS with only key as argument (0 ms) [ok]: GEODIST simple & unit (1 ms) [ok]: GEODIST missing elements (0 ms) [ok]: GEORADIUS STORE option: syntax error (1 ms) [ok]: GEOSEARCHSTORE STORE option: syntax error (0 ms) [ok]: GEORANGE STORE option: incompatible options (1 ms) [ok]: GEORANGE STORE option: plain usage (1 ms) [ok]: GEORADIUSBYMEMBER STORE/STOREDIST option: plain usage (1 ms) [ok]: GEOSEARCHSTORE STORE option: plain usage (1 ms) [ok]: GEORANGE STOREDIST option: plain usage (0 ms) [ok]: GEOSEARCHSTORE STOREDIST option: plain usage (1 ms) [ok]: GEORANGE STOREDIST option: COUNT ASC and DESC (1 ms) [ok]: GEOSEARCH the box spans -180° or 180° (1 ms) [ok]: GEOSEARCH with small distance (0 ms) [ok]: Redis compatibility global exists (0 ms) [ok]: Script - disallow write on OOM (1 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (0 ms) [ok]: EVAL - Return _G (1 ms) [ok]: EVAL - Return table with a metatable that raise error (0 ms) [ok]: EVAL - Return table with a metatable that call redict (0 ms) [ok]: EVAL - Lua integer -> Redict protocol type conversion (0 ms) [ok]: EVAL - Lua string -> Redict protocol type conversion (0 ms) [ok]: EVAL - Lua true boolean -> Redict protocol type conversion (0 ms) [ok]: EVAL - Lua false boolean -> Redict protocol type conversion (1 ms) [ok]: EVAL - Lua status code reply -> Redict protocol type conversion (0 ms) [ok]: EVAL - Lua error reply -> Redict protocol type conversion (0 ms) [ok]: EVAL - Lua table -> Redict protocol type conversion (1 ms) [ok]: EVAL - Are the KEYS and ARGV arrays populated correctly? (0 ms) [ok]: EVAL - is Lua able to call Redict API? (1 ms) [ok]: EVALSHA - Can we call a SHA1 if already defined? (0 ms) [ok]: EVALSHA_RO - Can we call a SHA1 if already defined? (0 ms) [ok]: EVALSHA - Can we call a SHA1 in uppercase? (0 ms) [ok]: EVALSHA - Do we get an error on invalid SHA1? (0 ms) [ok]: EVALSHA - Do we get an error on non defined SHA1? (0 ms) [ok]: EVAL - Redict integer -> Lua type conversion (1 ms) [ok]: EVAL - Lua number -> Redict integer conversion (0 ms) [ok]: EVAL - Redict bulk -> Lua type conversion (1 ms) [ok]: EVAL - Redict multi bulk -> Lua type conversion (1 ms) [ok]: EVAL - Redict status reply -> Lua type conversion (0 ms) [ok]: EVAL - Redict error reply -> Lua type conversion (1 ms) [ok]: EVAL - Redict nil bulk reply -> Lua type conversion (0 ms) [ok]: EVAL - Is the Lua client using the currently selected DB? (1 ms) [ok]: EVAL - SELECT inside Lua should not affect the caller (1 ms) [ok]: EVAL - Scripts do not block on blpop command (0 ms) [ok]: EVAL - Scripts do not block on brpop command (1 ms) [ok]: EVAL - Scripts do not block on brpoplpush command (0 ms) [ok]: EVAL - Scripts do not block on blmove command (0 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (1 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (0 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (1 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (1 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option -- non empty stream (1 ms) [ok]: EVAL - Scripts can run non-deterministic commands (0 ms) [ok]: EVAL - No arguments to redict.call/pcall is considered an error (1 ms) [ok]: EVAL - redict.call variant raises a Lua error on Redict cmd error (1) (0 ms) [ok]: EVAL - redict.call variant raises a Lua error on Redict cmd error (1) (0 ms) [ok]: EVAL - redict.call variant raises a Lua error on Redict cmd error (1) (0 ms) [ignore]: EVAL - JSON string encoding a string larger than 2GB: large memory flag not provided [ok]: EVAL - JSON numeric decoding (0 ms) [ok]: EVAL - JSON string decoding (1 ms) [ok]: EVAL - JSON smoke test (0 ms) [ok]: EVAL - cmsgpack can pack double? (1 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [ok]: BITOP NOT fuzzing (74 ms) [ok]: BITOP with integer encoded source objects (1 ms) [ok]: BITOP with non string source key (0 ms) [ok]: BITOP with empty string after non empty string (issue #529) (0 ms) [ok]: BITPOS against wrong type (1 ms) [ok]: BITPOS will illegal arguments (1 ms) [ok]: BITPOS against non-integer value (1 ms) [ok]: BITPOS bit=0 with empty key returns 0 (1 ms) [ok]: AOF rewrite of set with hashtable encoding, string data (199 ms) [ok]: BITPOS bit=1 with empty key returns -1 (0 ms) [ok]: BITPOS bit=0 with string less than 1 word works (1 ms) [ok]: BITPOS bit=1 with string less than 1 word works (0 ms) [ok]: BITPOS bit=0 starting at unaligned address (1 ms) [ok]: BITPOS bit=1 starting at unaligned address (0 ms) [ok]: BITPOS bit=0 unaligned+full word+reminder (3 ms) [ok]: BITPOS bit=1 unaligned+full word+reminder (2 ms) [ok]: BITFIELD: setup slave (102 ms) [ok]: BITFIELD: write on master, read on slave (2 ms) [ok]: BITPOS bit=1 returns -1 if string is all 0 bits (7 ms) [ok]: BITFIELD_RO with only key as argument on read-only replica (0 ms) [ok]: BITFIELD_RO fails when write option is used on read-only replica (0 ms) [ok]: BITPOS bit=0 works with intervals (1 ms) [ok]: BITPOS bit=1 works with intervals (1 ms) [ok]: BITPOS bit=0 changes behavior if end is given (1 ms) [ok]: SETBIT/BITFIELD only increase dirty when the value changed (5 ms) [ok]: AOF rewrite of set with intset encoding, int data (105 ms) [ok]: redict-server command line arguments - take one bulk string with spaces for MULTI_ARG configs parsing (223 ms) [51/91 done]: unit/bitfield (2 seconds) Testing unit/memefficiency [ok]: EVAL - cmsgpack pack/unpack smoke test (250 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (0 ms) [ok]: EVAL - Numerical sanity check from bitop (0 ms) [ok]: EVAL - Verify minimal bitop functionality (0 ms) [ok]: EVAL - Able to parse trailing comments (1 ms) [ok]: EVAL_RO - Successful case (0 ms) [ok]: EVAL_RO - Cannot run write commands (1 ms) [ok]: SCRIPTING FLUSH - is able to clear the scripts cache? (22 ms) [ok]: SCRIPTING FLUSH ASYNC (12 ms) [ok]: SCRIPT EXISTS - can detect already defined scripts? (0 ms) [ok]: SCRIPT LOAD - is able to register scripts in the scripting cache (1 ms) [ok]: SORT is normally not alpha re-ordered for the scripting engine (0 ms) [ok]: SORT BY output gets ordered for scripting (1 ms) [ok]: SORT BY with GET gets ordered for scripting (1 ms) [ok]: redict.sha1hex() implementation (0 ms) [ok]: AOF rewrite of set with hashtable encoding, int data (200 ms) [ok]: cannot modify protected configuration - no (0 ms) [ok]: BITPOS bit=1 fuzzy testing using SETBIT (327 ms) [ok]: AOF rewrite of hash with listpack encoding, string data (106 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-random) (598 ms) [ok]: cannot modify protected configuration - local (6 ms) [ok]: Test replication partial resync: ok after delay (diskless: no, disabled, reconnect: 1) (9380 ms) [ok]: AOF rewrite of hash with hashtable encoding, string data (331 ms) [ok]: BITPOS bit=0 fuzzy testing using SETBIT (407 ms) [ok]: AOF rewrite of hash with listpack encoding, int data (55 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 67570) (1 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (1 ms) [ok]: PSYNC2: --- CYCLE 3 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #2 as master (0 ms) [ok]: PSYNC2: Set #4 to replicate from #2 (0 ms) [ok]: TOUCH alters the last access time of a key (3002 ms) [ok]: Fuzzer corrupt restore payloads - sanitize_dump: yes (10073 ms) [52/91 done]: integration/corrupt-dump-fuzzer (21 seconds) Testing unit/hyperloglog [ok]: AOF rewrite of hash with hashtable encoding, int data (237 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-ttl) (607 ms) [ok]: Memory efficiency with values in range 32 (821 ms) [ok]: AOF rewrite of zset with listpack encoding, string data (107 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: BITPOS/BITCOUNT fuzzy testing using SETBIT (395 ms) [53/91 done]: unit/bitops (5 seconds) Testing unit/lazyfree [ok]: Measures elapsed time os.clock() (1001 ms) [ok]: Prohibit dangerous lua methods in sandbox (0 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (2 ms) [ok]: Globals protection reading an undeclared global variable (0 ms) [ok]: Globals protection setting an undeclared global* (1 ms) [ok]: lua bit.tohex bug (0 ms) [ok]: Test an example script DECR_IF_GT (1 ms) [ok]: random numbers are random now (0 ms) [ok]: Scripting engine PRNG can be seeded correctly (1 ms) [ok]: AOF rewrite of zset with skiplist encoding, string data (319 ms) [ok]: AOF rewrite of zset with listpack encoding, int data (55 ms) [ok]: AOF rewrite of zset with skiplist encoding, int data (234 ms) [ok]: AOF rewrite functions (54 ms) [ok]: UNLINK can reclaim memory in background (476 ms) [ok]: Memory efficiency with values in range 64 (720 ms) [ok]: PSYNC2: Set #0 to replicate from #2 (1 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-random) (831 ms) [ok]: HyperLogLog self test passes (840 ms) [ok]: PFADD without arguments creates an HLL value (0 ms) [ok]: Approximated cardinality after creation is zero (0 ms) [ok]: PFADD returns 1 when at least 1 reg was modified (0 ms) [ok]: PFADD returns 0 when no reg was modified (0 ms) [ok]: PFADD works with empty string (regression) (1 ms) [ok]: PFCOUNT returns approximated cardinality of set (0 ms) [ok]: BGREWRITEAOF is delayed if BGSAVE is in progress (218 ms) [ok]: Operations in no-touch mode do not alter the last access time of a key (1102 ms) [ok]: TOUCH returns the number of existing keys specified (1 ms) [ok]: command stats for GEOADD (2 ms) [ok]: errors stats for GEOADD (1 ms) [ok]: command stats for EXPIRE (2 ms) [ok]: command stats for BRPOP (2 ms) [ok]: command stats for MULTI (3 ms) [ok]: BGREWRITEAOF is refused if already in progress (14 ms) [ok]: command stats for scripts (3 ms) [ok]: COMMAND COUNT get total number of Redict commands (0 ms) [ok]: COMMAND GETKEYS GET (0 ms) [ok]: COMMAND GETKEYSANDFLAGS (2 ms) [ok]: COMMAND GETKEYS MEMORY USAGE (0 ms) [ok]: COMMAND GETKEYS XGROUP (1 ms) [ok]: COMMAND GETKEYS EVAL with keys (0 ms) [ok]: COMMAND GETKEYS EVAL without keys (0 ms) [ok]: COMMAND GETKEYS LCS (1 ms) [ok]: COMMAND GETKEYS MORE THAN 256 KEYS (8 ms) [ok]: COMMAND LIST syntax error (1 ms) [ok]: COMMAND LIST WITHOUT FILTERBY (10 ms) [ok]: COMMAND LIST FILTERBY ACLCAT against non existing category (0 ms) [ok]: COMMAND LIST FILTERBY ACLCAT - list all commands/subcommands (1 ms) [ok]: COMMAND LIST FILTERBY PATTERN - list all commands/subcommands (2 ms) [ok]: COMMAND LIST FILTERBY MODULE against non existing module (1 ms) [ok]: COMMAND INFO of invalid subcommands (0 ms) [ok]: EVAL does not leak in the Lua stack (780 ms) [ok]: SET command will not be marked with movablekeys (1 ms) [ok]: GET command will not be marked with movablekeys (1 ms) [ok]: MSET command will not be marked with movablekeys (1 ms) [ok]: BITFIELD command will not be marked with movablekeys (1 ms) [ok]: LMOVE command will not be marked with movablekeys (1 ms) [ok]: LPOP command will not be marked with movablekeys (1 ms) [ok]: BLPOP command will not be marked with movablekeys (1 ms) [ok]: PING command will not be marked with movablekeys (0 ms) [ok]: MEMORY command will not be marked with movablekeys (3 ms) [ok]: MEMORY|USAGE command will not be marked with movablekeys (1 ms) [ok]: RENAME command will not be marked with movablekeys (2 ms) [ok]: GEORADIUS_RO command will not be marked with movablekeys (1 ms) [ok]: ZUNIONSTORE command is marked with movablekeys (2 ms) [ok]: SPOP: We can call scripts rewriting client->argv from Lua (18 ms) [ok]: XREAD command is marked with movablekeys (1 ms) [ok]: EVAL command is marked with movablekeys (1 ms) [ok]: SORT command is marked with movablekeys (2 ms) [ok]: SORT_RO command is marked with movablekeys (2 ms) [ok]: MIGRATE command is marked with movablekeys (1 ms) [ok]: GEORADIUS command is marked with movablekeys (2 ms) [54/91 done]: unit/aofrw (43 seconds) Testing unit/wait [55/91 done]: unit/introspection-2 (8 seconds) Testing unit/pause [ok]: Detect write load to master (1001 ms) [ok]: MGET: mget shouldn't be propagated in Lua (100 ms) [ok]: config during loading (1515 ms) [ok]: Test read commands are not blocked by client pause (1 ms) [ok]: EXPIRE: We can call scripts rewriting client->argv from Lua (100 ms) [ok]: FLUSHDB ASYNC can reclaim memory in background (506 ms) [ok]: lazy free a stream with all types of metadata (127 ms) [ok]: Setup slave (101 ms) [ok]: WAIT out of range timeout (milliseconds) (1 ms) [ok]: lazy free a stream with deleted cgroup (2 ms) [ok]: WAIT should acknowledge 1 additional copy of the data (1 ms) [ok]: CONFIG REWRITE handles rename-command properly (337 ms) [56/91 done]: unit/lazyfree (1 seconds) Testing unit/querybuf [ok]: Memory efficiency with values in range 128 (724 ms) [ok]: Test old pause-all takes precedence over new pause-write (less restrictive) (344 ms) [ok]: INCRBYFLOAT: We can call scripts expanding client->argv from Lua (323 ms) [ok]: Call Redict command with many args from Lua (issue #1764) (3 ms) [ok]: Number conversion precision test (issue #1118) (0 ms) [ok]: String containing number precision test (regression of issue #1118) (1 ms) [ok]: Verify negative arg count is error instead of crash (issue #1842) (0 ms) [ok]: Scripts can handle commands with incorrect arity (1 ms) [ok]: Correct handling of reused argv (issue #1939) (1 ms) [ok]: Functions in the Redict namespace are able to report errors (0 ms) [ok]: CLUSTER RESET can not be invoke from within a script (0 ms) [ok]: Script with RESP3 map (2 ms) [ok]: Test new pause time is smaller than old one, then old time preserved (101 ms) [ok]: Test write commands are paused by RO (1 ms) [ok]: Test special commands are paused by RO (2 ms) [ok]: Test read/admin multi-execs are not blocked by pause RO (1 ms) [ok]: Test write multi-execs are blocked by pause RO (2 ms) [ok]: Test scripts are blocked by pause RO (1 ms) [ok]: Test RO scripts are not blocked by pause RO (2 ms) [ok]: Test read-only scripts in multi-exec are not blocked by pause RO (1 ms) [ok]: Test write scripts in multi-exec are blocked by pause RO (1 ms) [ok]: Test may-replicate commands are rejected in RO scripts (0 ms) [ok]: Test multiple clients can be queued up and unblocked (2 ms) [ok]: Test clients with syntax errors will get responses immediately (0 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-lru) (830 ms) [ok]: Test both active and passive expires are skipped during client pause (102 ms) [ok]: Test that client pause starts at the end of a transaction (2 ms) [ok]: HyperLogLogs are promote from sparse to dense (873 ms) [ok]: Change hll-sparse-max-bytes (1 ms) [ok]: PSYNC2: Set #1 to replicate from #4 (1 ms) [ok]: Script return recursive object (313 ms) [ok]: Hyperloglog promote to dense well in different hll-sparse-max-bytes (107 ms) [ok]: Script check unpack with massive arguments (43 ms) [ok]: Script read key with expiration set (0 ms) [ok]: Script del key with expiration set (1 ms) [ok]: Script ACL check (1 ms) [ok]: Binary code loading failed (0 ms) [ok]: Try trick global protection 1 (0 ms) [ok]: Try trick global protection 2 (0 ms) [ok]: Try trick global protection 3 (1 ms) [ok]: Try trick global protection 4 (0 ms) [ok]: Try trick readonly table on redict table (1 ms) [ok]: Try trick readonly table on json table (0 ms) [ok]: Try trick readonly table on cmsgpack table (0 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (0 ms) [ok]: Test dofile are not available (1 ms) [ok]: Test print are not available (0 ms) [ok]: Test when replica paused, offset would not grow (3 ms) [ok]: Test replica offset would grow after unpause (1 ms) [57/91 done]: unit/pause (1 seconds) Testing unit/tls [ok]: PSYNC2 #3899 regression: verify consistency (38 ms) [ok]: CONFIG REWRITE handles alias config properly (677 ms) [58/91 done]: unit/introspection (10 seconds) Testing unit/tracking [ok]: Clients are able to enable tracking and redirect it (0 ms) [ok]: The other connection is able to get invalidations (1 ms) [ok]: The client is now able to disable tracking (0 ms) [ok]: Clients can enable the BCAST mode with the empty prefix (1 ms) [ok]: The connection gets invalidation messages about all the keys (0 ms) [ok]: Clients can enable the BCAST mode with prefixes (1 ms) [ok]: Adding prefixes to BCAST mode works (0 ms) [ok]: Tracking NOLOOP mode in standard mode works (1 ms) [ok]: Tracking NOLOOP mode in BCAST mode works (1 ms) [59/91 done]: unit/tls (0 seconds) Testing unit/oom-score-adj [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-lru) (754 ms) [ok]: CONFIG SET oom-score-adj works as expected (14 ms) [ok]: CONFIG SET oom-score-adj handles configuration failures (2 ms) [ok]: CONFIG SET oom-score-adj-values doesn't touch proc when disabled (0 ms) [ok]: CONFIG SET oom score restored on disable (1 ms) [ok]: CONFIG SET oom score relative and absolute (1 ms) [ok]: CONFIG SET out-of-range oom score (0 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (404 ms) [ok]: WAIT should not acknowledge 2 additional copies of the data (1080 ms) [60/91 done]: unit/oom-score-adj (0 seconds) Testing unit/shutdown [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (182 ms) [ok]: Memory efficiency with values in range 1024 (1150 ms) [ok]: Temp rdb will be deleted if we use bg_unlink when shutdown (118 ms) [ok]: Timedout script does not cause a false dead client (182 ms) [ok]: PSYNC2: Set #3 to replicate from #2 (1 ms) [ok]: SHUTDOWN ABORT can cancel SIGTERM (12 ms) [ok]: Temp rdb will be deleted in signal handle (84 ms) [61/91 done]: integration/psync2-reg (22 seconds) Testing unit/networking [ok]: RDB save will be failed in shutdown (2 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-random) (773 ms) [ok]: SHUTDOWN will abort if rdb save failed on signal (99 ms) [ok]: SHUTDOWN will abort if rdb save failed on shutdown command (1 ms) [ok]: SHUTDOWN can proceed if shutdown command was with nosave (2 ms) [ok]: Clean up rdb same named folder (0 ms) [ok]: Timedout script link is still usable after Lua returns (441 ms) [ok]: Tracking gets notification of expired keys (1001 ms) [ok]: CONFIG SET port number (216 ms) [ok]: HyperLogLog sparse encoding stress test (1466 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Additional at tail (1 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Broken magic (1 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Invalid encoding (0 ms) [ok]: Corrupted dense HyperLogLogs are detected: Wrong length (0 ms) [ok]: SHUTDOWN SIGTERM will abort if there's an initial AOFRW - default (101 ms) [ok]: Tracking gets notification of lazy expired keys (201 ms) [ok]: HELLO 3 reply is correct (0 ms) [ok]: HELLO without protover (2 ms) [ok]: RESP3 based basic invalidation (0 ms) [ok]: RESP3 tracking redirection (0 ms) [ok]: Invalidations of previous keys can be redirected after switching to RESP3 (2 ms) [ok]: Invalidations of new keys can be redirected after switching to RESP3 (1 ms) [ok]: Invalid keys should not be tracked for scripts in NOLOOP mode (1 ms) [ok]: Tracking only occurs for scripts when a command calls a read-only command (2 ms) [ok]: RESP3 Client gets tracking-redir-broken push message after cached key changed when rediretion client is terminated (2 ms) [ok]: Different clients can redirect to the same connection (2 ms) [ok]: Different clients using different protocols can track the same key (2 ms) [ok]: No invalidation message when using OPTIN option (1 ms) [ok]: Invalidation message sent when using OPTIN option with CLIENT CACHING yes (1 ms) [ok]: Invalidation message sent when using OPTOUT option (1 ms) [ok]: No invalidation message when using OPTOUT option with CLIENT CACHING no (2 ms) [ok]: Able to redirect to a RESP3 client (2 ms) [ok]: After switching from normal tracking to BCAST mode, no invalidation message is produced for pre-BCAST keys (2 ms) [ok]: BCAST with prefix collisions throw errors (2 ms) [ok]: hdel deliver invalidate message after response in the same connection (1 ms) [62/91 done]: unit/shutdown (1 seconds) Testing unit/client-eviction [ok]: WAIT should not acknowledge 1 additional copy if slave is blocked (1103 ms) [ok]: Tracking invalidation message is not interleaved with multiple keys response (113 ms) [ok]: Tracking invalidation message is not interleaved with transaction response (1 ms) [ok]: Tracking invalidation message of eviction keys should be before response (4 ms) [ok]: Unblocked BLMOVE gets notification after response (2 ms) [ok]: CONFIG SET bind address (371 ms) [ok]: Tracking gets notification on tracking table key eviction (51 ms) [ok]: Invalidation message received for flushall (3 ms) [ok]: Invalidation message received for flushdb (2 ms) [ok]: Test ASYNC flushall (3 ms) [ok]: flushdb tracking invalidation message is not interleaved with transaction response (4 ms) [ok]: client evicted due to large argv (131 ms) [ok]: PSYNC2: cluster is consistent after failover (1 ms) [ok]: Timedout scripts and unblocked command (577 ms) [ok]: client evicted due to large query buf (68 ms) [ok]: query buffer resized correctly (2217 ms) [ok]: client evicted due to percentage of maxmemory (17 ms) [ok]: Server is able to evacuate enough keys when num of keys surpasses limit by more than defined initial effort (210 ms) [ok]: Tracking info is correct (6 ms) [ok]: CLIENT GETREDIR provides correct client id (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking off (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking on (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking on with options (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking optin (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking optout (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking bcast mode (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking redir broken (4 ms) [ok]: Regression test for #11715 (4 ms) [ok]: RESP3 based basic invalidation with client reply off (4 ms) [ok]: query buffer resized correctly when not idle (80 ms) [ok]: RESP2 based basic invalidation with client reply off (50 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-ttl) (765 ms) [ok]: RESP3 based basic redirect invalidation with client reply off (4 ms) [ok]: RESP3 based basic tracking-redir-broken with client reply off (3 ms) [ok]: Timedout scripts that modified data can't be killed by SCRIPT KILL (206 ms) [ok]: SHUTDOWN NOSAVE can kill a timedout script anyway (4 ms) [ok]: client evicted due to large multi buf (282 ms) [ok]: CONFIG SET bind-source-addr (525 ms) [ok]: Coverage: Basic CLIENT CACHING (1 ms) [ok]: Coverage: Basic CLIENT REPLY (0 ms) [ok]: Coverage: Basic CLIENT TRACKINGINFO (1 ms) [ok]: Coverage: Basic CLIENT GETREDIR (0 ms) [ok]: Before the replica connects we issue two EVAL commands (0 ms) [63/91 done]: unit/tracking (2 seconds) Testing unit/violations [ok]: Client output buffer hard limit is enforced (9212 ms) [ok]: Connect a replica to the master instance (102 ms) [ok]: Now use EVALSHA against the master, with both SHAs (1 ms) [ok]: 'x' should be '4' for EVALSHA being replicated by effects (0 ms) [ok]: Replication of script multiple pushes to list with BLPOP (1 ms) [ok]: EVALSHA replication when first call is readonly (1 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: SORT adds integer field to list (1 ms) [ok]: client evicted due to watched key list (280 ms) [ok]: Default bind address configuration handling (211 ms) [ok]: Protected mode works as expected (5 ms) [64/91 done]: unit/violations (0 seconds) Testing unit/replybufsize [ok]: maxmemory - policy volatile-lru should only remove volatile keys. (599 ms) [65/91 done]: unit/networking (1 seconds) Testing unit/cluster/announced-endpoints [ok]: WAIT implicitly blocks on client pause since ACKs aren't sent (1102 ms) [ok]: WAIT replica multiple clients unblock - reuse last result (16 ms) [ok]: WAITAOF local copy before fsync (96 ms) [ok]: WAITAOF local copy everysec (1 ms) [ok]: WAITAOF local copy with appendfsync always (1 ms) [ok]: WAITAOF local wait and then stop aof (1 ms) [ok]: WAITAOF local on server with aof disabled (0 ms) [ok]: maxmemory - policy volatile-lfu should only remove volatile keys. (557 ms) [ok]: verify reply buffer limits (648 ms) [66/91 done]: unit/replybufsize (1 seconds) Testing unit/cluster/misc [ok]: WAITAOF local if AOFRW was postponed (299 ms) [ok]: Connect a replica to the master instance (102 ms) [ok]: redict.replicate_commands() can be issued anywhere now (0 ms) [ok]: redict.set_repl() can be issued before replicate_commands() now (0 ms) [ok]: redict.set_repl() don't accept invalid values (1 ms) [ok]: Test selective replication of certain Redict commands from Lua (1 ms) [ok]: PRNG is seeded randomly for command replication (0 ms) [ok]: Using side effects is not a problem with command replication (1 ms) [ok]: WAITAOF on demoted master gets unblocked with an error (1 ms) [ok]: WAITAOF replica copy before fsync (79 ms) [ok]: Memory efficiency with values in range 16384 (2987 ms) [ok]: maxmemory - policy volatile-random should only remove volatile keys. (547 ms) [67/91 done]: unit/memefficiency (6 seconds) Testing unit/cluster/cli [ok]: Replication: commands with many arguments (issue #1221) (26519 ms) [ok]: client evicted due to pubsub subscriptions (1596 ms) [ok]: spopwithcount rewrite srem command (115 ms) [ok]: client evicted due to tracking redirection (87 ms) [ok]: maxmemory - policy volatile-ttl should only remove volatile keys. (568 ms) [ok]: WAITAOF replica copy everysec (815 ms) [ok]: Test scripting debug protocol parsing (1 ms) [ok]: Test scripting debug lua stack overflow (1 ms) [ok]: query buffer resized correctly with fat argv (2914 ms) [68/91 done]: unit/querybuf (6 seconds) Testing unit/cluster/scripting [ok]: Lua scripts eviction does not generate many scripts (111 ms) [ok]: Lua scripts eviction is plain LRU (51 ms) [ok]: Test change cluster-announce-port and cluster-announce-tls-port at runtime (102 ms) [ok]: Lua scripts eviction does not affect script load (142 ms) [ok]: Test change cluster-announce-bus-port at runtime (202 ms) [ok]: test RESP2/2 big number protocol parsing (0 ms) [ok]: test RESP2/2 malformed big number protocol parsing (0 ms) [ok]: test RESP2/2 map protocol parsing (0 ms) [ok]: test RESP2/2 set protocol parsing (0 ms) [ok]: test RESP2/2 double protocol parsing (0 ms) [ok]: test RESP2/2 null protocol parsing (0 ms) [ok]: test RESP2/2 verbatim protocol parsing (1 ms) [ok]: test RESP2/2 true protocol parsing (0 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (0 ms) [ok]: test RESP2/3 malformed big number protocol parsing (0 ms) [ok]: test RESP2/3 map protocol parsing (0 ms) [ok]: test RESP2/3 set protocol parsing (1 ms) [ok]: test RESP2/3 double protocol parsing (0 ms) [ok]: test RESP2/3 null protocol parsing (0 ms) [ok]: test RESP2/3 verbatim protocol parsing (0 ms) [ok]: test RESP2/3 true protocol parsing (1 ms) [ok]: test RESP2/3 false protocol parsing (0 ms) [ok]: test RESP3/2 big number protocol parsing (1 ms) [ok]: test RESP3/2 malformed big number protocol parsing (0 ms) [ok]: test RESP3/2 map protocol parsing (0 ms) [ok]: test RESP3/2 set protocol parsing (1 ms) [ok]: test RESP3/2 double protocol parsing (0 ms) [ok]: test RESP3/2 null protocol parsing (0 ms) [ok]: test RESP3/2 verbatim protocol parsing (0 ms) [ok]: test RESP3/2 true protocol parsing (0 ms) [ok]: test RESP3/2 false protocol parsing (0 ms) [ok]: test RESP3/3 big number protocol parsing (1 ms) [ok]: test RESP3/3 malformed big number protocol parsing (0 ms) [ok]: test RESP3/3 map protocol parsing (0 ms) [ok]: test RESP3/3 set protocol parsing (0 ms) [ok]: test RESP3/3 double protocol parsing (1 ms) [ok]: test RESP3/3 null protocol parsing (0 ms) [ok]: test RESP3/3 verbatim protocol parsing (0 ms) [ok]: test RESP3/3 true protocol parsing (0 ms) [ok]: test RESP3/3 false protocol parsing (0 ms) [ok]: test resp3 attribute protocol parsing (0 ms) [ok]: Script block the time during execution (10 ms) [ok]: Script delete the expired key (3 ms) [ok]: TIME command using cached time (11 ms) [ok]: WAITAOF replica copy everysec with AOFRW (1004 ms) [ok]: Replication of SPOP command -- alsoPropagate() API (1399 ms) [ok]: Script block the time in some expiration related commands (81 ms) [ok]: RESTORE expired keys with expiration time (10 ms) [69/91 done]: unit/cluster/announced-endpoints (3 seconds) Testing unit/cluster/hostnames [ok]: Shebang support for lua engine (0 ms) [ok]: Unknown shebang option (0 ms) [ok]: Unknown shebang flag (1 ms) [ok]: allow-oom shebang flag (2 ms) [ok]: no-writes shebang flag (0 ms) [ok]: Key lazy expires during key migration (13 ms) [ok]: Coverage: Basic cluster commands (2 ms) [ok]: no-writes shebang flag on replica (107 ms) [ok]: Create 3 node cluster (1926 ms) [ok]: Run blocking command on cluster node3 (1 ms) [ok]: First server should have role slave after SLAVEOF (103 ms) [ok]: Data divergence can happen under default conditions (3 ms) [ok]: Perform a Resharding (7 ms) [ok]: Data divergence is allowed on writable replicas (2 ms) [ok]: Verify command got unblocked after resharding (35 ms) [ok]: Wait for cluster to be stable (10 ms) [ok]: use previous hostip in "cluster-preferred-endpoint-type unknown-endpoint" mode (4 ms) [ok]: Sanity test push cmd after resharding (1 ms) [ok]: Run blocking command again on cluster node1 (1 ms) [ok]: not enough good replicas (2 ms) [70/91 done]: integration/replication-4 (39 seconds) Testing unit/cluster/human-announced-nodename [71/91 done]: unit/cluster/misc (3 seconds) Testing unit/cluster/multi-slot-operations [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 103796) (1 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (1 ms) [ok]: PSYNC2: --- CYCLE 4 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #1 as master (0 ms) [ok]: Client output buffer soft limit is enforced if time is overreached (4517 ms) [ok]: PSYNC2: Set #4 to replicate from #0 (0 ms) [ok]: not enough good replicas state change during long script (825 ms) [ok]: allow-stale shebang flag (2 ms) [ok]: reject script do not cause a Lua stack leak (9 ms) [ok]: Eval scripts with shebangs and functions default to no cross slots (1 ms) [ok]: Cross slot commands are allowed by default for eval scripts and with allow-cross-slot-keys flag (1 ms) [ok]: Cross slot commands are also blocked if they disagree with pre-declared keys (1 ms) [ok]: Cross slot commands are allowed by default if they disagree with pre-declared keys (0 ms) [ok]: Function no-cluster flag (1 ms) [ok]: Script no-cluster flag (0 ms) [72/91 done]: unit/cluster/scripting (2 seconds) Testing unit/cluster/slot-ownership [ok]: Consistent eval error reporting (11 ms) [ok]: LUA redict.error_reply API (1 ms) [ok]: LUA redict.error_reply API with empty string (1 ms) [ok]: LUA redict.status_reply API (0 ms) [ok]: LUA test pcall (1 ms) [ok]: LUA test pcall with error (0 ms) [ok]: LUA test pcall with non string/integer arg (0 ms) [ok]: LUA test trim string as expected (1 ms) [73/91 done]: unit/scripting (18 seconds) Testing unit/cluster/links [ok]: WAITAOF replica copy everysec with slow AOFRW (2012 ms) [ok]: WAITAOF replica copy everysec->always with AOFRW (103 ms) [ok]: WAITAOF replica copy appendfsync always (1 ms) [ok]: Kill a cluster node and wait for fail state (1728 ms) [ok]: Verify command got unblocked after cluster failure (1 ms) [ok]: PSYNC2: Set #0 to replicate from #1 (0 ms) [ok]: client evicted due to client tracking prefixes (4027 ms) [ok]: client evicted due to output buf (7 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=no, replica diskless=swapdb (12516 ms) [ok]: client no-evict on (116 ms) [ok]: client no-evict off (74 ms) [ok]: Test replication partial resync: backlog expired (diskless: no, disabled, reconnect: 1) (9344 ms) [ok]: WAITAOF replica copy if replica is blocked (899 ms) [ok]: Set cluster human announced nodename and let it propagate (105 ms) [ok]: Set cluster hostnames and verify they are propagated (211 ms) [ok]: avoid client eviction when client is freed by output buffer limit (204 ms) [ok]: Update hostnames and make sure they are all eventually propagated (217 ms) [ok]: PSYNC2: Set #2 to replicate from #4 (1 ms) [ok]: Slave should be able to synchronize with the master (102 ms) [ok]: Remove hostnames and make sure they are all eventually propagated (115 ms) [ok]: Verify cluster-preferred-endpoint-type behavior for redirects and info (217 ms) [ok]: ziplist implementation: encoding stress testing (14415 ms) [74/91 done]: unit/type/list-3 (58 seconds) Testing unit/cluster/cluster-response-tls [75/91 done]: unit/cluster/cluster-response-tls (0 seconds) Testing unit/cluster/failure-marking [ok]: Continuous slots distribution (15 ms) [ok]: ADDSLOTS command with several boundary conditions test suite (1 ms) [ok]: ADDSLOTSRANGE command with several boundary conditions test suite (2 ms) [ok]: DELSLOTSRANGE command with several boundary conditions test suite (8 ms) [ok]: WAITAOF replica multiple clients unblock - reuse last result (1002 ms) [ok]: WAITAOF on promoted replica (1 ms) [ok]: Verify that slot ownership transfer through gossip propagates deletes to replicas (110 ms) [ok]: Broadcast message across a cluster shard while a cluster link is down (106 ms) [ok]: decrease maxmemory-clients causes client eviction (608 ms) [76/91 done]: unit/cluster/multi-slot-operations (3 seconds) [ok]: PSYNC2: Set #3 to replicate from #1 (0 ms) [ok]: Detect write load to master (1001 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: no, swapdb, reconnect: 0) (49 ms) [ok]: evict clients only until below limit (229 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [77/91 done]: unit/cluster/slot-ownership (3 seconds) [ok]: evict clients in right order (large to small) (280 ms) [ok]: client total memory grows during client no-evict (125 ms) [ok]: PSYNC2: cluster is consistent after failover (1 ms) [ok]: client total memory grows during maxmemory-clients disabled (126 ms) [78/91 done]: unit/client-eviction (10 seconds) [ok]: Detect write load to master (1002 ms) [ok]: WAITAOF master that loses a replica and backlog is dropped (2002 ms) [ok]: Functions are added to new node on redict-cli cluster add-node (3004 ms) [ok]: Client output buffer soft limit is not enforced too early and is enforced when no traffic (5019 ms) [ok]: No response for single command if client output buffer hard limit is enforced (121 ms) [ok]: Each node has two links with each peer (6 ms) [ok]: Validate cluster links format (1 ms) [ok]: Human nodenames are visible in log messages (3525 ms) [79/91 done]: unit/cluster/human-announced-nodename (6 seconds) [ok]: WAITAOF master without backlog, wait is released when the replica finishes full-sync (1004 ms) [ok]: Verify the nodes configured with prefer hostname only show hostname for new nodes (3720 ms) [ok]: Test restart will keep hostname information (139 ms) [ok]: Test hostname validation (1 ms) [ok]: No response for multi commands in pipeline if client output buffer limit is enforced (1046 ms) [ok]: Execute transactions completely even if client output buffer limit is enforced (23 ms) [ok]: Obuf limit, HRANDFIELD with huge count stopped mid-run (30 ms) [ok]: Obuf limit, KEYS stopped mid-run (116 ms) [80/91 done]: unit/obuf-limits (20 seconds) [ok]: WAITAOF master isn't configured to do AOF (1003 ms) [ok]: WAITAOF replica isn't configured to do AOF (104 ms) [81/91 done]: unit/cluster/hostnames (8 seconds) [ok]: WAITAOF both local and replica got AOF enabled at runtime (899 ms) [ok]: Verify that single primary marks replica as failed (3237 ms) [ok]: WAITAOF master sends PING after last write (1202 ms) [ok]: Migrate the last slot away from a node using redict-cli (3832 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 142048) (0 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (1 ms) [ok]: PSYNC2: --- CYCLE 5 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #3 as master (0 ms) [ok]: PSYNC2: Set #0 to replicate from #3 (0 ms) [ok]: WAITAOF master client didn't send any write command (1202 ms) [ok]: PSYNC2: Set #4 to replicate from #3 (1 ms) [ok]: Test replication partial resync: ok psync (diskless: no, swapdb, reconnect: 1) (6287 ms) [ok]: PSYNC2: Set #1 to replicate from #2 (1 ms) [ok]: WAITAOF master client didn't send any command (1201 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: redict-cli -4 --cluster create using 127.0.0.1 with cluster-port (1930 ms) [ok]: PSYNC2: Set #2 to replicate from #3 (0 ms) [ok]: Detect write load to master (1001 ms) [ok]: redict-cli -4 --cluster add-node using 127.0.0.1 with cluster-port (1130 ms) [ok]: PSYNC2: cluster is consistent after failover (1 ms) [ok]: GEOSEARCH fuzzy test - byradius (24506 ms) [ok]: WAITAOF when replica switches between masters, fsync: no (3336 ms) [ok]: Disconnect link when send buffer limit reached (9440 ms) [ok]: Link memory increases with publishes (676 ms) [ok]: redict-cli -4 --cluster create using localhost with cluster-port (1925 ms) [ok]: Link memory resets after publish messages flush (999 ms) [ok]: Verify that multiple primaries mark replica as failed (6176 ms) [82/91 done]: unit/cluster/links (16 seconds) [83/91 done]: unit/cluster/failure-marking (14 seconds) [ok]: redict-cli -4 --cluster add-node using localhost with cluster-port (1133 ms) [ok]: WAITAOF when replica switches between masters, fsync: everysec (2329 ms) [84/91 done]: unit/cluster/cli (20 seconds) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=yes, replica diskless=disabled (15472 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 183574) (1 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (1 ms) [ok]: PSYNC2: Bring the master back again for next test (3 ms) [ok]: WAITAOF when replica switches between masters, fsync: always (1328 ms) [ok]: PSYNC2: Partial resync after restart using RDB aux fields (175 ms) [ok]: setup replication for following tests (102 ms) [85/91 done]: integration/psync2 (47 seconds) [ok]: WAIT and WAITAOF replica multiple clients unblock - reuse last result (676 ms) [86/91 done]: unit/wait (27 seconds) [ok]: Test replication partial resync: no backlog (diskless: no, swapdb, reconnect: 1) (7851 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (1002 ms) [ok]: Test replication partial resync: ok after delay (diskless: no, swapdb, reconnect: 1) (9361 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (1001 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=yes, replica diskless=swapdb (14993 ms) [ok]: GEOSEARCH fuzzy test - bybox (21523 ms) [ok]: GEOSEARCH box edges fuzzy test (46 ms) [87/91 done]: unit/geo (47 seconds) [ok]: Test replication partial resync: backlog expired (diskless: no, swapdb, reconnect: 1) (9390 ms) [ok]: Slave should be able to synchronize with the master (807 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: yes, disabled, reconnect: 0) (47 ms) [ok]: Fuzzing dense/sparse encoding: Redict should always detect errors (49221 ms) [ok]: PFADD, PFCOUNT, PFMERGE type checking works (1 ms) [ok]: PFMERGE results on the cardinality of union of sets (0 ms) [ok]: PFMERGE on missing source keys will create an empty destkey (1 ms) [ok]: PFMERGE with one empty input key, create an empty destkey (0 ms) [ok]: PFMERGE with one non-empty input key, dest key is actually one of the source keys (1 ms) [ok]: Slave should be able to synchronize with the master (807 ms) [ok]: Detect write load to master (0 ms) [ok]: PFCOUNT multiple-keys merge returns cardinality of union #1 (5786 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, disabled, reconnect: 1) (6281 ms) [ok]: PFCOUNT multiple-keys merge returns cardinality of union #2 (2447 ms) [ok]: PFDEBUG GETREG returns the HyperLogLog raw registers (716 ms) [ok]: PFADD / PFCOUNT cache invalidation works (1 ms) [88/91 done]: unit/hyperloglog (61 seconds) [ok]: Slave should be able to synchronize with the master (1811 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no backlog (diskless: yes, disabled, reconnect: 1) (7907 ms) [ok]: Slave should be able to synchronize with the master (1815 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, disabled, reconnect: 1) (9446 ms) [ok]: Slave should be able to synchronize with the master (807 ms) [ok]: Detect write load to master (1 ms) [ok]: Master stream is correctly processed while the replica has a script in -BUSY state (48953 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, disabled, reconnect: 1) (9523 ms) [ok]: Diskless load swapdb (different replid): new database is exposed after swapping (0 ms) [ok]: Diskless load swapdb (different replid): replica enter loading (419 ms) [ok]: Diskless load swapdb (different replid): old database is exposed after replication fails (0 ms) [ok]: Slave should be able to synchronize with the master (807 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: yes, swapdb, reconnect: 0) (50 ms) [ok]: Diskless load swapdb (async_loading): new database is exposed after swapping (0 ms) [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (0 ms) [ok]: Diskless load swapdb (async_loading): replica enter async_loading (421 ms) [ok]: Diskless load swapdb (async_loading): old database is exposed while async replication is in progress (854 ms) [ok]: Busy script during async loading (857 ms) [ok]: Blocked commands and configs during async-loading (430 ms) [ok]: Diskless load swapdb (async_loading): old database is exposed after async replication fails (0 ms) Waiting for process 11065 to exit... Waiting for process 11065 to exit... [ok]: Test replication partial resync: ok psync (diskless: yes, swapdb, reconnect: 1) (6284 ms) Waiting for process 11065 to exit... [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (1 ms) [ok]: slave buffer are counted correctly (95687 ms) Waiting for process 11065 to exit... Waiting for process 11065 to exit... [ok]: Test replication partial resync: no backlog (diskless: yes, swapdb, reconnect: 1) (7860 ms) [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (0 ms) [ok]: replica buffer don't induce eviction (8706 ms) [ok]: Don't rehash if used memory exceeds maxmemory after rehash (349 ms) [ok]: client tracking don't cause eviction feedback loop (1394 ms) [ok]: propagation with eviction (96 ms) [ok]: propagation with eviction in MULTI (93 ms) [ok]: lru/lfu value of the key just added (2 ms) [89/91 done]: unit/maxmemory (122 seconds) [ok]: Test replication partial resync: ok after delay (diskless: yes, swapdb, reconnect: 1) (9408 ms) [ok]: Slave should be able to synchronize with the master (1812 ms) [ok]: Detect write load to master (1 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, swapdb, reconnect: 1) (9532 ms) [90/91 done]: integration/replication-psync (162 seconds) [ok]: diskless loading short read (40141 ms) [ok]: diskless no replicas drop during rdb pipe (7133 ms) [ok]: diskless slow replicas drop during rdb pipe (3100 ms) [ok]: diskless fast replicas drop during rdb pipe (6222 ms) [ok]: diskless all replicas drop during rdb pipe (1072 ms) [ok]: diskless timeout replicas drop during rdb pipe (6282 ms) [ok]: diskless replication child being killed is collected (1443 ms) [ok]: replication child dies when parent is killed - diskless: yes (1178 ms) [ok]: replication child dies when parent is killed - diskless: no (1479 ms) [ok]: diskless replication read pipe cleanup (730 ms) [ok]: replicaof right after disconnection (1842 ms) [ok]: Kill rdb child process if its dumping RDB is not useful (931 ms) [ok]: Don't disconnect with replicas before loading transferred RDB when full sync (3 ms) [ok]: Discard cache master before loading transferred RDB when full sync (106 ms) [ok]: replica can handle EINTR if use diskless load (649 ms) [ok]: replica do not write the reply to the replication link - SYNC (_addReplyToBufferOrList) (113 ms) [ok]: replica do not write the reply to the replication link - SYNC (addReplyDeferredLen) (110 ms) [ok]: replica do not write the reply to the replication link - PSYNC (_addReplyToBufferOrList) (110 ms) [ok]: replica do not write the reply to the replication link - PSYNC (addReplyDeferredLen) (107 ms) [ok]: PSYNC with wrong offset should throw error (3 ms) [ok]: Test replication with lazy expire (13 ms) [91/91 done]: integration/replication (214 seconds) Testing solo test [ignore]: Test LPUSH and LPOP on plain nodes over 4GB: large memory flag not provided [ignore]: Test LINDEX and LINSERT on plain nodes over 4GB: large memory flag not provided [ignore]: Test LTRIM on plain nodes over 4GB: large memory flag not provided [ignore]: Test LREM on plain nodes over 4GB: large memory flag not provided [ignore]: Test LSET on plain nodes over 4GB: large memory flag not provided [ignore]: Test LSET on plain nodes with large elements under packed_threshold over 4GB: large memory flag not provided [ignore]: Test LSET splits a quicklist node, and then merge: large memory flag not provided [ignore]: Test LSET splits a LZF compressed quicklist node, and then merge: large memory flag not provided [ignore]: Test LMOVE on plain nodes over 4GB: large memory flag not provided [91/91 done]: list-large-memory (1 seconds) Testing solo test [ignore]: SADD, SCARD, SISMEMBER - large data: large memory flag not provided [91/91 done]: set-large-memory (0 seconds) Testing solo test [ignore]: BIT pos larger than UINT_MAX: large memory flag not provided [ignore]: SETBIT values larger than UINT32_MAX and lzf_compress/lzf_decompress correctly: large memory flag not provided [91/91 done]: bitops-large-memory (0 seconds) Testing solo test [ignore]: XADD one huge field: large memory flag not provided [ignore]: XADD one huge field - 1: large memory flag not provided [ignore]: several XADD big fields: large memory flag not provided [ignore]: single XADD big fields: large memory flag not provided [ignore]: hash with many big fields: large memory flag not provided [ignore]: hash with one huge field: large memory flag not provided [91/91 done]: violations (1 seconds) Testing solo test [91/91 done]: defrag (3 seconds) The End Execution time of different units: 0 seconds - unit/info-command 0 seconds - unit/printver 0 seconds - unit/type/incr 1 seconds - unit/protocol 2 seconds - unit/keyspace 3 seconds - unit/info 5 seconds - unit/type/stream-cgroups 0 seconds - unit/quit 7 seconds - unit/type/hash 2 seconds - unit/acl 0 seconds - unit/acl-v2 7 seconds - unit/multi 11 seconds - unit/sort 11 seconds - unit/auth 13 seconds - unit/type/string 16 seconds - unit/type/list 16 seconds - unit/expire 15 seconds - unit/other 13 seconds - unit/latency-monitor 24 seconds - unit/scan 24 seconds - unit/type/list-2 24 seconds - unit/type/set 1 seconds - integration/aof-race 13 seconds - integration/replication-3 15 seconds - integration/replication-2 27 seconds - unit/type/stream 27 seconds - unit/dump 0 seconds - integration/convert-zipmap-hash-on-load 1 seconds - integration/convert-ziplist-hash-on-load 1 seconds - integration/convert-ziplist-zset-on-load 0 seconds - integration/logging 4 seconds - integration/rdb 8 seconds - integration/shutdown 14 seconds - integration/replication-buffer 31 seconds - unit/type/zset 11 seconds - integration/aof-multi-part 4 seconds - integration/failover 1 seconds - integration/redict-benchmark 26 seconds - integration/block-repl 1 seconds - unit/pubsub 8 seconds - integration/psync2-master-restart 2 seconds - unit/pubsubshard 2 seconds - unit/slowlog 15 seconds - integration/aof 9 seconds - integration/redict-cli 15 seconds - integration/corrupt-dump 4 seconds - unit/functions 1 seconds - unit/limits 9 seconds - integration/dismiss-mem 16 seconds - integration/psync2-pingoff 2 seconds - unit/bitfield 21 seconds - integration/corrupt-dump-fuzzer 5 seconds - unit/bitops 43 seconds - unit/aofrw 8 seconds - unit/introspection-2 1 seconds - unit/lazyfree 1 seconds - unit/pause 10 seconds - unit/introspection 0 seconds - unit/tls 0 seconds - unit/oom-score-adj 22 seconds - integration/psync2-reg 1 seconds - unit/shutdown 2 seconds - unit/tracking 0 seconds - unit/violations 1 seconds - unit/networking 1 seconds - unit/replybufsize 6 seconds - unit/memefficiency 6 seconds - unit/querybuf 3 seconds - unit/cluster/announced-endpoints 39 seconds - integration/replication-4 3 seconds - unit/cluster/misc 2 seconds - unit/cluster/scripting 18 seconds - unit/scripting 58 seconds - unit/type/list-3 0 seconds - unit/cluster/cluster-response-tls 3 seconds - unit/cluster/multi-slot-operations 3 seconds - unit/cluster/slot-ownership 10 seconds - unit/client-eviction 6 seconds - unit/cluster/human-announced-nodename 20 seconds - unit/obuf-limits 8 seconds - unit/cluster/hostnames 16 seconds - unit/cluster/links 14 seconds - unit/cluster/failure-marking 20 seconds - unit/cluster/cli 47 seconds - integration/psync2 27 seconds - unit/wait 47 seconds - unit/geo 61 seconds - unit/hyperloglog 122 seconds - unit/maxmemory 162 seconds - integration/replication-psync 214 seconds - integration/replication 1 seconds - list-large-memory 0 seconds - set-large-memory 0 seconds - bitops-large-memory 1 seconds - violations 3 seconds - defrag \o/ All tests passed without errors! Cleanup: may take some time... OK make[1]: Leaving directory '/home/buildozer/aports/community/redict/src/redict/src' >>> redict: Entering fakeroot... make -C src install make[1]: Entering directory '/home/buildozer/aports/community/redict/src/redict/src' INSTALL redict-sentinel INSTALL redict-check-rdb Hint: It's a good idea to run 'make test' ;) INSTALL redict-server INSTALL redict-benchmark INSTALL redict-cli INSTALL ../redict.conf INSTALL ../sentinel.conf make[1]: Leaving directory '/home/buildozer/aports/community/redict/src/redict/src' >>> redict-benchmark*: Running split function benchmark... 'usr/bin/redict-benchmark' -> '/home/buildozer/aports/community/redict/pkg/redict-benchmark/usr/bin/redict-benchmark' >>> redict-benchmark*: Preparing subpackage redict-benchmark... >>> redict-benchmark*: Stripping binaries >>> redict-benchmark*: Running postcheck for redict-benchmark >>> redict-cli*: Running split function cli... 'usr/bin/redict-cli' -> '/home/buildozer/aports/community/redict/pkg/redict-cli/usr/bin/redict-cli' >>> redict-cli*: Preparing subpackage redict-cli... >>> redict-cli*: Stripping binaries >>> redict-cli*: Running postcheck for redict-cli >>> redict-compat*: Running split function compat... >>> redict-compat*: Preparing subpackage redict-compat... >>> redict-compat*: Script found. /bin/sh added as a dependency for redict-compat-7.3.3-r0.apk >>> redict-compat*: Adding .pre-install >>> redict-compat*: Running postcheck for redict-compat >>> redict-openrc*: Running split function openrc... 'etc/conf.d' -> '/home/buildozer/aports/community/redict/pkg/redict-openrc/etc/conf.d' 'etc/init.d' -> '/home/buildozer/aports/community/redict/pkg/redict-openrc/etc/init.d' >>> redict-openrc*: Preparing subpackage redict-openrc... >>> redict-openrc*: Running postcheck for redict-openrc >>> redict*: Running postcheck for redict >>> redict*: Preparing package redict... >>> redict*: Stripping binaries >>> redict*: Script found. /bin/sh added as a dependency for redict-7.3.3-r0.apk >>> redict*: Adding .post-install >>> redict*: Adding .post-upgrade >>> redict*: Adding .pre-install >>> redict-benchmark*: Scanning shared objects >>> redict-cli*: Scanning shared objects >>> redict-compat*: Scanning shared objects >>> redict-openrc*: Scanning shared objects >>> redict*: Scanning shared objects >>> redict-benchmark*: Tracing dependencies... so:libc.musl-ppc64le.so.1 so:libcrypto.so.3 so:libssl.so.3 >>> redict-benchmark*: Package size: 386.4 KB >>> redict-benchmark*: Compressing data... >>> redict-benchmark*: Create checksum... >>> redict-benchmark*: Create redict-benchmark-7.3.3-r0.apk >>> redict-cli*: Tracing dependencies... so:libc.musl-ppc64le.so.1 so:libcrypto.so.3 so:libssl.so.3 >>> redict-cli*: Package size: 618.5 KB >>> redict-cli*: Compressing data... >>> redict-cli*: Create checksum... >>> redict-cli*: Create redict-cli-7.3.3-r0.apk >>> redict-compat*: Tracing dependencies... !redis !valkey-compat /bin/sh redict-benchmark=7.3.3-r0 redict-cli=7.3.3-r0 redict=7.3.3-r0 >>> redict-compat*: Package size: 1.0 B >>> redict-compat*: Compressing data... >>> redict-compat*: Create checksum... >>> redict-compat*: Create redict-compat-7.3.3-r0.apk >>> redict-openrc*: Tracing dependencies... >>> redict-openrc*: Package size: 1.7 KB >>> redict-openrc*: Compressing data... >>> redict-openrc*: Create checksum... >>> redict-openrc*: Create redict-openrc-7.3.3-r0.apk >>> redict*: Tracing dependencies... /bin/sh so:libc.musl-ppc64le.so.1 so:libcrypto.so.3 so:libssl.so.3 >>> redict*: Package size: 3.4 MB >>> redict*: Compressing data... >>> redict*: Create checksum... >>> redict*: Create redict-7.3.3-r0.apk >>> redict: Build complete at Fri, 16 May 2025 04:48:42 +0000 elapsed time 0h 4m 31s >>> redict: Cleaning up srcdir >>> redict: Cleaning up pkgdir >>> redict: Uninstalling dependencies... (1/8) Purging .makedepends-redict (20250516.044412) (2/8) Purging linux-headers (6.14.2-r0) (3/8) Purging openssl-dev (3.5.0-r0) (4/8) Purging tcl (8.6.16-r0) (5/8) Purging tzdata (2025b-r0) (6/8) Purging procps-ng (4.0.4-r2) (7/8) Purging libintl (0.24.1-r0) (8/8) Purging libproc2 (4.0.4-r2) Executing busybox-1.37.0-r17.trigger OK: 429 MiB in 104 packages >>> redict: Updating the community/ppc64le repository index... >>> redict: Signing the index...