>>> redis: Building community/redis 8.0.0-r0 (using abuild 3.15.0_rc3-r3) started Thu, 15 May 2025 21:17:46 +0000 >>> redis: Validating /home/buildozer/aports/community/redis/APKBUILD... >>> redis: Analyzing dependencies... >>> redis: 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-redis (20250515.211747) Executing busybox-1.37.0-r17.trigger OK: 413 MiB in 112 packages >>> redis: Cleaning up srcdir >>> redis: Cleaning up pkgdir >>> redis: Cleaning up tmpdir >>> redis: Fetching https://distfiles.alpinelinux.org/distfiles/v3.22/redis-8.0.0.tar.gz >>> redis: Fetching https://distfiles.alpinelinux.org/distfiles/v3.22/redis-8.0.0.tar.gz >>> redis: Checking sha512sums... redis-8.0.0.tar.gz: OK redis.conf.patch: OK sentinel.conf.patch: OK redis.initd: OK redis.confd: OK redis-sentinel.initd: OK redis.logrotate: OK >>> redis: Unpacking /var/cache/distfiles/v3.22/redis-8.0.0.tar.gz... >>> redis: redis.conf.patch patching file redis.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 494 (offset 72 lines). >>> redis: sentinel.conf.patch patching file sentinel.conf Hunk #1 succeeded at 31 with fuzz 2 (offset -2 lines). for dir in src; do make -C $dir all; done make[1]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src' CC Makefile.dep rm -rf redis-server redis-sentinel redis-cli redis-benchmark redis-check-rdb redis-check-aof *.o *.gcda *.gcno *.gcov redis.info lcov-html Makefile.dep *.so rm -f threads_mngr.d adlist.d quicklist.d ae.d anet.d dict.d ebuckets.d eventnotifier.d iothread.d mstr.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 crccombine.d crc64.d bitops.d sentinel.d notify.d setproctitle.d blocked.d hyperloglog.d latency.d sparkline.d redis-check-rdb.d redis-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 hnsw.d cJSON.d vset.d anet.d adlist.d dict.d redis-cli.d zmalloc.d release.d ae.d redisassert.d crcspeed.d crccombine.d crc64.d siphash.d crc16.d monotonic.d cli_common.d mt19937-64.d strl.d cli_commands.d ae.d anet.d redis-benchmark.d adlist.d dict.d zmalloc.d redisassert.d release.d crcspeed.d crccombine.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/redis/src/redis-8.0.0/deps' (cd hiredis && 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 (cd fast_float && make clean) > /dev/null || true (rm -f .make-*) make[2]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps' (cd modules && make clean) make[2]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src/modules' rm -rf *.xo *.so make[2]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src/modules' (cd ../tests/modules && make clean) make[2]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/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 internalsecret.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 internalsecret.xo make[2]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/tests/modules' (rm -f .make-*) echo STD=-pedantic -DREDIS_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 REDIS_CFLAGS= >> .make-settings echo REDIS_LDFLAGS= >> .make-settings echo PREV_FINAL_CFLAGS=-pedantic -DREDIS_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/hiredis -I../deps/linenoise -I../deps/lua/src -I../deps/hdr_histogram -I../deps/fpconv -I../deps/fast_float -DUSE_OPENSSL=1 -DBUILD_TLS_MODULE=0 -DINCLUDE_VEC_SETS=1 >> .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 hiredis linenoise lua hdr_histogram fpconv fast_float) make[2]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps' (cd hiredis && 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 (cd fast_float && 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 hiredis MAKE linenoise cd hiredis && 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 cd hdr_histogram && make make[3]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/hiredis' make[3]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/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 fast_float cd fast_float && make libfast_float MAKE fpconv cd fpconv && make make[3]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/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/redis/src/redis-8.0.0/deps/fast_float' c++ -Wall -O3 -std=c++11 -DFASTFLOAT_ALLOWS_LEADING_PLUS -c fast_float_strtod.cpp make[3]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/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 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 make[3]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/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 ldump.o ldump.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -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 lfunc.o lfunc.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -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 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 -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -g -ggdb -pedantic hiredis.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 -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -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 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 -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -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 lopcodes.o lopcodes.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -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 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 -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -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 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 -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -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 lstring.o lstring.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 -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 -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 -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/redis/src/redis-8.0.0/deps/fpconv' ar rcs libhdrhistogram.a hdr_histogram.o make[3]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/hdr_histogram' make[3]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/linenoise' ar rcs libhiredis.a alloc.o net.o hiredis.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 ar rcs libhiredis_ssl.a ssl.o make[3]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/hiredis' 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 -r libfast_float.a fast_float_strtod.o ar: creating libfast_float.a make[3]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/fast_float' make[3]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/lua/src' make[2]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps' CC threads_mngr.o CC adlist.o CC quicklist.o CC ae.o CC anet.o CC dict.o CC ebuckets.o CC eventnotifier.o CC iothread.o CC mstr.o CC kvstore.o CC sds.o CC server.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 intset.o CC sort.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 zmalloc.c:78:1: note: the alignment of '_Atomic long long int' fields changed in GCC 11.1 78 | } used_memory_entry; | ^ CC memtest.o CC syscheck.o CC crcspeed.o CC crccombine.o In file included from iothread.c:11: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from replication.c:29: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from server.c:15: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC crc64.o In file included from t_hash.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from t_string.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from db.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from t_set.c:15: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from t_list.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from syncio.c:11: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC bitops.o In file included from aof.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from pubsub.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from debug.c:15: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from t_zset.c:44: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from config.c:16: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from rdb.c:15: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from object.c:11: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC sentinel.o In file included from multi.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from crc16.c:1: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC notify.o In file included from sort.c:12: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC setproctitle.o CC blocked.o In file included from slowlog.c:22: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC hyperloglog.o In file included from eval.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC latency.o In file included from threads_mngr.c:16: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC sparkline.o In file included from networking.c:15: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from cluster.c:18: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from cluster_legacy.c:20: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC redis-check-rdb.o CC redis-check-aof.o CC geo.o CC lazyfree.o In file included from bitops.c:11: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC module.o In file included from bio.c:47: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC evict.o CC expire.o CC geohash.o In file included from rio.c:43: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from notify.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from hyperloglog.c:17: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from blocked.c:43: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC geohash_helper.o CC childinfo.o CC defrag.o CC siphash.o CC rax.o In file included from redis-check-aof.c:31: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from geo.h:4, from geo.c:31: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC t_stream.o CC listpack.o In file included from sentinel.c:11: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from lazyfree.c:1: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC localtime.o In file included from sparkline.c:16: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ redis-check-aof.c: In function 'processAnnotations': redis-check-aof.c:195:59: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 195 | printf("AOF %s has nothing before timestamp %ld, " | ~~^ | | | long int | %lld 196 | "aborting...\n", filename, to_timestamp); | ~~~~~~~~~~~~ | | | time_t {aka long long int} redis-check-aof.c:200:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 200 | printf("Failed to truncate AOF %s to timestamp %ld to offset %ld because it is not the last file.\n", | ~~^ | | | long int | %lld 201 | filename, to_timestamp, (long int)epos); | ~~~~~~~~~~~~ | | | time_t {aka long long int} redis-check-aof.c:208:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 208 | printf("Failed to truncate AOF %s to timestamp %ld\n", | ~~^ | | | long int | %lld 209 | filename, to_timestamp); | ~~~~~~~~~~~~ | | | time_t {aka long long int} redis-check-aof.c: In function 'checkSingleAof': redis-check-aof.c:297:59: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 297 | printf("Truncate nothing in AOF %s to timestamp %ld\n", aof_filename, to_timestamp); | ~~^ ~~~~~~~~~~~~ | | | | long int time_t {aka long long int} | %lld In file included from module.c:39: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ redis-check-aof.c: In function 'printAofStyle': redis-check-aof.c:448:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 448 | printf("Successfully truncated AOF %s to timestamp %ld\n", | ~~^ | | | long int | %lld 449 | aofFileName, to_timestamp); | ~~~~~~~~~~~~ | | | time_t {aka long long int} CC lolwut.o In file included from evict.c:13: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from expire.c:13: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC lolwut5.o In file included from latency.c:16: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC lolwut6.o CC acl.o CC tracking.o CC socket.o In file included from redis-check-rdb.c:11: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC tls.o CC sha256.o CC timeout.o CC setcpuaffinity.o CC monotonic.o CC mt19937-64.o In file included from childinfo.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC resp_parser.o In file included from t_stream.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC call_reply.o CC script_lua.o CC script.o CC functions.o CC function_lua.o In file included from lolwut6.c:22: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC commands.o In file included from defrag.c:21: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from acl.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from lolwut.c:16: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC strl.o In file included from tracking.c:11: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from resp_parser.c:40: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from timeout.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC connection.o CC unix.o In file included from tls.c:12: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC logreqres.o CC hnsw.o CC cJSON.o In file included from script.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC vset.o CC redis-cli.o In file included from socket.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC redisassert.o In file included from lolwut5.c:16: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC cli_common.o CC cli_commands.o In file included from functions.h:31, from function_lua.c:22: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ CC redis-benchmark.o In file included from script_lua.h:31, from script_lua.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from functions.h:31, from functions.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from ../modules/vector-sets/hnsw.c:47: ../modules/vector-sets/hnsw.h:114:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 114 | } HNSW; | ^ In file included from call_reply.c:10: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from commands.c:2: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from unix.c:27: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ ../modules/vector-sets/hnsw.c: In function 'hnsw_insert_serialized': ../modules/vector-sets/hnsw.c:2187:40: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 2187 | node->layers[i].links[j] = (hnswNode*)params[param_idx++]; | ^ ../modules/vector-sets/hnsw.c: In function 'hnsw_deserialize_index': ../modules/vector-sets/hnsw.c:2261:38: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 2261 | uint64_t linked_id = (uint64_t) node->layers[i].links[j]; | ^ In file included from connection.c:27: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ In file included from ../modules/vector-sets/vset.c:118: ../modules/vector-sets/hnsw.h:114:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 114 | } HNSW; | ^ ../modules/vector-sets/vset.c: In function 'VADD_thread': ../modules/vector-sets/vset.c:461:14: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 461 | int ef = (uint64_t)targ[6]; | ^ ../modules/vector-sets/vset.c: In function 'VADD_CASReply': ../modules/vector-sets/vset.c:492:14: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 492 | int ef = (uint64_t)targ[6]; | ^ In file included from logreqres.c:50: server.h:2244:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2244 | }; | ^ ../modules/vector-sets/vset.c: In function 'VSIM_RedisCommand': ../modules/vector-sets/vset.c:1104:19: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 1104 | targ[3] = (void*)count; | ^ LINK redis-benchmark LINK redis-cli LINK redis-server INSTALL redis-sentinel INSTALL redis-check-rdb INSTALL redis-check-aof Hint: It's a good idea to run 'make test' ;) make[1]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src' for dir in src; do make -C $dir test; done make[1]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src' CC Makefile.dep CC release.o LINK redis-server LINK redis-cli LINK redis-benchmark INSTALL redis-check-aof Cleanup: may take some time... OK Starting test server at port 21079 [ready]: 29615 Testing unit/acl-v2 [ready]: 29619 Testing unit/acl [ready]: 29617 Testing unit/aofrw [ready]: 29630 Testing unit/auth [ready]: 29618 Testing unit/bitfield [ready]: 29622 Testing unit/bitops [ready]: 29620 Testing unit/client-eviction [ready]: 29624 Testing unit/dump [ready]: 29623 Testing unit/expire [ready]: 29621 Testing unit/functions [ready]: 29616 Testing unit/geo [ready]: 29627 Testing unit/hyperloglog [ready]: 29628 Testing unit/info-command [ready]: 29629 Testing unit/info-keysizes [ready]: 29626 Testing unit/info [ready]: 29625 Testing unit/introspection-2 [ok]: BITCOUNT against wrong type (1 ms) [ok]: Test basic multiple selectors (4 ms) [ok]: BITCOUNT returns 0 against non existing key (0 ms) [ok]: DUMP / RESTORE are able to serialize / unserialize a simple key (2 ms) [ok]: BITCOUNT returns 0 with out of range indexes (1 ms) [ok]: Connections start with the default user (0 ms) [ok]: It is possible to create new users (1 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 (1 ms) [ok]: Only the set of correct passwords work (1 ms) [ok]: GEO with wrong type src key (4 ms) [ok]: BITCOUNT returns 0 with negative indexes where start > end (4 ms) [ok]: RESTORE can set an arbitrary expire to the materialized key (5 ms) [ok]: Test ACL selectors by default have no permissions (6 ms) [ok]: It is possible to remove passwords from the set of valid ones (0 ms) [ok]: BITFIELD signed SET and GET basics (1 ms) [ok]: AUTH fails if there is no password configured server side (1 ms) [ok]: BITCOUNT against test vector #1 (1 ms) [ok]: RESTORE can set an expire that overflows a 32 bit integer (1 ms) [ok]: Test deleting selectors (2 ms) [ok]: Arity check for auth command (0 ms) [ok]: Test password hashes can be added (1 ms) [ok]: BITFIELD unsigned SET and GET basics (1 ms) [ok]: Test selector syntax error reports the error in the selector context (1 ms) [ok]: BITCOUNT against test vector #2 (1 ms) [ok]: RESTORE can set an absolute expire (1 ms) [ok]: BITFIELD signed SET and GET together (3 ms) [ok]: Test flexible selector definition (2 ms) [ok]: Test password hashes validate input (0 ms) [ok]: RESTORE with ABSTTL in the past (1 ms) [ok]: BITCOUNT against test vector #3 (0 ms) [ok]: BITFIELD unsigned with SET, GET and INCRBY arguments (1 ms) [ok]: Test separate read permission (1 ms) [ok]: ACL GETUSER returns the password hash instead of the actual password (1 ms) [ok]: BITCOUNT against test vector #4 (1 ms) [ok]: RESTORE can set LRU (1 ms) [ok]: BITFIELD with only key as argument (1 ms) [ok]: Test hashed passwords removal (1 ms) [ok]: BITCOUNT against test vector #5 (0 ms) [ok]: By default users are not able to access any command (3 ms) [ok]: The microsecond part of the TIME command will not overflow (0 ms) [ok]: By default users are not able to access any key (1 ms) [ok]: Test separate write permission (1 ms) [ok]: It's possible to allow the access of a subset of keys (1 ms) [ok]: GEO with non existing src key (3 ms) [ok]: Test separate read and write permissions (1 ms) [ok]: By default, only default user is able to publish to any channel (1 ms) [ok]: FUNCTION - Basic usage (1 ms) [ok]: BITFIELD # form (2 ms) [ok]: Validate read and write permissions format - empty permission (0 ms) [ok]: FUNCTION - Load with unknown argument (1 ms) [ok]: By default, only default user is not able to publish to any shard channel (1 ms) [ok]: Validate read and write permissions format - empty selector (0 ms) [ok]: FUNCTION - Create an already exiting library raise error (1 ms) [ok]: GEO BYLONLAT with empty search (3 ms) [ok]: Validate read and write permissions format - empty pattern (1 ms) [ok]: BITFIELD basic INCRBY form (2 ms) [ok]: Validate read and write permissions format - no pattern (0 ms) [ok]: By default, only default user is able to subscribe to any channel (2 ms) [ok]: BITFIELD chaining of multiple commands (1 ms) [ok]: FUNCTION - Create an already exiting library raise error (case insensitive) (2 ms) [ok]: FUNCTION - Create a library with wrong name format (0 ms) [ok]: GEO BYMEMBER with non existing member (2 ms) [ok]: Test separate read and write permissions on different selectors are not additive (2 ms) [ok]: GEOADD create (1 ms) [ok]: FUNCTION - Create library with unexisting engine (0 ms) [ok]: FUNCTION - Test uncompiled script (0 ms) [ok]: GEOADD update (0 ms) [ok]: FUNCTION - test replace argument (0 ms) [ok]: By default, only default user is able to subscribe to any shard channel (2 ms) [ok]: FUNCTION - test function case insensitive (0 ms) [ok]: BITFIELD unsigned overflow wrap (2 ms) [ok]: FUNCTION - test replace argument with failure keeps old libraries (0 ms) [ok]: FUNCTION - test function delete (0 ms) [ok]: FUNCTION - test fcall bad arguments (1 ms) [ok]: FUNCTION - test fcall bad number of keys arguments (1 ms) [ok]: FUNCTION - test fcall negative number of keys (0 ms) [ok]: BITFIELD unsigned overflow sat (6 ms) [ok]: By default, only default user is able to subscribe to any pattern (6 ms) [ok]: GEOADD update with CH option (5 ms) [ok]: Test SET with separate read permission (6 ms) [ok]: It's possible to allow publishing to a subset of channels (0 ms) [ok]: GEOADD update with NX option (1 ms) [ok]: Test SET with separate write permission (2 ms) [ok]: BITFIELD signed overflow wrap (2 ms) [ok]: FUNCTION - test delete on not exiting library (4 ms) [ok]: It's possible to allow publishing to a subset of shard channels (0 ms) [ok]: GEOADD update with XX option (1 ms) [ok]: FUNCTION - test function kill when function is not running (1 ms) [ok]: Test SET with read and write permissions (3 ms) [ok]: KEYSIZES - Test i'th bin counts keysizes between (2^i) and (2^(i+1)-1) as expected (9 ms) [ok]: FUNCTION - test wrong subcommand (0 ms) [ok]: Validate subset of channels is prefixed with resetchannels flag (3 ms) [ok]: GEOADD update with CH NX option (1 ms) [ok]: BITFIELD signed overflow sat (3 ms) [ok]: GEOADD update with CH XX option (0 ms) [ok]: GEOADD update with XX NX option will return syntax error (1 ms) [ok]: Test BITFIELD with separate read permission (1 ms) [ok]: GEOADD update with invalid option (0 ms) [ok]: In transaction queue publish/subscribe/psubscribe to unauthorized channel will fail (2 ms) [ok]: GEOADD invalid coordinates (0 ms) [ok]: GEOADD multi add (1 ms) [ok]: Check geoset values (1 ms) [ok]: Test BITFIELD with separate write permission (1 ms) [ok]: GEORADIUS simple (sorted) (1 ms) [ok]: FUNCTION - test loading from rdb (4 ms) [ok]: GEORADIUS_RO simple (sorted) (0 ms) [ok]: It's possible to allow subscribing to a subset of channels (1 ms) [ok]: Test BITFIELD with read and write permissions (2 ms) [ok]: GEOSEARCH simple (sorted) (1 ms) [ok]: GEOSEARCH FROMLONLAT and FROMMEMBER cannot exist at the same time (1 ms) [ok]: info command with at most one sub command (2 ms) [ok]: It's possible to allow subscribing to a subset of shard channels (2 ms) [ok]: Test ACL log correctly identifies the relevant item when selectors are used (7 ms) [ok]: GEOSEARCH FROMLONLAT and FROMMEMBER one must exist (1 ms) [ok]: EXPIRE - set timeouts multiple times (4 ms) [ok]: info command with one sub-section (1 ms) [ok]: EXPIRE - It should be still possible to read 'x' (0 ms) [ok]: Test ACL GETUSER response information (1 ms) [ok]: GEOSEARCH BYRADIUS and BYBOX cannot exist at the same time (1 ms) [ok]: info command with multiple sub-sections (2 ms) [ok]: It's possible to allow subscribing to a subset of channel patterns (8 ms) [ok]: GEOSEARCH BYRADIUS and BYBOX one must exist (0 ms) [ok]: GEOSEARCH with STOREDIST option (1 ms) [ok]: Test ACL list idempotency (2 ms) [ok]: GEORADIUS withdist (sorted) (1 ms) [ok]: GEOSEARCH withdist (sorted) (1 ms) [ok]: Test R+W is the same as all permissions (1 ms) [ok]: RESTORE can set LFU (35 ms) [ok]: FUNCTION - test debug reload different options (12 ms) [ok]: GEORADIUS with COUNT (1 ms) [ok]: RESTORE returns an error of the key already exists (1 ms) [ok]: Test basic dry run functionality (1 ms) [ok]: GEORADIUS with multiple WITH* tokens (2 ms) [ok]: Test various commands for command permissions (0 ms) [ok]: RESTORE can overwrite an existing key with REPLACE (1 ms) [ok]: GEORADIUS with ANY not sorted by default (1 ms) [ok]: RESTORE can detect a syntax error for unrecognized options (0 ms) [ok]: GEORADIUS with ANY sorted by ASC (1 ms) [ok]: Subscribers are killed when revoked of channel permission (5 ms) [ok]: GEORADIUS with ANY but no COUNT (0 ms) [ok]: GEORADIUS with COUNT but missing integer argument (1 ms) [ok]: GEORADIUS with COUNT DESC (1 ms) [ok]: GEORADIUS HUGE, issue #2767 (2 ms) [ok]: GEORADIUSBYMEMBER simple (sorted) (0 ms) [ok]: GEORADIUSBYMEMBER_RO simple (sorted) (0 ms) [ok]: Subscribers are killed when revoked of channel permission (3 ms) [ok]: FUNCTION - test debug reload with nosave and noflush (5 ms) [ok]: Test various odd commands for key permissions (6 ms) [ok]: FUNCTION - test flushall and flushdb do not clean functions (1 ms) [ok]: Existence test commands are not marked as access (2 ms) [ok]: Subscribers are killed when revoked of channel permission (3 ms) [ok]: GEORADIUSBYMEMBER search areas contain satisfied points in oblique direction (4 ms) [ok]: GEORADIUSBYMEMBER crossing pole search (1 ms) [ok]: GEOSEARCH FROMMEMBER simple (sorted) (1 ms) [ok]: Intersection cardinaltiy commands are access commands (2 ms) [ok]: Subscribers are killed when revoked of pattern permission (3 ms) [ok]: GEOSEARCH vs GEORADIUS (2 ms) [ok]: Test general keyspace commands require some type of permission to execute (2 ms) [ok]: FUNCTION - test function dump and restore (6 ms) [ok]: Subscribers are killed when revoked of allchannels permission (2 ms) [ok]: FUNCTION - test function dump and restore with flush argument (1 ms) [ok]: GEOSEARCH non square, long and narrow (2 ms) [ok]: Cardinality commands require some type of permission to execute (3 ms) [ok]: GEOSEARCH corner point test (2 ms) [ok]: Subscribers are pardoned if literal permissions are retained and/or gaining allchannels (4 ms) [ok]: Test sharded channel permissions (2 ms) [ok]: GEORADIUSBYMEMBER withdist (sorted) (1 ms) [ok]: GEOHASH is able to return geohash strings (1 ms) [ok]: Test sort with ACL permissions (3 ms) [ok]: GEOHASH with only key as argument (1 ms) [ok]: Test DRYRUN with wrong number of arguments (1 ms) [ok]: FUNCTION - test function dump and restore with append argument (8 ms) [ok]: GEOPOS simple (1 ms) [ok]: FUNCTION - test function dump and restore with replace argument (2 ms) [ok]: GEOPOS missing element (1 ms) [ok]: FUNCTION - test function restore with bad payload do not drop existing functions (1 ms) [ok]: blocked command gets rejected when reprocessed after permission change (13 ms) [ok]: GEOPOS with only key as argument (0 ms) [ok]: FUNCTION - test function restore with wrong number of arguments (0 ms) [ok]: GEODIST simple & unit (1 ms) [ok]: FUNCTION - test fcall_ro with write command (1 ms) [ok]: GEODIST missing elements (1 ms) [ok]: FUNCTION - test fcall_ro with read only commands (1 ms) [ok]: GEORADIUS STORE option: syntax error (1 ms) [ok]: Users can be configured to authenticate with any password (1 ms) [ok]: FUNCTION - test keys and argv (0 ms) [ok]: GEOSEARCHSTORE STORE option: syntax error (0 ms) [ok]: FUNCTION - test command get keys on fcall (1 ms) [ok]: GEORANGE STORE option: incompatible options (1 ms) [ok]: FUNCTION - test command get keys on fcall_ro (0 ms) [ok]: ACLs can exclude single commands (1 ms) [ok]: GEORANGE STORE option: plain usage (1 ms) [ok]: GEORADIUSBYMEMBER STORE/STOREDIST option: plain usage (3 ms) [ok]: GEOSEARCHSTORE STORE option: plain usage (1 ms) [ok]: GEORANGE STOREDIST option: plain usage (2 ms) [ok]: GEOSEARCHSTORE STOREDIST option: plain usage (1 ms) [ok]: ACLs can include or exclude whole classes of commands (2 ms) [ok]: ACLs can include single subcommands (2 ms) [ok]: GEORANGE STOREDIST option: COUNT ASC and DESC (3 ms) [ok]: ACLs can exclude single subcommands, case 1 (2 ms) [ok]: GEOSEARCH the box spans -180° or 180° (2 ms) [ok]: ACLs can exclude single subcommands, case 2 (1 ms) [ok]: ACLs cannot include a subcommand with a specific arg (1 ms) [ok]: GEOSEARCH with small distance (2 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 (2 ms) [ok]: ACLs can block SELECT of all but a specific DB (1 ms) [ok]: ACLs can block all DEBUG subcommands except one (2 ms) [ok]: ACLs set can include subcommands, if already full command exists (2 ms) [ok]: RESTORE should not store key that are already expired, with REPLACE will propagate it as DEL or UNLINK (54 ms) [ok]: ACLs set can exclude subcommands, if already full command exists (4 ms) [ok]: DUMP of non existing key returns nil (0 ms) [ok]: ACL SETUSER RESET reverting to default newly created user (2 ms) [ok]: ACL GETUSER is able to translate back command permissions (2 ms) [1/96 done]: unit/info-command (0 seconds) Testing unit/introspection [ok]: ACL GETUSER provides reasonable results (43 ms) [ok]: latencystats: disable/enable (3 ms) [ok]: latencystats: configure percentiles (4 ms) [ok]: ACL GETUSER provides correct results (14 ms) [ok]: ACL CAT with illegal arguments (0 ms) [ok]: ACL CAT without category - list all categories (1 ms) [ok]: latencystats: bad configure percentiles (5 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]: latencystats: blocking commands (5 ms) [ok]: latencystats: subcommands (2 ms) [ok]: ACL LOG aggregates similar errors together and assigns unique entry-id to new errors (11 ms) [ok]: client evicted due to large argv (163 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 (7 ms) [ok]: ACL LOG is able to log keys access violations and key name (1 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 (1 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 (2 ms) [ok]: ACL LOG can accept a numerical argument to show less entries (3 ms) [ok]: ACL LOG can log failed auth attempts (1 ms) [ok]: ACLLOG - zero max length is correctly handled (2 ms) [ok]: ACL LOG entries are limited to a maximum amount (4 ms) [ok]: ACL LOG entries are still present on update of max len config (1 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]: 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 (0 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 (1 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 (1 ms) [ok]: latencystats: measure latency (54 ms) [ok]: Test behavior of loading ACLs (6 ms) [ok]: ACL-Metrics user AUTH failure (7 ms) [ok]: errorstats: failed call authentication error (8 ms) [ok]: ACL-Metrics invalid command accesses (5 ms) [ok]: AUTH fails when a wrong password is given (1 ms) [ok]: errorstats: failed call within MULTI/EXEC (5 ms) [ok]: ACL-Metrics invalid key accesses (5 ms) [ok]: Arbitrary command gives an error when AUTH is required (0 ms) [ok]: AUTH succeeds when the right password is given (1 ms) [ok]: Once AUTH succeeded we can actually send commands to the server (0 ms) [ok]: errorstats: failed call within LUA (5 ms) [ok]: ACL-Metrics invalid channels accesses (5 ms) [ok]: For unauthenticated clients multibulk and bulk length are limited (5 ms) [ok]: errorstats: failed call NOSCRIPT error (9 ms) [ok]: errorstats: failed call NOGROUP error (3 ms) [ok]: errorstats: rejected call unknown command (2 ms) [ok]: errorstats: rejected call within MULTI/EXEC (5 ms) [ok]: errorstats: rejected call due to wrong arity (3 ms) [ok]: client evicted due to large query buf (88 ms) [ok]: PING (0 ms) [ok]: CLIENT LIST (0 ms) [ok]: CLIENT LIST with IDs (1 ms) [ok]: CLIENT INFO (1 ms) [ok]: errorstats: rejected call by OOM error (8 ms) [ok]: CLIENT KILL with illegal arguments (3 ms) [ok]: errorstats: rejected call by authorization error (4 ms) [ok]: errorstats: blocking commands (3 ms) [ok]: client evicted due to percentage of maxmemory (37 ms) [ok]: MIGRATE is caching connections (233 ms) [2/96 done]: unit/acl-v2 (0 seconds) Testing unit/keyspace [ok]: KEYSIZES - Histogram of values of Bytes, Kilo and Mega (368 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 (1 ms) [ok]: Alice: can execute all command (1 ms) [ok]: DEL against a single item (1 ms) [ok]: Bob: just execute @set and acl command (1 ms) [ok]: Vararg DEL (2 ms) [ok]: Untagged multi-key commands (0 ms) [ok]: ACL LOAD only disconnects affected clients (4 ms) [ok]: KEYS with pattern (3 ms) [ok]: KEYS to get all keys (0 ms) [ok]: DBSIZE (0 ms) [ok]: KEYS with hashtag (1 ms) [ok]: ACL LOAD disconnects affected subscriber (4 ms) [ok]: DEL all keys (5 ms) [ok]: ACL LOAD disconnects clients of deleted users (5 ms) [ok]: ACL load and save (3 ms) [ok]: ACL load and save with restricted channels (3 ms) [ok]: FUNCTION - test function kill (413 ms) [ok]: errorstats: limit errors will not increase indefinitely (269 ms) [ok]: BITCOUNT fuzzing without start/end (558 ms) [ok]: BITFIELD overflow detection fuzzing (543 ms) [ok]: client evicted due to large multi buf (310 ms) [ok]: stats: eventloop metrics (112 ms) [ok]: First server should have role slave after SLAVEOF (102 ms) [ok]: ACL load on replica when connected to replica (0 ms) [ok]: For unauthenticated clients output buffer is limited (545 ms) [ok]: FUNCTION - test script kill not working on function (413 ms) [ok]: AUTH fails when binary password is wrong (0 ms) [ok]: AUTH succeeds when binary password is correct (0 ms) [ok]: Default user has access to all channels irrespective of flag (4 ms) [ok]: Update acl-pubsub-default, existing users shouldn't get affected (3 ms) [ok]: Single channel is valid (1 ms) [ok]: Single channel is not valid with allchannels (1 ms) [ok]: BITFIELD overflow wrap fuzzing (639 ms) [ok]: BITFIELD regression for #3221 (0 ms) [ok]: BITFIELD regression for #3564 (4 ms) [ok]: BITFIELD_RO with only key as argument (0 ms) [ok]: BITFIELD_RO fails when write option is used (0 ms) [ok]: Only default user has access to all channels irrespective of flag (1 ms) [ok]: FUNCTION - test function kill not working on eval (413 ms) [ok]: FUNCTION - test function flush (4 ms) [ok]: default: load from config file, without channel permission default user can't access any channels (0 ms) [ok]: FUNCTION - async function flush rebuilds Lua VM without causing race condition between main and lazyfree thread (260 ms) [ok]: DEL against expired key (1101 ms) [ok]: FUNCTION - test function wrong argument (0 ms) [ok]: EXISTS (3 ms) [ok]: Zero length value in key. SET/GET/EXISTS (1 ms) [ok]: Commands pipelining (0 ms) [ok]: Non existing command (0 ms) [ok]: RENAME basic usage (1 ms) [ok]: RENAME source key should no longer exist (1 ms) [ok]: RENAME against already existing key (1 ms) [ok]: RENAMENX basic usage (7 ms) [ok]: RENAMENX against already existing key (0 ms) [ok]: RENAMENX against already existing key (2) (1 ms) [ok]: RENAME against non existing source key (1 ms) [ok]: RENAME where source and dest key are the same (existing) (1 ms) [ok]: default: load from config file with all channels permissions (1 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 (2 ms) [ok]: DEL all keys again (DB 0) (1 ms) [ok]: DEL all keys again (DB 1) (1 ms) [ok]: COPY basic usage for string (2 ms) [ok]: HyperLogLog self test passes (1602 ms) [ok]: PFADD without arguments creates an HLL value (0 ms) [ok]: COPY for string does not replace an existing key without REPLACE option (1 ms) [ok]: Approximated cardinality after creation is zero (1 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]: COPY for string can replace an existing key with REPLACE option (1 ms) [ok]: PFADD works with empty string (regression) (0 ms) [ok]: PFCOUNT returns approximated cardinality of set (0 ms) [ok]: COPY for string ensures that copied data is independent of copying data (2 ms) [ok]: COPY for string does not copy data to no-integer DB (2 ms) [ok]: COPY can copy key expire metadata as well (0 ms) [ok]: COPY does not create an expire if it does not exist (1 ms) [ok]: COPY basic usage for list - quicklist (50 ms) [ok]: BITFIELD: setup slave (103 ms) [ok]: COPY basic usage for list - listpack (2 ms) [ok]: BITFIELD: write on master, read on slave (3 ms) [ok]: COPY basic usage for $type set (1 ms) [ok]: BITFIELD_RO with only key as argument on read-only replica (3 ms) [ok]: BITFIELD_RO fails when write option is used on read-only replica (0 ms) [ok]: COPY basic usage for $type set (2 ms) [ok]: client evicted due to watched key list (1074 ms) [ok]: COPY basic usage for $type set (34 ms) [ok]: COPY basic usage for listpack sorted set (2 ms) [ok]: COPY basic usage for skiplist sorted set (25 ms) [ok]: COPY basic usage for listpack hash (2 ms) [ok]: COPY basic usage for hashtable hash (25 ms) [ok]: BITCOUNT fuzzing with start/end (1215 ms) [ok]: BITCOUNT with start, end (2 ms) [ok]: BITCOUNT with illegal arguments (2 ms) [ok]: BITCOUNT against non-integer value (5 ms) [ok]: BITCOUNT regression test for github issue #582 (1 ms) [ok]: BITCOUNT misaligned prefix (0 ms) [ok]: BITCOUNT misaligned prefix + full words + remainder (0 ms) [ok]: BITOP NOT (empty string) (1 ms) [ok]: BITOP NOT (known string) (1 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]: Test loading an ACL file with duplicate users (3 ms) [ok]: Test loading an ACL file with duplicate default user (6 ms) [3/96 done]: unit/bitfield (2 seconds) Testing unit/latency-monitor [ok]: Test loading duplicate users in config on startup (30 ms) [ok]: LATENCY HISTOGRAM with empty histogram (1 ms) [ok]: COPY basic usage for stream (227 ms) [ok]: LATENCY HISTOGRAM all commands (2 ms) [ok]: LATENCY HISTOGRAM sub commands (1 ms) [ok]: Connect a replica to the master instance (106 ms) [ok]: FUNCTION - creation is replicated to replica (1 ms) [ok]: LATENCY HISTOGRAM with a subset of commands (5 ms) [ok]: FUNCTION - call on replica (0 ms) [ok]: LATENCY HISTOGRAM command (2 ms) [ok]: FUNCTION - restore is replicated to replica (2 ms) [ok]: FUNCTION - delete is replicated to replica (1 ms) [ok]: COPY basic usage for stream-cgroups (13 ms) [ok]: LATENCY HISTOGRAM with wrong command name skips the invalid one (3 ms) [ok]: MOVE basic usage (1 ms) [ok]: FUNCTION - flush is replicated to replica (4 ms) [ok]: MOVE against key existing in the target DB (1 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 (2 ms) [ok]: SET/GET keys in different DBs (2 ms) [ok]: RANDOMKEY (14 ms) [ok]: RANDOMKEY against empty DB (0 ms) [ok]: RANDOMKEY regression 1 (1 ms) [ok]: KEYS * two times with long key, Github issue #1208 (1 ms) [ok]: Regression for pattern matching long nested loops (1 ms) [ok]: Disconnecting the replica from master instance (103 ms) [ok]: FUNCTION - test replication to replica on rdb phase (0 ms) [ok]: FUNCTION - test replication to replica on rdb phase info command (0 ms) [ok]: FUNCTION - create on read only replica (0 ms) [ok]: FUNCTION - delete on read only replica (1 ms) [ok]: FUNCTION - function effect is replicated to replica (2 ms) [ok]: FUNCTION - modify key space of read only replica (0 ms) [ok]: MASTERAUTH test with binary password rdbchannel=yes (1017 ms) [ok]: Regression for pattern matching very long nested loops (91 ms) [ok]: Coverage: basic SWAPDB test and unhappy path (4 ms) [ok]: Coverage: SWAPDB and FLUSHDB (5 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 (1 ms) [ok]: SETEX - Check value (0 ms) [ok]: SETEX - Overwrite old key (3 ms) [4/96 done]: unit/keyspace (2 seconds) Testing unit/lazyfree [ok]: stats: instantaneous metrics (1603 ms) [ok]: CLIENT KILL maxAGE will kill old clients (2009 ms) [ok]: CLIENT KILL SKIPME YES/NO will kill all clients (6 ms) [ok]: CLIENT command unhappy path coverage (9 ms) [ok]: ACL from config file and config rewrite (236 ms) [ok]: CLIENT KILL close the client connection during bgsave (82 ms) [ok]: stats: debug metrics (114 ms) [ok]: CLIENT REPLY OFF/ON: disable all commands reply (43 ms) [5/96 done]: unit/acl (3 seconds) Testing unit/limits [ok]: CLIENT REPLY SKIP: skip the next command reply (46 ms) [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 (2 ms) [ok]: stats: client input and output buffer limit disconnections (147 ms) [ok]: BITOP and fuzzing (729 ms) [ok]: MONITOR supports redacting command arguments (8 ms) [ok]: MONITOR correctly handles multi-exec cases (2 ms) [ok]: clients: pubsub clients (9 ms) [ok]: HyperLogLogs are promote from sparse to dense (938 ms) [ok]: Change hll-sparse-max-bytes (1 ms) [ok]: clients: watching clients (19 ms) [ok]: MONITOR log blocked command only once (106 ms) [ok]: CLIENT GETNAME should return NIL if name is not assigned (0 ms) [ok]: CLIENT GETNAME check if name set correctly (1 ms) [ok]: CLIENT LIST shows empty fields for unassigned names (1 ms) [ok]: CLIENT SETNAME does not accept spaces (0 ms) [ok]: CLIENT SETNAME can assign a name to this connection (2 ms) [ok]: CLIENT SETNAME can change the name of an existing connection (1 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]: Hyperloglog promote to dense well in different hll-sparse-max-bytes (101 ms) [ok]: RESET does NOT clean library name (1 ms) [ok]: CLIENT SETINFO can clear library name (0 ms) [ok]: UNLINK can reclaim memory in background (508 ms) [ok]: memory: database and pubsub overhead and rehashing dict count (8 ms) [6/96 done]: unit/info (3 seconds) Testing unit/maxmemory [ok]: TTL, TYPE and EXISTS do not alter the last access time of a key (3002 ms) [ok]: FUNCTION can processes create, delete and flush commands in AOF when doing "debug loadaof" in read-only slaves (356 ms) [ok]: MASTERAUTH test with binary password rdbchannel=no (1021 ms) [ok]: SETEX - Wait for the key to expire (1101 ms) [ok]: SETEX - Wrong time parameter (1 ms) [ok]: PERSIST can undo an EXPIRE (1 ms) [ok]: PERSIST returns 0 against non existing or non volatile keys (0 ms) [ok]: LIBRARIES - test shared function can access default globals (1 ms) [ok]: LIBRARIES - usage and code sharing (2 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 (1 ms) [ok]: LIBRARIES - test registration with wrong name format (0 ms) [ok]: LIBRARIES - test registration with empty name (0 ms) [ok]: LIBRARIES - math.random from function load (1 ms) [ok]: LIBRARIES - redis.call from function load (0 ms) [ok]: LIBRARIES - redis.setresp from function load (0 ms) [ok]: LIBRARIES - redis.set_repl from function load (1 ms) [ok]: LIBRARIES - redis.acl_check_cmd from function load (0 ms) [ok]: LIBRARIES - malicious access test (2 ms) [ok]: LIBRARIES - delete removed all functions on library (0 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: false (129 ms) [ok]: LIBRARIES - register function inside a function (0 ms) [ok]: LIBRARIES - register library with no functions (1 ms) [ok]: FLUSHDB ASYNC can reclaim memory in background (464 ms) [7/96 done]: unit/auth (3 seconds) Testing unit/memefficiency [ok]: BITOP or fuzzing (903 ms) [ok]: lazy free a stream with all types of metadata (190 ms) [ok]: lazy free a stream with deleted cgroup (2 ms) [ok]: Check if maxclients works refusing connections (925 ms) [8/96 done]: unit/limits (1 seconds) Testing unit/multi [ok]: FLUSHALL SYNC optimized to run in bg as blocking FLUSHALL ASYNC (146 ms) [ok]: Run consecutive blocking FLUSHALL ASYNC successfully (2 ms) [ok]: FLUSHALL SYNC in MULTI not optimized to run as blocking FLUSHALL ASYNC (2 ms) [ok]: CONFIG save params special case handled properly (1014 ms) [ok]: CONFIG sanity (70 ms) [ok]: MULTI / EXEC basics (4 ms) [ok]: DISCARD (1 ms) [ok]: Nested MULTI are not allowed (0 ms) [ok]: MULTI where commands alter argc/argv (0 ms) [ok]: WATCH inside MULTI is not allowed (1 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 (9 ms) [ok]: If EXEC aborts, the client MULTI state is cleared (1 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) (3 ms) [ok]: EXEC fail on WATCHed key modified by SORT with STORE even if the result is empty (1 ms) [ok]: LIBRARIES - load timeout (502 ms) [ok]: LIBRARIES - verify global protection on the load run (0 ms) [ok]: LIBRARIES - named arguments (1 ms) [ok]: LIBRARIES - named arguments, bad function name (3 ms) [ok]: LIBRARIES - named arguments, bad callback type (0 ms) [ok]: LIBRARIES - named arguments, bad description (0 ms) [ok]: LIBRARIES - named arguments, unknown argument (0 ms) [ok]: LIBRARIES - named arguments, missing function name (0 ms) [ok]: LIBRARIES - named arguments, missing callback (1 ms) [ok]: FUNCTION - test function restore with function name collision (9 ms) [ok]: FUNCTION - test function list with code (1 ms) [ok]: FUNCTION - test function list with pattern (1 ms) [ok]: FUNCTION - test function list wrong argument (0 ms) [ok]: FUNCTION - test function list with bad argument to library name (1 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 (3 ms) [ok]: FUNCTION - verify allow-omm allows running any command (6 ms) [ok]: EXEC fail on lazy expired WATCHed key (105 ms) [ok]: WATCH stale keys should not fail EXEC (3 ms) [ok]: Delete WATCHed stale keys should not fail EXEC (3 ms) [ok]: FLUSHDB while watching stale keys should not fail EXEC (6 ms) [ok]: After successful EXEC key is no longer watched (7 ms) [ok]: After failed EXEC key is no longer watched (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]: FLUSHALL does not touch non affected keys (1 ms) [ok]: FLUSHDB is able to touch the watched keys (1 ms) [ok]: FLUSHDB does not touch non affected keys (8 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 (2 ms) [ok]: SWAPDB does not touch watched stale keys (6 ms) [ok]: SWAPDB does not touch non-existing key replaced with stale key (4 ms) [ok]: SWAPDB does not touch stale key replaced with another stale key (6 ms) [ok]: WATCH is able to remember the DB a key belongs to (4 ms) [ok]: WATCH will consider touched keys target of EXPIRE (1 ms) [ok]: CONFIG REWRITE sanity (264 ms) [ok]: FUNCTION - wrong flags type named arguments (0 ms) [ok]: FUNCTION - wrong flag type (0 ms) [ok]: FUNCTION - unknown flag (1 ms) [ok]: FUNCTION - write script on fcall_ro (5 ms) [ok]: FUNCTION - write script with no-writes flag (1 ms) [ok]: FUNCTION - deny oom (1 ms) [ok]: FUNCTION - deny oom on no-writes function (1 ms) [ok]: FUNCTION - allow stale (2 ms) [ok]: FUNCTION - redis version api (1 ms) [ok]: FUNCTION - function stats (1 ms) [ok]: FUNCTION - function stats reloaded correctly from rdb (5 ms) [ok]: FUNCTION - function stats delete library (0 ms) [ok]: FUNCTION - test function stats on loading failure (1 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 (1 ms) [ok]: FUNCTION - function test multiple names (0 ms) [ok]: FUNCTION - function test name with quotes (0 ms) [ok]: FUNCTION - trick global protection 1 (1 ms) [ok]: FUNCTION - test getmetatable on script load (1 ms) [ok]: BITOP xor fuzzing (672 ms) [9/96 done]: unit/functions (4 seconds) Testing unit/networking [ok]: BITOP NOT fuzzing (82 ms) [ok]: BITOP with integer encoded source objects (1 ms) [ok]: BITOP with non string source key (1 ms) [ok]: BITOP with empty string after non empty string (issue #529) (1 ms) [ok]: BITPOS against wrong type (1 ms) [ok]: BITPOS will illegal arguments (1 ms) [ok]: BITPOS against non-integer value (2 ms) [ok]: BITPOS bit=0 with empty key returns 0 (0 ms) [ok]: BITPOS bit=1 with empty key returns -1 (1 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 (6 ms) [ok]: BITPOS bit=0 unaligned+full word+reminder (4 ms) [ok]: BITPOS bit=1 unaligned+full word+reminder (3 ms) [ok]: eviction due to input buffer of a dead client, client eviction: false (931 ms) [ok]: BITPOS bit=1 returns -1 if string is all 0 bits (12 ms) [ok]: BITPOS bit=0 works with intervals (2 ms) [ok]: BITPOS bit=1 works with intervals (2 ms) [ok]: BITPOS bit=0 changes behavior if end is given (0 ms) [ok]: SETBIT/BITFIELD only increase dirty when the value changed (6 ms) [ok]: EXPIRE precision is now the millisecond (1105 ms) [ok]: CONFIG SET port number (255 ms) [ok]: PSETEX can set sub-second expires (103 ms) [ok]: Memory efficiency with values in range 32 (1106 ms) [ok]: PEXPIRE can set sub-second expires (107 ms) [ok]: CONFIG SET bind address (236 ms) [ok]: HyperLogLog sparse encoding stress test (1995 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 (1 ms) [ok]: Corrupted dense HyperLogLogs are detected: Wrong length (1 ms) [ok]: BITPOS bit=1 fuzzy testing using SETBIT (461 ms) [ok]: PEXPIREAT can set sub-second expires (202 ms) [ok]: TTL returns time to live in seconds (0 ms) [ok]: PTTL returns time to live in milliseconds (1 ms) [ok]: TTL / PTTL / EXPIRETIME / PEXPIRETIME return -1 if key has no expire (5 ms) [ok]: TTL / PTTL / EXPIRETIME / PEXPIRETIME return -2 if key does not exit (1 ms) [ok]: EXPIRETIME returns absolute expiration time in seconds (0 ms) [ok]: PEXPIRETIME returns absolute expiration time in milliseconds (1 ms) [ok]: CONFIG REWRITE handles save and shutdown properly (933 ms) [ok]: CONFIG SET with multiple args (2 ms) [ok]: CONFIG SET rollback on set error (4 ms) [ok]: CONFIG SET rollback on apply error (8 ms) [ok]: CONFIG SET duplicate configs (0 ms) [ok]: CONFIG SET set immutable (0 ms) [ok]: WATCH will consider touched expired keys (1014 ms) [ok]: CONFIG GET hidden configs (11 ms) [ok]: DISCARD should clear the WATCH dirty flag on the client (1 ms) [ok]: CONFIG GET multiple args (1 ms) [ok]: DISCARD should UNWATCH all the keys (4 ms) [ok]: eviction due to output buffers of pubsub, client eviction: false (798 ms) [ok]: MULTI / EXEC is not propagated (single write command) (96 ms) [ok]: CONFIG SET bind-source-addr (450 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: true (124 ms) [ok]: redis-server command line arguments - error cases (192 ms) [ok]: MULTI / EXEC is propagated correctly (multiple commands) (101 ms) [ok]: BITPOS bit=0 fuzzy testing using SETBIT (474 ms) [ok]: MULTI / EXEC is propagated correctly (multiple commands with SELECT) (101 ms) [ok]: MULTI / EXEC is propagated correctly (empty transaction) (105 ms) [ok]: Redis should actively expire keys incrementally (607 ms) [ok]: redis-server command line arguments - allow passing option name and option value in the same arg (238 ms) [ok]: Test latency events logging (3407 ms) [ok]: LATENCY HISTORY output is ok (6 ms) [ok]: LATENCY LATEST output is ok (0 ms) [ok]: LATENCY GRAPH can output the event graph (1 ms) [ok]: Default bind address configuration handling (221 ms) [ok]: Protected mode works as expected (10 ms) [ok]: MULTI / EXEC is propagated correctly (read-only commands) (94 ms) [ok]: redis-server command line arguments - wrong usage that we support anyway (148 ms) [ok]: Memory efficiency with values in range 64 (1005 ms) [10/96 done]: unit/networking (2 seconds) Testing unit/obuf-limits [ok]: MULTI / EXEC is propagated correctly (write command, no effect) (101 ms) [ok]: MULTI / EXEC with REPLICAOF (106 ms) [ok]: DISCARD should not fail during OOM (1 ms) [ok]: BITPOS/BITCOUNT fuzzy testing using SETBIT (505 ms) [ok]: CONFIG SET client-output-buffer-limit (2 ms) [11/96 done]: unit/bitops (6 seconds) Testing unit/oom-score-adj [ok]: redis-server command line arguments - allow option value to use the `--` prefix (234 ms) [ok]: eviction due to input buffer of a dead client, client eviction: true (773 ms) [ok]: redis-server command line arguments - option name and option value in the same arg and `--` prefix (154 ms) [ok]: CONFIG SET oom-score-adj works as expected (107 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 (1 ms) [ok]: CONFIG SET oom score restored on disable (1 ms) [ok]: CONFIG SET oom score relative and absolute (4 ms) [ok]: CONFIG SET out-of-range oom score (0 ms) [ok]: TOUCH alters the last access time of a key (3002 ms) [ok]: MULTI and script timeout (407 ms) [12/96 done]: unit/oom-score-adj (0 seconds) Testing unit/other [ok]: Coverage: HELP commands (7 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 (10 ms) [ok]: client evicted due to pubsub subscriptions (4642 ms) [ok]: eviction due to output buffers of pubsub, client eviction: true (427 ms) [ok]: Redis should lazy expire keys (1003 ms) [ok]: client evicted due to tracking redirection (65 ms) [ok]: EXEC and script timeout (410 ms) [ok]: Without maxmemory small integers are shared (1 ms) [ok]: With maxmemory and non-LRU policy integers are still shared (1 ms) [ok]: With maxmemory and LRU policy integers are not shared (1 ms) [ok]: Memory efficiency with values in range 128 (1168 ms) [ok]: MULTI-EXEC body and script timeout (410 ms) [ok]: redis-server command line arguments - save with empty input (1004 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-random) (531 ms) [ok]: redis-server command line arguments - take one bulk string with spaces for MULTI_ARG configs parsing (155 ms) [ok]: Operations in no-touch mode do not alter the last access time of a key (1102 ms) [ok]: cannot modify protected configuration - no (1 ms) [ok]: just EXEC and script timeout (412 ms) [ok]: exec with write commands and state change (2 ms) [ok]: exec with read commands and stale replica state change (4 ms) [ok]: EXEC with only read commands should not be rejected when OOM (7 ms) [ok]: EXEC with at least one use-memory command should fail (1 ms) [ok]: Blocking commands ignores the timeout (2 ms) [ok]: EXPIRE should not resurrect keys (issue #1026) (1006 ms) [ok]: 5 keys in, 5 keys out (6 ms) [ok]: EXPIRE with empty string as TTL should report an error (0 ms) [ok]: SET with EX with big integer should report an error (1 ms) [ok]: SET with EX with smallest integer should report an error (0 ms) [ok]: GETEX with big integer should report an error (4 ms) [ok]: GETEX with smallest integer should report an error (1 ms) [ok]: EXPIRE with big integer overflows when converted to milliseconds (1 ms) [ok]: PEXPIRE with big integer overflow when basetime is added (1 ms) [ok]: EXPIRE with big negative integer (1 ms) [ok]: PEXPIREAT with big integer works (0 ms) [ok]: MULTI propagation of PUBLISH (86 ms) [ok]: PEXPIREAT with big negative integer works (6 ms) [ok]: cannot modify protected configuration - local (12 ms) [ok]: FUZZ stresser with data model binary (1246 ms) [ok]: MULTI propagation of SCRIPT LOAD (101 ms) [ok]: MULTI propagation of EVAL (101 ms) [ok]: MULTI propagation of SCRIPT FLUSH (101 ms) [ok]: MULTI propagation of XREADGROUP (108 ms) [ok]: MULTI with SAVE (1 ms) [ok]: MULTI with SHUTDOWN (1 ms) [ok]: Memory efficiency with values in range 1024 (1142 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lru) (960 ms) [ok]: MULTI with BGREWRITEAOF (206 ms) [ok]: Operations in no-touch mode TOUCH alters the last access time of a key (1105 ms) [ok]: MULTI with config set appendonly (210 ms) [ok]: MULTI with config error (1 ms) [ok]: Flushall while watching several keys by one client (2 ms) [ok]: MULTI with FLUSHALL and AOF (5 ms) [ok]: FUZZ stresser with data model alpha (1068 ms) [13/96 done]: unit/multi (5 seconds) Testing unit/pause [ok]: Test read commands are not blocked by client pause (5 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lfu) (902 ms) [ok]: Test old pause-all takes precedence over new pause-write (less restrictive) (258 ms) [ok]: Test new pause time is smaller than old one, then old time preserved (106 ms) [ok]: Test write commands are paused by RO (2 ms) [ok]: Test special commands are paused by RO (7 ms) [ok]: Test read/admin multi-execs are not blocked by pause RO (3 ms) [ok]: Test write multi-execs are blocked by pause RO (2 ms) [ok]: Test scripts are blocked by pause RO (6 ms) [ok]: Test RO scripts are not blocked by pause RO (3 ms) [ok]: Test read-only scripts in multi-exec are not blocked by pause RO (3 ms) [ok]: Test write scripts in multi-exec are blocked by pause RO (8 ms) [ok]: Test may-replicate commands are rejected in RO scripts (1 ms) [ok]: Test multiple clients can be queued up and unblocked (3 ms) [ok]: Test clients with syntax errors will get responses immediately (1 ms) [ok]: Test both active and passive expires are skipped during client pause (104 ms) [ok]: Test that client pause starts at the end of a transaction (6 ms) [ok]: config during loading (1716 ms) [ok]: Operations in no-touch mode TOUCH from script alters the last access time of a key (1101 ms) [ok]: TOUCH returns the number of existing keys specified (4 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]: command stats for scripts (6 ms) [ok]: COMMAND COUNT get total number of Redis commands (0 ms) [ok]: COMMAND GETKEYS GET (1 ms) [ok]: COMMAND GETKEYSANDFLAGS (1 ms) [ok]: COMMAND GETKEYSANDFLAGS invalid args (1 ms) [ok]: COMMAND GETKEYS MEMORY USAGE (0 ms) [ok]: COMMAND GETKEYS XGROUP (0 ms) [ok]: COMMAND GETKEYS EVAL with keys (0 ms) [ok]: COMMAND GETKEYS EVAL without keys (3 ms) [ok]: COMMAND GETKEYS LCS (0 ms) [ok]: COMMAND GETKEYS MORE THAN 256 KEYS (5 ms) [ok]: COMMAND LIST syntax error (7 ms) [ok]: COMMAND LIST WITHOUT FILTERBY (6 ms) [ok]: COMMAND LIST FILTERBY ACLCAT against non existing category (1 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 (0 ms) [ok]: COMMAND INFO of invalid subcommands (1 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 (0 ms) [ok]: BLPOP command will not be marked with movablekeys (0 ms) [ok]: PING command will not be marked with movablekeys (0 ms) [ok]: MEMORY command will not be marked with movablekeys (2 ms) [ok]: MEMORY|USAGE command will not be marked with movablekeys (0 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 (1 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 (1 ms) [ok]: SORT_RO command is marked with movablekeys (1 ms) [ok]: MIGRATE command is marked with movablekeys (1 ms) [ok]: GEORADIUS command is marked with movablekeys (2 ms) [14/96 done]: unit/introspection-2 (9 seconds) Testing unit/printver [ok]: Test when replica paused, offset would not grow (8 ms) [ok]: Test replica offset would grow after unpause (1 ms) Testing Redis version 8.0.0 (00000000) [ok]: All time-to-live(TTL) in commands are propagated as absolute timestamp in milliseconds in AOF (2045 ms) [ok]: FUZZ stresser with data model compr (1047 ms) [15/96 done]: unit/printver (1 seconds) Testing unit/protocol [ok]: CONFIG REWRITE handles rename-command properly (320 ms) [ok]: Test the randomkey command will not cause the server to get into an infinite loop during the client pause write (7 ms) [16/96 done]: unit/pause (1 seconds) Testing unit/pubsub [ok]: FLUSHALL should not reset the dirty counter if we disable save (2 ms) [ok]: FLUSHALL should reset the dirty counter to 0 if we enable save (5 ms) [ok]: All TTL in commands are propagated as absolute timestamp in replication stream (77 ms) [ok]: Handle an empty query (43 ms) [ok]: Negative multibulk length (46 ms) [ok]: Out of range multibulk length (1 ms) [ok]: Wrong multibulk payload header (1 ms) [ok]: Negative multibulk payload length (1 ms) [ok]: Out of range multibulk payload length (1 ms) [ok]: Non-number multibulk payload length (1 ms) [ok]: Multi bulk request not followed by bulk arguments (1 ms) [ok]: Generic wrong number of args (1 ms) [ok]: Unbalanced number of quotes (1 ms) [ok]: Pub/Sub PING on RESP2 (1 ms) [ok]: Pub/Sub PING on RESP3 (1 ms) [ok]: PUBLISH/SUBSCRIBE basics (2 ms) [ok]: PUBLISH/SUBSCRIBE with two clients (8 ms) [ok]: PUBLISH/SUBSCRIBE after UNSUBSCRIBE without arguments (2 ms) [ok]: SUBSCRIBE to one channel more than once (1 ms) [ok]: UNSUBSCRIBE from non-subscribed channels (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]: First server should have role slave after REPLICAOF (2 ms) [ok]: For all replicated TTL-related commands, absolute expire times are identical on primary and replica (17 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-lru) (1064 ms) [ok]: Protocol desync regression test #1 (143 ms) [ok]: PubSub messages with CLIENT REPLY OFF (88 ms) [ok]: PUNSUBSCRIBE from non-subscribed channels (6 ms) [ok]: NUMSUB returns numbers, not strings (#1561) (0 ms) [ok]: NUMPATs returns the number of unique patterns (2 ms) [ok]: Mix SUBSCRIBE and PSUBSCRIBE (2 ms) [ok]: PUNSUBSCRIBE and UNSUBSCRIBE should always reply (1 ms) [ok]: Keyspace notifications: we receive keyspace notifications (43 ms) [ok]: Protocol desync regression test #2 (89 ms) [ok]: Keyspace notifications: we receive keyevent notifications (43 ms) [ok]: Keyspace notifications: we can receive both kind of events (2 ms) [ok]: Keyspace notifications: we are able to mask events (5 ms) [ok]: Keyspace notifications: general events test (3 ms) [ok]: Keyspace notifications: list events test (2 ms) [ok]: Keyspace notifications: set events test (7 ms) [ok]: Keyspace notifications: zset events test (2 ms) [ok]: Protocol desync regression test #3 (60 ms) [ok]: raw protocol response (0 ms) [ok]: raw protocol response - deferred (0 ms) [ok]: raw protocol response - multiline (1 ms) [ok]: bulk reply protocol (3 ms) [ok]: RESP3 attributes (2 ms) [ok]: RESP3 attributes readraw (7 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]: test large number of args (80 ms) [ok]: test argument rewriting - issue 9598 (1 ms) [ok]: expired key which is created in writeable replicas should be deleted by active expiry (295 ms) [ok]: SET command will remove expire (1 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed (1 ms) [ok]: CONFIG REWRITE handles alias config properly (795 ms) [ok]: Regression for a crash with blocking ops and pipelining (2 ms) [ok]: Keyspace notifications: hash events test (listpackex) (419 ms) [ok]: IO threads client number (252 ms) [ok]: FLUSHALL and bgsave (1004 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-lfu) (937 ms) [ok]: Keyspace notifications: hash events test (hashtable) (418 ms) [ok]: Clients are evenly distributed among io threads (269 ms) [17/96 done]: unit/introspection (11 seconds) Testing unit/pubsubshard [ok]: Keyspace notifications: stream events test (5 ms) [ok]: BGSAVE (109 ms) [ok]: SELECT an out of range DB (0 ms) [ok]: Keyspace notifications: expired events (triggered expire) (107 ms) [ok]: SPUBLISH/SSUBSCRIBE basics (4 ms) [ok]: SPUBLISH/SSUBSCRIBE with two clients (2 ms) [ok]: SPUBLISH/SSUBSCRIBE after UNSUBSCRIBE without arguments (5 ms) [ok]: SSUBSCRIBE to one channel more than once (2 ms) [ok]: SUNSUBSCRIBE from non-subscribed channels (1 ms) [ok]: PUBSUB command basics (0 ms) [ok]: SPUBLISH/SSUBSCRIBE with two clients (3 ms) [ok]: SPUBLISH/SSUBSCRIBE with PUBLISH/SUBSCRIBE (4 ms) [ok]: Keyspace notifications: expired events (background expire) (111 ms) [ok]: Keyspace notifications: evicted events (4 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 (2 ms) [ok]: publish to self inside script (1 ms) [ok]: unsubscribe inside multi, and publish to self (2 ms) [ok]: PubSubShard with CLIENT REPLY OFF (90 ms) [18/96 done]: unit/pubsub (1 seconds) Testing unit/querybuf [ok]: Memory efficiency with values in range 16384 (3765 ms) [ok]: setup replication for following tests (106 ms) [ok]: publish message to master and receive on replica (5 ms) [19/96 done]: unit/memefficiency (9 seconds) Testing unit/quit [ok]: maxmemory - is the memory limit honoured? (policy volatile-random) (911 ms) [ok]: QUIT returns OK (1 ms) [ok]: Pipelined commands after QUIT must not be executed (2 ms) [ok]: Pipelined commands after QUIT that exceed read buffer size (2 ms) [20/96 done]: unit/quit (0 seconds) Testing unit/replybufsize [ok]: SET - use KEEPTTL option, TTL should not be removed after loadaof (2007 ms) [ok]: GETEX use of PERSIST option should remove TTL (1 ms) [ok]: GETEX use of PERSIST option should remove TTL after loadaof (2 ms) [ok]: GETEX propagate as to replica as PERSIST, DEL, or nothing (23 ms) [ok]: EXPIRE with NX option on a key with ttl (3 ms) [ok]: EXPIRE with NX option on a key without ttl (1 ms) [ok]: EXPIRE with XX option on a key with ttl (1 ms) [ok]: EXPIRE with XX option on a key without ttl (1 ms) [ok]: EXPIRE with GT option on a key with lower ttl (1 ms) [ok]: EXPIRE with GT option on a key with higher ttl (0 ms) [ok]: EXPIRE with GT option on a key without ttl (0 ms) [ok]: EXPIRE with LT option on a key with higher ttl (1 ms) [ok]: EXPIRE with LT option on a key with lower ttl (2 ms) [ok]: EXPIRE with LT option on a key without ttl (1 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 (1 ms) [ok]: EXPIRE with conflicting options: LT GT (0 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 (1 ms) [ok]: EXPIRE with negative expiry on a non-valitale key (1 ms) [ok]: EXPIRE with non-existed key (7 ms) [ok]: Check consistency of different data types after a reload (1466 ms) [21/96 done]: unit/pubsubshard (1 seconds) Testing unit/scan [ok]: Redis should not propagate the read command on lazy expire (73 ms) [ok]: SCAN: Lazy-expire should not be wrapped in MULTI/EXEC (101 ms) [ok]: RANDOMKEY: Lazy-expire should not be wrapped in MULTI/EXEC (100 ms) [ok]: {standalone} SCAN basic (188 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-ttl) (959 ms) [ok]: verify reply buffer limits (666 ms) [ok]: Same dataset digest if saving/reloading as AOF? (366 ms) [22/96 done]: unit/replybufsize (1 seconds) Testing unit/scripting [ok]: EXPIRES after a reload (snapshot + append only file rewrite) (58 ms) [ok]: {standalone} SCAN COUNT (197 ms) [ok]: LATENCY GRAPH can output the expire event graph (0 ms) [ok]: LATENCY of expire events are correctly collected (7537 ms) [ok]: LATENCY HISTORY / RESET with wrong event name is fine (0 ms) [ok]: LATENCY DOCTOR produces some output (1 ms) [ok]: LATENCY RESET is able to reset events (5 ms) [ok]: LATENCY HELP should not have unexpected options (1 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (0 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 redis (0 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (1 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua true boolean -> Redis protocol type conversion (4 ms) [ok]: EVAL - Lua false boolean -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua status code reply -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua error reply -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua table -> Redis protocol type conversion (1 ms) [ok]: EVAL - Are the KEYS and ARGV arrays populated correctly? (0 ms) [ok]: EVAL - is Lua able to call Redis API? (1 ms) [ok]: EVAL - Redis integer -> Lua type conversion (1 ms) [ok]: EVAL - Lua number -> Redis integer conversion (1 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (0 ms) [ok]: EVAL - Redis multi bulk -> Lua type conversion (2 ms) [ok]: EVAL - Redis status reply -> Lua type conversion (0 ms) [ok]: EVAL - Redis error reply -> Lua type conversion (1 ms) [ok]: EVAL - Redis nil bulk reply -> Lua type conversion (1 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 (0 ms) [ok]: EVAL - Scripts do not block on brpoplpush command (1 ms) [ok]: EVAL - Scripts do not block on blmove command (6 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 (1 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 (1 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 redis.call/pcall is considered an error (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (1 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis 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 (1 ms) [ok]: EVAL - JSON string decoding (0 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) [23/96 done]: unit/latency-monitor (11 seconds) Testing unit/shutdown [ok]: {standalone} SCAN MATCH (161 ms) [ok]: {standalone} SCAN TYPE (223 ms) [ok]: Temp rdb will be deleted if we use bg_unlink when shutdown (198 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (445 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (5 ms) [ok]: EVAL - Numerical sanity check from bitop (2 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 (1 ms) [ok]: redis.sha1hex() implementation (1 ms) [ok]: {standalone} SCAN unknown type (180 ms) [ok]: SHUTDOWN ABORT can cancel SIGTERM (13 ms) [ok]: Temp rdb will be deleted in signal handle (94 ms) [ok]: Regression for a crash with cron release of client arguments (3002 ms) [24/96 done]: unit/protocol (4 seconds) Testing unit/slowlog [ok]: {standalone} SCAN with expired keys (252 ms) [ok]: RDB save will be failed in shutdown (9 ms) [ok]: SLOWLOG - check that it starts with an empty log (0 ms) [ok]: SHUTDOWN will abort if rdb save failed on signal (107 ms) [ok]: SHUTDOWN will abort if rdb save failed on shutdown command (5 ms) [ok]: SHUTDOWN can proceed if shutdown command was with nosave (4 ms) [ok]: Clean up rdb same named folder (1 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-random) (1128 ms) [ok]: {standalone} SCAN with expired keys with TYPE filter (192 ms) [ok]: {standalone} SSCAN with encoding intset (3 ms) [ok]: {standalone} SSCAN with encoding listpack (3 ms) [ok]: {standalone} SSCAN with encoding hashtable (7 ms) [ok]: {standalone} HSCAN with encoding listpack (3 ms) [ok]: {standalone} HSCAN with large value listpack (1 ms) [ok]: SLOWLOG - only logs commands taking more time than specified (201 ms) [ok]: {standalone} HSCAN with encoding hashtable (127 ms) [ok]: {standalone} HSCAN with large value hashtable (2 ms) [ok]: SLOWLOG - zero max length is correctly handled (20 ms) [ok]: {standalone} ZSCAN with encoding listpack (3 ms) [ok]: SLOWLOG - max entries is correctly handled (13 ms) [ok]: SLOWLOG - GET optional argument to limit output len works (3 ms) [ok]: SLOWLOG - RESET subcommand works (0 ms) [ok]: SHUTDOWN SIGTERM will abort if there's an initial AOFRW - default (106 ms) [ok]: {standalone} ZSCAN with encoding skiplist (111 ms) [25/96 done]: unit/shutdown (1 seconds) Testing unit/sort [ok]: {standalone} SCAN guarantees check under write load (42 ms) [ok]: {standalone} SSCAN with integer encoded object (issue #1345) (1 ms) [ok]: {standalone} SSCAN with PATTERN (1 ms) [ok]: {standalone} HSCAN with PATTERN (1 ms) [ok]: {standalone} HSCAN with NOVALUES (0 ms) [ok]: {standalone} ZSCAN with PATTERN (0 ms) [ok]: SLOWLOG - logged entry sanity check (201 ms) [ok]: SLOWLOG - Certain commands are omitted that contain sensitive information (5 ms) [ok]: SLOWLOG - Some commands can redact sensitive fields (6 ms) [ok]: {standalone} ZSCAN scores: regression test for issue #2175 (81 ms) [ok]: SLOWLOG - Rewritten commands are logged as their original command (7 ms) [ok]: SLOWLOG - commands with too many arguments are trimmed (2 ms) [ok]: SLOWLOG - too long arguments are trimmed (1 ms) [ok]: Listpack: SORT BY key (1 ms) [ok]: Listpack: SORT BY key with limit (0 ms) [ok]: Listpack: SORT BY hash field (1 ms) [ok]: query buffer resized correctly (3055 ms) [ok]: query buffer resized correctly when not idle (46 ms) [ok]: SLOWLOG - EXEC is not logged, just executed commands (203 ms) [ok]: Measures elapsed time os.clock() (1223 ms) [ok]: Prohibit dangerous lua methods in sandbox (1 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (4 ms) [ok]: Globals protection reading an undeclared global variable (1 ms) [ok]: Globals protection setting an undeclared global* (0 ms) [ok]: lua bit.tohex bug (0 ms) [ok]: Test an example script DECR_IF_GT (3 ms) [ok]: SLOWLOG - can clean older entries (202 ms) [ok]: Quicklist: SORT BY key (17 ms) [ok]: Quicklist: SORT BY key with limit (1 ms) [ok]: Quicklist: SORT BY hash field (18 ms) [ok]: EXPIRES after AOF reload (without rewrite) (2122 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-lru) (1236 ms) [ok]: SLOWLOG - can be disabled (405 ms) [ok]: SLOWLOG - count must be >= -1 (0 ms) [ok]: SLOWLOG - get all slow logs (6 ms) [ok]: SLOWLOG - blocking command is reported only after unblocked (10 ms) [26/96 done]: unit/slowlog (1 seconds) Testing unit/tls [ok]: MIGRATE cached connections are released after some time (15002 ms) [27/96 done]: unit/tls (0 seconds) Testing unit/tracking [ok]: Clients are able to enable tracking and redirect it (1 ms) [ok]: The other connection is able to get invalidations (1 ms) [ok]: The client is now able to disable tracking (4 ms) [ok]: Clients can enable the BCAST mode with the empty prefix (0 ms) [ok]: The connection gets invalidation messages about all the keys (1 ms) [ok]: Clients can enable the BCAST mode with prefixes (1 ms) [ok]: Adding prefixes to BCAST mode works (1 ms) [ok]: Tracking NOLOOP mode in standard mode works (1 ms) [ok]: Tracking NOLOOP mode in BCAST mode works (1 ms) [ok]: MIGRATE is able to migrate a key between two instances (255 ms) [ok]: MIGRATE is able to copy a key between two instances (153 ms) [ok]: MIGRATE will not overwrite existing keys, unless REPLACE is used (147 ms) [ok]: expire scan should skip dictionaries with lot's of empty buckets (1167 ms) [ok]: MIGRATE propagates TTL correctly (242 ms) [28/96 done]: unit/expire (16 seconds) Testing unit/violations [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-lru) (1088 ms) [ok]: SORT adds integer field to list (1 ms) [29/96 done]: unit/violations (0 seconds) Testing unit/wait [ok]: Tracking gets notification of expired keys (1002 ms) [ok]: Tracking gets notification of lazy expired keys (106 ms) [ok]: HELLO 3 reply is correct (1 ms) [ok]: HELLO without protover (2 ms) [ok]: RESP3 based basic invalidation (1 ms) [ok]: RESP3 tracking redirection (4 ms) [ok]: Invalidations of previous keys can be redirected after switching to RESP3 (1 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 (6 ms) [ok]: Tracking only occurs for scripts when a command calls a read-only command (3 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 (6 ms) [ok]: Different clients using different protocols can track the same key (1 ms) [ok]: No invalidation message when using OPTIN option (2 ms) [ok]: Invalidation message sent when using OPTIN option with CLIENT CACHING yes (1 ms) [ok]: Invalidation message sent when using OPTOUT option (7 ms) [ok]: No invalidation message when using OPTOUT option with CLIENT CACHING no (1 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 (2 ms) [ok]: Setup slave (102 ms) [ok]: WAIT out of range timeout (milliseconds) (1 ms) [ok]: WAIT should acknowledge 1 additional copy of the data (2 ms) [ok]: Tracking invalidation message is not interleaved with multiple keys response (118 ms) [ok]: Tracking invalidation message is not interleaved with transaction response (2 ms) [ok]: Tracking invalidation message of eviction keys should be before response (13 ms) [ok]: Unblocked BLMOVE gets notification after response (2 ms) [ok]: Tracking gets notification on tracking table key eviction (10 ms) [ok]: Invalidation message received for flushall (7 ms) [ok]: Invalidation message received for flushdb (3 ms) [ok]: Test ASYNC flushall (7 ms) [ok]: flushdb tracking invalidation message is not interleaved with transaction response (6 ms) [ok]: EVAL does not leak in the Lua stack (2254 ms) [ok]: Call Redis command with many args from Lua (issue #1764) (2 ms) [ok]: Number conversion precision test (issue #1118) (1 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) (1 ms) [ok]: Functions in the Redis 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 (4 ms) [ok]: Server is able to evacuate enough keys when num of keys surpasses limit by more than defined initial effort (299 ms) [ok]: Tracking info is correct (5 ms) [ok]: CLIENT GETREDIR provides correct client id (5 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking off (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking on (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking on with options (0 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 (2 ms) [ok]: Script return recursive object (252 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking redir broken (9 ms) [ok]: Regression test for #11715 (5 ms) [ok]: RESP3 based basic invalidation with client reply off (4 ms) [ok]: Script check unpack with massive arguments (47 ms) [ok]: Script read key with expiration set (1 ms) [ok]: Script del key with expiration set (1 ms) [ok]: Script ACL check (2 ms) [ok]: Binary code loading failed (1 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 redis table (0 ms) [ok]: Try trick readonly table on json table (1 ms) [ok]: Try trick readonly table on cmsgpack table (0 ms) [ok]: RESP2 based basic invalidation with client reply off (45 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (1 ms) [ok]: Test dofile are not available (0 ms) [ok]: Test print are not available (1 ms) [ok]: RESP3 based basic redirect invalidation with client reply off (4 ms) [ok]: RESP3 based basic tracking-redir-broken with client reply off (4 ms) [ok]: Client closed in the middle of blocking FLUSHALL ASYNC (13674 ms) [ok]: Pending commands in querybuf processed once unblocking FLUSHALL ASYNC (2 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-random) (1171 ms) [ok]: query buffer resized correctly with fat argv (2958 ms) [ok]: PIPELINING stresser (also a regression for the old epoll bug) (2488 ms) [ok]: APPEND basics (1 ms) [ok]: APPEND basics, integer encoded values (1 ms) [ok]: Coverage: Basic CLIENT CACHING (1 ms) [ok]: Coverage: Basic CLIENT REPLY (0 ms) [ok]: Coverage: Basic CLIENT TRACKINGINFO (0 ms) [ok]: Coverage: Basic CLIENT GETREDIR (2 ms) [30/96 done]: unit/tracking (3 seconds) Testing unit/type/hash-field-expire [ok]: Client executes small argv commands using reusable query buffer (1 ms) [ok]: HEXPIRE/HEXPIREAT/HPEXPIRE/HPEXPIREAT - Returns array if the key does not exist (7 ms) [ok]: HEXPIRE/HEXPIREAT/HPEXPIRE/HPEXPIREAT - Verify that the expire time does not overflow (2 ms) [ok]: HPEXPIRE(AT) - Test 'NX' flag (listpackex) (2 ms) [ok]: HPEXPIRE(AT) - Test 'XX' flag (listpackex) (2 ms) [ok]: HPEXPIRE(AT) - Test 'GT' flag (listpackex) (2 ms) [ok]: HPEXPIRE(AT) - Test 'LT' flag (listpackex) (2 ms) [ok]: HPEXPIREAT - field not exists or TTL is in the past (listpackex) (1 ms) [ok]: HPEXPIRE - wrong number of arguments (listpackex) (1 ms) [ok]: HPEXPIRE - parameter expire-time near limit of 2^46 (listpackex) (1 ms) [ok]: Lazy Expire - fields are lazy deleted (listpackex) (8 ms) [31/96 done]: unit/querybuf (7 seconds) Testing unit/type/hash [ok]: WAIT should not acknowledge 2 additional copies of the data (1086 ms) [ok]: HSET/HLEN - Small hash creation (2 ms) [ok]: Is the small hash encoded with a listpack? (6 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (414 ms) [ok]: HRANDFIELD - listpack (27 ms) [ok]: HRANDFIELD - hashtable (30 ms) [ok]: HRANDFIELD with RESP3 (1 ms) [ok]: HRANDFIELD count of 0 is handled correctly (6 ms) [ok]: HRANDFIELD count overflow (1 ms) [ok]: HRANDFIELD with against non existing key (0 ms) [ok]: HRANDFIELD count of 0 is handled correctly - emptyarray (0 ms) [ok]: HRANDFIELD with against non existing key - emptyarray (0 ms) [ok]: APPEND fuzzing (492 ms) [ok]: Client output buffer hard limit is enforced (12357 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (174 ms) [ok]: FLUSHDB (135 ms) [ok]: Perform a final SAVE to leave a clean DB on disk (2 ms) [ok]: RESET clears client state (0 ms) [ok]: RESET clears MONITOR state (2 ms) [ok]: RESET clears and discards MULTI state (1 ms) [ok]: RESET clears Pub/Sub state (1 ms) [ok]: RESET clears authenticated state (1 ms) [ok]: Subcommand syntax error crash (issue #10070) (1 ms) [ok]: AOF rewrite during write load: RDB preamble=yes (18063 ms) [ok]: Active Expire - deletes hash that all its fields got expired (listpackex) (430 ms) [ok]: HPEXPIRE - Flushall deletes all pending expired fields (listpackex) (4 ms) [ok]: HTTL/HPTTL - Returns array if the key does not exist (0 ms) [ok]: HTTL/HPTTL - Input validation gets failed on nonexists field or field without expire (listpackex) (3 ms) [ok]: HTTL/HPTTL - returns time to live in seconds/msillisec (listpackex) (1 ms) [ok]: HEXPIRETIME/HPEXPIRETIME - Returns array if the key does not exist (1 ms) [ok]: HEXPIRETIME - returns TTL in Unix timestamp (listpackex) (1 ms) [ok]: HRANDFIELD with - hashtable (294 ms) [ok]: Timedout script does not cause a false dead client (212 ms) [ok]: Timedout script link is still usable after Lua returns (279 ms) [ok]: HRANDFIELD with - listpack (315 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-ttl) (1180 ms) [ok]: HSET/HLEN - Big hash creation (248 ms) [ok]: Is the big hash encoded with an hash table? (0 ms) [ok]: HGET against the small hash (2 ms) [ok]: Timedout scripts and unblocked command (302 ms) [ok]: HGET against the big hash (149 ms) [ok]: HGET against non existing key (1 ms) [ok]: HSET in update and insert mode (2 ms) [ok]: HSETNX target key missing - small hash (1 ms) [ok]: HSETNX target key exists - small hash (1 ms) [ok]: HSETNX target key missing - big hash (0 ms) [ok]: HSETNX target key exists - big hash (0 ms) [ok]: HSET/HMSET wrong number of args (1 ms) [ok]: HMSET - small hash (1 ms) [ok]: HMSET - big hash (67 ms) [ok]: HMGET against non existing key and fields (1 ms) [ok]: Hash commands against wrong type (10 ms) [ok]: HMGET - small hash (0 ms) [ok]: Timedout scripts that modified data can't be killed by SCRIPT KILL (210 ms) [ok]: SHUTDOWN NOSAVE can kill a timedout script anyway (20 ms) [ok]: WAIT should not acknowledge 1 additional copy if slave is blocked (1266 ms) [ok]: HMGET - big hash (90 ms) [ok]: HKEYS - small hash (6 ms) [ok]: HTTL/HPTTL - Verify TTL progress until expiration (listpackex) (1013 ms) [ok]: HPEXPIRE - DEL hash with non expired fields (valgrind test) (listpackex) (1 ms) [ok]: HKEYS - big hash (37 ms) [ok]: HEXPIREAT - Set time in the past (listpackex) (0 ms) [ok]: HEXPIREAT - Set time and then get TTL (listpackex) (1 ms) [ok]: HVALS - small hash (0 ms) [ok]: Lazy Expire - delete hash with expired fields (listpackex) (6 ms) [ok]: Test HRANDFIELD deletes all expired fields (listpackex) (32 ms) [ok]: HVALS - big hash (7 ms) [ok]: HGETALL - small hash (4 ms) [ok]: Lazy Expire - HLEN does count expired fields (listpackex) (17 ms) [ok]: Lazy Expire - HSCAN does not report expired fields (listpackex) (17 ms) [ok]: Don't rehash if redis has child process (907 ms) [ok]: HGETALL - big hash (78 ms) [ok]: HGETALL against non-existing key (1 ms) [ok]: HDEL and return value (1 ms) [ok]: HDEL - more than a single value (4 ms) [ok]: HDEL - hash becomes empty before deleting all specified fields (0 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 (0 ms) [ok]: HINCRBY against non existing hash key (1 ms) [ok]: HINCRBY against hash key created by hincrby itself (5 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 (1 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 (0 ms) [ok]: HINCRBYFLOAT against non existing database key (1 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 (6 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 (1 ms) [ok]: HSTRLEN against the small hash (1 ms) [ok]: Before the replica connects we issue two EVAL commands (2 ms) [ok]: Connect a replica to the master instance (105 ms) [ok]: Replication of script multiple pushes to list with BLPOP (2 ms) [ok]: Lua scripts using SELECT are replicated correctly (2 ms) [ok]: Process title set as expected (6 ms) [ok]: HSTRLEN against the big hash (196 ms) [ok]: HSTRLEN against non existing field (1 ms) [ok]: HSTRLEN corner cases (4 ms) [ok]: HINCRBYFLOAT over hash-max-listpack-value encoded with a listpack (8 ms) [ok]: HGETDEL input validation (2 ms) [ok]: HGETDEL basic test (2 ms) [ok]: HGETDEL test with non existing fields (2 ms) [ok]: HGETDEL basic test (2 ms) [ok]: HGETDEL test with non existing fields (1 ms) [ok]: HGETDEL propagated as HDEL command to replica (34 ms) [ok]: Hash ziplist regression test for large keys (0 ms) [ok]: Test HSCAN with mostly expired fields return empty result (listpackex) (393 ms) [ok]: Lazy Expire - verify various HASH commands handling expired fields (listpackex) (15 ms) [ok]: A field with TTL overridden with another value (TTL discarded) (listpackex) (10 ms) [ok]: Hash fuzzing #1 - 10 fields (82 ms) [ok]: Modify TTL of a field (listpackex) (16 ms) [ok]: Test return value of set operation (listpackex) (1 ms) [ok]: Hash fuzzing #2 - 10 fields (49 ms) [ok]: Test HGETALL not return expired fields (listpackex) (290 ms) [ok]: maxmemory - policy volatile-lru should only remove volatile keys. (1409 ms) [ok]: Test RENAME hash with fields to be expired (listpackex) (115 ms) [ok]: Test RENAME hash that had HFEs but not during the rename (listpackex) (104 ms) [ok]: MOVE to another DB hash with fields to be expired (listpackex) (102 ms) [ok]: WAIT implicitly blocks on client pause since ACKs aren't sent (1219 ms) [ok]: Test COPY hash with fields to be expired (listpackex) (197 ms) [ok]: WAIT replica multiple clients unblock - reuse last result (176 ms) [ok]: Test COPY hash that had HFEs but not during the copy (listpackex) (97 ms) [ok]: Connect a replica to the master instance (107 ms) [ok]: Redis.replicate_commands() can be issued anywhere now (0 ms) [ok]: Redis.set_repl() can be issued before replicate_commands() now (1 ms) [ok]: Redis.set_repl() don't accept invalid values (1 ms) [ok]: Test selective replication of certain Redis commands from Lua (5 ms) [ok]: PRNG is seeded randomly for command replication (1 ms) [ok]: Using side effects is not a problem with command replication (5 ms) [ok]: Test SWAPDB hash-fields to be expired (listpackex) (101 ms) [ok]: Test SWAPDB hash that had HFEs but not during the swap (listpackex) (101 ms) [ok]: HMGET - returns empty entries if fields or hash expired (listpackex) (8 ms) [ok]: HPERSIST - Returns array if the key does not exist (listpackex) (1 ms) [ok]: HPERSIST - input validation (listpackex) (4 ms) [ok]: HPERSIST - verify fields with TTL are persisted (listpackex) (27 ms) [ok]: HTTL/HPERSIST - Test expiry commands with non-volatile hash (listpackex) (2 ms) [ok]: DUMP / RESTORE are able to serialize / unserialize a hash (3 ms) [ok]: RESTORE hash that had in the past HFEs but not during the dump (54 ms) [ok]: DUMP / RESTORE are able to serialize / unserialize a hash with TTL 0 for all fields (8 ms) [ok]: HINCRBY - discards pending expired field and reset its value (17 ms) [ok]: HINCRBY - preserve expiration time of the field (1 ms) [ok]: WAITAOF local copy before fsync (107 ms) [ok]: HINCRBYFLOAT - discards pending expired field and reset its value (18 ms) [ok]: HINCRBYFLOAT - preserve expiration time of the field (1 ms) [ok]: HGETDEL - delete field with ttl (listpackex) (36 ms) [ok]: HGETEX - input validation (listpackex) (2 ms) [ok]: HGETEX - input validation (expire time) (listpackex) (6 ms) [ok]: HGETEX - get without setting ttl (listpackex) (2 ms) [ok]: HGETEX - get and set the ttl (listpackex) (1 ms) [ok]: HGETEX - Test 'EX' flag (listpackex) (1 ms) [ok]: HGETEX - Test 'EXAT' flag (listpackex) (1 ms) [ok]: HGETEX - Test 'PX' flag (listpackex) (6 ms) [ok]: HGETEX - Test 'PXAT' flag (listpackex) (1 ms) [ok]: HGETEX - Test 'PERSIST' flag (listpackex) (2 ms) [ok]: HGETEX - Test setting ttl in the past will delete the key (listpackex) (1 ms) [ok]: HGETEX - Test active expiry (listpackex) (1 ms) [ok]: HGETEX - A field with TTL overridden with another value (TTL discarded) (listpackex) (7 ms) [ok]: HGETEX - Test with lazy expiry (listpackex) (7 ms) [ok]: HSETEX - input validation (listpackex) (15 ms) [ok]: HSETEX - Basic test (listpackex) (2 ms) [ok]: HSETEX - Test FXX flag (listpackex) (3 ms) [ok]: HSETEX - Test FXX flag with lazy expire (listpackex) (18 ms) [ok]: HSETEX - Test FNX flag (listpackex) (3 ms) [ok]: HSETEX - Test 'EX' flag (listpackex) (1 ms) [ok]: HSETEX - Test 'EXAT' flag (listpackex) (1 ms) [ok]: HSETEX - Test 'PX' flag (listpackex) (4 ms) [ok]: HSETEX - Test 'PXAT' flag (listpackex) (0 ms) [ok]: HSETEX - Test 'KEEPTTL' flag (listpackex) (2 ms) [ok]: HSETEX - Test no expiry flag discards TTL (listpackex) (1 ms) [ok]: HSETEX - Test with active expiry (21 ms) [ok]: HSETEX - Set time in the past (listpackex) (2 ms) [ok]: HEXPIRE/HEXPIREAT/HPEXPIRE/HPEXPIREAT - Returns array if the key does not exist (1 ms) [ok]: HEXPIRE/HEXPIREAT/HPEXPIRE/HPEXPIREAT - Verify that the expire time does not overflow (4 ms) [ok]: HPEXPIRE(AT) - Test 'NX' flag (hashtable) (1 ms) [ok]: HPEXPIRE(AT) - Test 'XX' flag (hashtable) (1 ms) [ok]: HPEXPIRE(AT) - Test 'GT' flag (hashtable) (2 ms) [ok]: HPEXPIRE(AT) - Test 'LT' flag (hashtable) (5 ms) [ok]: HPEXPIREAT - field not exists or TTL is in the past (hashtable) (1 ms) [ok]: HPEXPIRE - wrong number of arguments (hashtable) (1 ms) [ok]: HPEXPIRE - parameter expire-time near limit of 2^46 (hashtable) (1 ms) [ok]: Lazy Expire - fields are lazy deleted (hashtable) (8 ms) [ok]: maxmemory - policy volatile-lfu should only remove volatile keys. (1291 ms) [ok]: test RESP2/2 big number protocol parsing (4 ms) [ok]: test RESP2/2 malformed big number protocol parsing (0 ms) [ok]: test RESP2/2 map protocol parsing (1 ms) [ok]: test RESP2/2 set protocol parsing (1 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 (0 ms) [ok]: test RESP2/2 true protocol parsing (1 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (1 ms) [ok]: test RESP2/3 malformed big number protocol parsing (1 ms) [ok]: test RESP2/3 map protocol parsing (1 ms) [ok]: WAITAOF local copy everysec (601 ms) [ok]: WAITAOF local copy with appendfsync always (2 ms) [ok]: test RESP2/3 set protocol parsing (6 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 (0 ms) [ok]: test RESP2/3 true protocol parsing (1 ms) [ok]: test RESP2/3 false protocol parsing (1 ms) [ok]: WAITAOF local wait and then stop aof (8 ms) [ok]: WAITAOF local on server with aof disabled (1 ms) [ok]: test RESP3/2 big number protocol parsing (1 ms) [ok]: test RESP3/2 malformed big number protocol parsing (1 ms) [ok]: test RESP3/2 map protocol parsing (1 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 (1 ms) [ok]: test RESP3/2 true protocol parsing (1 ms) [ok]: test RESP3/2 false protocol parsing (7 ms) [ok]: test RESP3/3 big number protocol parsing (0 ms) [ok]: test RESP3/3 malformed big number protocol parsing (2 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 (0 ms) [ok]: test RESP3/3 null protocol parsing (1 ms) [ok]: test RESP3/3 verbatim protocol parsing (6 ms) [ok]: test RESP3/3 true protocol parsing (0 ms) [ok]: test RESP3/3 false protocol parsing (1 ms) [ok]: test resp3 attribute protocol parsing (4 ms) [ok]: Script block the time during execution (11 ms) [ok]: Script delete the expired key (3 ms) [ok]: TIME command using cached time (10 ms) [ok]: Active Expire - deletes hash that all its fields got expired (hashtable) (508 ms) [ok]: HPEXPIRE - Flushall deletes all pending expired fields (hashtable) (2 ms) [ok]: HTTL/HPTTL - Returns array if the key does not exist (0 ms) [ok]: HTTL/HPTTL - Input validation gets failed on nonexists field or field without expire (hashtable) (1 ms) [ok]: HTTL/HPTTL - returns time to live in seconds/msillisec (hashtable) (1 ms) [ok]: HEXPIRETIME/HPEXPIRETIME - Returns array if the key does not exist (0 ms) [ok]: HEXPIRETIME - returns TTL in Unix timestamp (hashtable) (0 ms) [ok]: Script block the time in some expiration related commands (89 ms) [ok]: RESTORE expired keys with expiration time (18 ms) [ok]: Big Quicklist: SORT BY key (1235 ms) [ok]: Big Quicklist: SORT BY key with limit (14 ms) [ok]: WAITAOF local if AOFRW was postponed (401 ms) [ok]: WAITAOF on demoted master gets unblocked with an error (2 ms) [ok]: WAITAOF replica copy before fsync (153 ms) [ok]: Test script flush will not leak memory - script:0 (402 ms) [ok]: Client output buffer soft limit is enforced if time is overreached (4410 ms) [ok]: Hash fuzzing #1 - 512 fields (2784 ms) [ok]: maxmemory - policy volatile-random should only remove volatile keys. (1297 ms) [ok]: HTTL/HPTTL - Verify TTL progress until expiration (hashtable) (1014 ms) [ok]: HPEXPIRE - DEL hash with non expired fields (valgrind test) (hashtable) (0 ms) [ok]: HEXPIREAT - Set time in the past (hashtable) (0 ms) [ok]: HEXPIREAT - Set time and then get TTL (hashtable) (1 ms) [ok]: Lazy Expire - delete hash with expired fields (hashtable) (6 ms) [ok]: Test HRANDFIELD deletes all expired fields (hashtable) (39 ms) [ok]: Lazy Expire - HLEN does count expired fields (hashtable) (16 ms) [ok]: Lazy Expire - HSCAN does not report expired fields (hashtable) (20 ms) [ok]: Big Quicklist: SORT BY hash field (1353 ms) [ok]: Test HSCAN with mostly expired fields return empty result (hashtable) (425 ms) [ok]: Intset: SORT BY key (1 ms) [ok]: Intset: SORT BY key with limit (0 ms) [ok]: Intset: SORT BY hash field (2 ms) [ok]: Lazy Expire - verify various HASH commands handling expired fields (hashtable) (18 ms) [ok]: A field with TTL overridden with another value (TTL discarded) (hashtable) (7 ms) [ok]: Modify TTL of a field (hashtable) (20 ms) [ok]: Test return value of set operation (hashtable) (1 ms) [ok]: Test HGETALL not return expired fields (hashtable) (244 ms) [ok]: Test RENAME hash with fields to be expired (hashtable) (48 ms) [ok]: Redis can trigger resizing (1838 ms) [ok]: Test RENAME hash that had HFEs but not during the rename (hashtable) (104 ms) [ok]: MOVE to another DB hash with fields to be expired (hashtable) (106 ms) [ok]: Hash table: SORT BY key (20 ms) [ok]: Hash table: SORT BY key with limit (2 ms) [ok]: Hash table: SORT BY hash field (20 ms) [ok]: maxmemory - policy volatile-ttl should only remove volatile keys. (1338 ms) [ok]: Test COPY hash with fields to be expired (hashtable) (196 ms) [ok]: WAITAOF replica copy everysec (1646 ms) [ok]: Test COPY hash that had HFEs but not during the copy (hashtable) (94 ms) [ok]: Test SWAPDB hash-fields to be expired (hashtable) (98 ms) [ok]: Redis can rewind and trigger smaller slot resizing (666 ms) [ok]: Test SWAPDB hash that had HFEs but not during the swap (hashtable) (100 ms) [ok]: HMGET - returns empty entries if fields or hash expired (hashtable) (10 ms) [ok]: HPERSIST - Returns array if the key does not exist (hashtable) (1 ms) [ok]: HPERSIST - input validation (hashtable) (2 ms) [ok]: HPERSIST - verify fields with TTL are persisted (hashtable) (26 ms) [ok]: HTTL/HPERSIST - Test expiry commands with non-volatile hash (hashtable) (1 ms) [ok]: DUMP / RESTORE are able to serialize / unserialize a hash (10 ms) [ok]: Hash fuzzing #2 - 512 fields (1786 ms) [ok]: RESTORE hash that had in the past HFEs but not during the dump (53 ms) [ok]: DUMP / RESTORE are able to serialize / unserialize a hash with TTL 0 for all fields (1 ms) [ok]: HINCRBY - discards pending expired field and reset its value (16 ms) [ok]: Unblocks client blocked on lazyfree via REPLICAOF command (7018 ms) [ok]: HINCRBY - preserve expiration time of the field (0 ms) [ok]: HINCRBYFLOAT - discards pending expired field and reset its value (17 ms) [ok]: HINCRBYFLOAT - preserve expiration time of the field (1 ms) [ok]: HGETDEL - delete field with ttl (hashtable) (35 ms) [ok]: HGETEX - input validation (hashtable) (3 ms) [ok]: HGETEX - input validation (expire time) (hashtable) (8 ms) [ok]: HGETEX - get without setting ttl (hashtable) (1 ms) [ok]: HGETEX - get and set the ttl (hashtable) (1 ms) [ok]: HGETEX - Test 'EX' flag (hashtable) (0 ms) [ok]: HGETEX - Test 'EXAT' flag (hashtable) (1 ms) [ok]: HGETEX - Test 'PX' flag (hashtable) (1 ms) [ok]: HGETEX - Test 'PXAT' flag (hashtable) (1 ms) [ok]: HGETEX - Test 'PERSIST' flag (hashtable) (2 ms) [32/96 done]: unit/lazyfree (22 seconds) Testing unit/type/incr [ok]: HGETEX - Test setting ttl in the past will delete the key (hashtable) (2 ms) [ok]: HGETEX - Test active expiry (hashtable) (0 ms) [ok]: HGETEX - A field with TTL overridden with another value (TTL discarded) (hashtable) (2 ms) [ok]: HGETEX - Test with lazy expiry (hashtable) (6 ms) [ok]: HSETEX - input validation (hashtable) (12 ms) [ok]: HSETEX - Basic test (hashtable) (1 ms) [ok]: HSETEX - Test FXX flag (hashtable) (3 ms) [ok]: HSETEX - Test FXX flag with lazy expire (hashtable) (21 ms) [ok]: HSETEX - Test FNX flag (hashtable) (3 ms) [ok]: HSETEX - Test 'EX' flag (hashtable) (1 ms) [ok]: HSETEX - Test 'EXAT' flag (hashtable) (1 ms) [ok]: HSETEX - Test 'PX' flag (hashtable) (1 ms) [ok]: HSETEX - Test 'PXAT' flag (hashtable) (1 ms) [ok]: HSETEX - Test 'KEEPTTL' flag (hashtable) (2 ms) [ok]: HSETEX - Test no expiry flag discards TTL (hashtable) (5 ms) [ok]: Redis can resize empty dict (163 ms) [ok]: HSETEX - Test with active expiry (42 ms) [ok]: HSETEX - Set time in the past (hashtable) (1 ms) [ok]: INCR against non existing key (1 ms) [ok]: INCR against key created by incr itself (0 ms) [ok]: DECR against key created by incr (0 ms) [ok]: DECR against key is not exist and incr (0 ms) [ok]: INCR against key originally set with SET (1 ms) [ok]: INCR over 32bit value (0 ms) [ok]: INCRBY over 32bit value with over 32bit increment (0 ms) [ok]: INCR fails against key with spaces (left) (0 ms) [ok]: INCR fails against key with spaces (right) (1 ms) [ok]: INCR fails against key with spaces (both) (0 ms) [ok]: DECRBY negation overflow (1 ms) [ok]: INCR fails against a key holding a list (5 ms) [ok]: DECRBY over 32bit value with over 32bit increment, negative res (0 ms) [ok]: DECRBY against key is not exist (0 ms) [ok]: INCR uses shared objects in the 0-9999 range (1 ms) [ok]: INCR can modify objects in-place (1 ms) [ok]: INCRBYFLOAT against non existing key (1 ms) [ok]: INCRBYFLOAT against key originally set with SET (1 ms) [ok]: INCRBYFLOAT over 32bit value (0 ms) [ok]: INCRBYFLOAT over 32bit value with over 32bit increment (1 ms) [ok]: INCRBYFLOAT fails against key with spaces (left) (0 ms) [ok]: INCRBYFLOAT fails against key with spaces (right) (0 ms) [ok]: INCRBYFLOAT fails against key with spaces (both) (0 ms) [ok]: INCRBYFLOAT fails against a key holding a list (0 ms) [ok]: INCRBYFLOAT does not allow NaN or Infinity (0 ms) [ok]: INCRBYFLOAT decrement (1 ms) [ok]: string to double with null terminator (1 ms) [ok]: No negative zero (1 ms) [ok]: INCRBY INCRBYFLOAT DECRBY against unhappy path (1 ms) [ok]: incr operation should update encoding from raw to int (1 ms) [ok]: decr operation should update encoding from raw to int (2 ms) [ok]: incrby operation should update encoding from raw to int (1 ms) [ok]: decrby operation should update encoding from raw to int (2 ms) [33/96 done]: unit/type/incr (1 seconds) Testing unit/type/list-2 [ok]: Cross DB command is incompatible with cluster mode (11 ms) [ok]: Function no-cluster flag is incompatible with cluster mode (5 ms) [ok]: Script no-cluster flag is incompatible with cluster mode (3 ms) [ok]: SORT command incompatible operations with cluster mode (13 ms) [ok]: Normal cross slot commands are incompatible with cluster mode (1 ms) [ok]: Transaction is incompatible with cluster mode (6 ms) [ok]: Lua scripts are incompatible with cluster mode (10 ms) [ok]: Statistics - Hashes with HFEs (hashtable) (213 ms) [ok]: HFE commands against wrong type (3 ms) [ok]: Shard subscribe commands are incompatible with cluster mode (6 ms) [ok]: cluster-compatibility-sample-ratio configuration can work (210 ms) [ok]: Test listpack memory usage (0 ms) [ok]: Test listpack object encoding (0 ms) [ok]: Test listpack debug listpack (0 ms) [ok]: KEYSIZES - Test hyperloglog (24602 ms) [34/96 done]: unit/other (19 seconds) Testing unit/type/list-3 [ok]: Test listpack converts to ht and passive expiry works (53 ms) [ok]: Explicit regression for a list bug (5 ms) [ok]: KEYSIZES - Test List (294 ms) [ok]: Regression for quicklist #3343 bug (137 ms) [ok]: Check compression with recompress (93 ms) [ok]: KEYSIZES - Test SET (127 ms) [ok]: Crash due to wrongly recompress after lrem (219 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element before it (43 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element after it (43 ms) [ok]: KEYSIZES - Test ZSET (288 ms) [ok]: Test listpack converts to ht and active expiry works (772 ms) [ok]: KEYSIZES - Test STRING (120 ms) [ok]: WAITAOF replica copy everysec with AOFRW (2011 ms) [ok]: Test listpack converts to ht and active expiry works (497 ms) [ok]: HPERSIST/HEXPIRE - Test listpack with large values (67 ms) [ok]: KEYSIZES - Test HASH (listpackex) (689 ms) [ok]: KEYSIZES - Test Hash field lazy expiration (listpackex) (113 ms) [ok]: Stress test the hash ziplist -> hashtable encoding conversion (2382 ms) [ok]: Hash ziplist of various encodings (93 ms) [ok]: Hash ziplist of various encodings - sanitize dump (9 ms) [ok]: HINCRBYFLOAT does not allow NaN or Infinity (0 ms) [35/96 done]: unit/type/hash (9 seconds) Testing unit/type/list [ok]: Test Command propagated to replica as expected (listpack) (345 ms) [ok]: packed node check compression with insert and pop (4 ms) [ok]: packed node check compression combined with trim (1 ms) [ok]: packed node check compression with lset (1 ms) [ok]: Lazy Expire - fields are lazy deleted and propagated to replicas (listpack) (245 ms) [ok]: KEYSIZES - Test HASH (hashtable) (686 ms) [ok]: plain node check compression with insert and pop (366 ms) [ok]: KEYSIZES - Test Hash field lazy expiration (hashtable) (109 ms) [ok]: KEYSIZES - Test STRING BITS (5 ms) [ok]: KEYSIZES - Test RESTORE (1 ms) [ok]: KEYSIZES - Test RENAME (1 ms) [ok]: KEYSIZES - Test MOVE (2 ms) [ok]: KEYSIZES - Test SWAPDB (2 ms) [ok]: KEYSIZES - DEBUG RELOAD reset keysizes (5 ms) [ok]: All TTLs in commands are propagated as absolute timestamp in milliseconds in AOF (233 ms) [ok]: plain node check compression combined with trim (140 ms) [ok]: KEYSIZES - Test RDB (167 ms) [ok]: All TTL in commands are propagated as absolute timestamp in replication stream (60 ms) [ok]: plain node check compression with lset (192 ms) [ok]: HRANDFIELD delete expired fields and propagate DELs to replica (117 ms) [ok]: {standalone} SCAN regression test for issue #4906 (13415 ms) [ok]: {standalone} SCAN MATCH pattern implies cluster slot (60 ms) [ok]: KEYSIZES - Test i'th bin counts keysizes between (2^i) and (2^(i+1)-1) as expected (replica) (112 ms) [ok]: For all replicated TTL-related commands, absolute expire times are identical on primary and replica (21 ms) [ok]: Test LPUSH and LPOP on plain nodes (13 ms) [ok]: Test LINDEX and LINSERT on plain nodes (3 ms) [ok]: Test LTRIM on plain nodes (2 ms) [ok]: Test LREM on plain nodes (5 ms) [ok]: Test LPOS on plain nodes (1 ms) [ok]: Test LMOVE on plain nodes (8 ms) [ok]: Test HSETEX command replication (49 ms) [ok]: client evicted due to client tracking prefixes (21696 ms) [ok]: client evicted due to output buf (22 ms) [ok]: WAITAOF replica copy everysec with slow AOFRW (2112 ms) [ok]: Test LSET with packed / plain combinations (200 ms) [ok]: Test LSET with packed is split in the middle (9 ms) [ok]: Test HGETEX command replication (137 ms) [ok]: client no-evict on (90 ms) [ok]: WAITAOF replica copy everysec->always with AOFRW (112 ms) [ok]: WAITAOF replica copy appendfsync always (7 ms) [ok]: KEYSIZES - Histogram of values of Bytes, Kilo and Mega (replica) (459 ms) [ok]: client no-evict off (108 ms) [ok]: Test LSET with packed consist only one item (196 ms) [ok]: Crash due to delete entry from a compress quicklist node (4 ms) [ok]: Crash due to split quicklist node wrongly (2 ms) [ok]: Test LPUSH and LPOP on plain nodes (5 ms) [ok]: Test LINDEX and LINSERT on plain nodes (2 ms) [ok]: Test LTRIM on plain nodes (5 ms) [ok]: Test LREM on plain nodes (2 ms) [ok]: Test LPOS on plain nodes (2 ms) [ok]: Test LMOVE on plain nodes (3 ms) [ok]: Client output buffer soft limit is not enforced too early and is enforced when no traffic (6045 ms) [ok]: Test Command propagated to replica as expected (ht) (353 ms) [ok]: Test LSET with packed / plain combinations (186 ms) [ok]: Test LSET with packed is split in the middle (4 ms) [ok]: No response for single command if client output buffer hard limit is enforced (151 ms) [ok]: Test LSET with packed consist only one item (200 ms) [ok]: Lazy Expire - fields are lazy deleted and propagated to replicas (ht) (248 ms) [ok]: Crash due to delete entry from a compress quicklist node (2 ms) [ok]: Crash due to split quicklist node wrongly (1 ms) [ok]: avoid client eviction when client is freed by output buffer limit (334 ms) [ok]: LPOS basic usage - quicklist (48 ms) [ok]: LPOS RANK (positive, negative and zero rank) option (1 ms) [ok]: LPOS COUNT option (1 ms) [ok]: LPOS COUNT + RANK option (1 ms) [ok]: LPOS non existing key (0 ms) [ok]: LPOS no match (1 ms) [ok]: LPOS MAXLEN (1 ms) [ok]: LPOS when RANK is greater than matches (0 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - quicklist (94 ms) [ok]: LPOP/RPOP with wrong number of arguments (0 ms) [ok]: All TTLs in commands are propagated as absolute timestamp in milliseconds in AOF (228 ms) [ok]: RPOP/LPOP with the optional count argument - quicklist (46 ms) [ok]: LPOS basic usage - listpack (1 ms) [ok]: LPOS RANK (positive, negative and zero rank) option (2 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 (2 ms) [ok]: LPOS when RANK is greater than matches (1 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - listpack (9 ms) [ok]: LPOP/RPOP with wrong number of arguments (1 ms) [ok]: RPOP/LPOP with the optional count argument - listpack (1 ms) [ok]: LPOP/RPOP with the count 0 returns an empty array in RESP3 (1 ms) [ok]: LPOP/RPOP against non existing key in RESP3 (0 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 (1 ms) [ok]: LPOP/RPOP against non existing key in RESP2 (0 ms) [ok]: LPOP/RPOP with against non existing key in RESP2 (0 ms) [ok]: Variadic RPUSH/LPUSH (1 ms) [ok]: DEL a list (1 ms) [ok]: BLPOP: single existing list - quicklist (46 ms) [ok]: All TTL in commands are propagated as absolute timestamp in replication stream (29 ms) [ok]: BLPOP: multiple existing lists - quicklist (96 ms) [ok]: HRANDFIELD delete expired fields and propagate DELs to replica (118 ms) [ok]: BLPOP: second list has an entry - quicklist (48 ms) [ok]: BLMPOP_LEFT: single existing list - quicklist (47 ms) [ok]: For all replicated TTL-related commands, absolute expire times are identical on primary and replica (23 ms) [ok]: BLMPOP_LEFT: multiple existing lists - quicklist (94 ms) [ok]: decrease maxmemory-clients causes client eviction (463 ms) [ok]: BLMPOP_LEFT: second list has an entry - quicklist (52 ms) [ok]: BRPOPLPUSH - quicklist (47 ms) [ok]: Test HSETEX command replication (47 ms) [ok]: BLMOVE left left - quicklist (50 ms) [ok]: No response for multi commands in pipeline if client output buffer limit is enforced (1048 ms) [ok]: BLMOVE left right - quicklist (50 ms) [ok]: Execute transactions completely even if client output buffer limit is enforced (42 ms) [ok]: BLMOVE right left - quicklist (52 ms) [ok]: Test HGETEX command replication (133 ms) [ok]: Obuf limit, HRANDFIELD with huge count stopped mid-run (45 ms) [ok]: BLMOVE right right - quicklist (49 ms) [ok]: BLPOP: single existing list - listpack (5 ms) [ok]: BLPOP: multiple existing lists - listpack (8 ms) [ok]: BLPOP: second list has an entry - listpack (4 ms) [ok]: BLMPOP_LEFT: single existing list - listpack (9 ms) [36/96 done]: unit/type/hash-field-expire (12 seconds) Testing unit/type/set [ok]: BLMPOP_LEFT: multiple existing lists - listpack (7 ms) [ok]: BLMPOP_LEFT: second list has an entry - listpack (2 ms) [ok]: BRPOPLPUSH - listpack (4 ms) [ok]: BLMOVE left left - listpack (7 ms) [ok]: BLMOVE left right - listpack (4 ms) [ok]: BLMOVE right left - listpack (3 ms) [ok]: BLMOVE right right - listpack (2 ms) [ok]: BLPOP, LPUSH + DEL should not awake blocked client (6 ms) [ok]: BLPOP, LPUSH + DEL + SET should not awake blocked client (5 ms) [ok]: BLMPOP_LEFT, LPUSH + DEL should not awake blocked client (4 ms) [ok]: BLMPOP_LEFT, LPUSH + DEL + SET should not awake blocked client (5 ms) [ok]: BLPOP with same key multiple times should work (issue #801) (3 ms) [ok]: MULTI/EXEC is isolated from the point of view of BLPOP (4 ms) [ok]: BLPOP with variadic LPUSH (3 ms) [ok]: MULTI/EXEC is isolated from the point of view of BLMPOP_LEFT (3 ms) [ok]: BLMPOP_LEFT with variadic LPUSH (4 ms) [ok]: BRPOPLPUSH with zero timeout should block indefinitely (3 ms) [ok]: BLMOVE left left with zero timeout should block indefinitely (3 ms) [ok]: BLMOVE left right with zero timeout should block indefinitely (2 ms) [ok]: BLMOVE right left with zero timeout should block indefinitely (4 ms) [ok]: BLMOVE right right with zero timeout should block indefinitely (3 ms) [ok]: BLMOVE (left, left) with a client BLPOPing the target list (6 ms) [ok]: BLMOVE (left, right) with a client BLPOPing the target list (4 ms) [ok]: Obuf limit, KEYS stopped mid-run (152 ms) [ok]: BLMOVE (right, left) with a client BLPOPing the target list (17 ms) [ok]: Big Hash table: SORT BY key (975 ms) [ok]: BLMOVE (right, right) with a client BLPOPing the target list (14 ms) [ok]: BRPOPLPUSH with wrong source type (3 ms) [ok]: Big Hash table: SORT BY key with limit (17 ms) [ok]: BRPOPLPUSH with wrong destination type (9 ms) [ok]: BRPOPLPUSH maintains order of elements after failure (2 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - listpack (6 ms) [ok]: BRPOPLPUSH with multiple blocked clients (14 ms) [ok]: BLMPOP with multiple blocked clients (14 ms) [37/96 done]: unit/obuf-limits (24 seconds) Testing unit/type/stream-cgroups [ok]: Linked LMOVEs (7 ms) [ok]: Circular BRPOPLPUSH (3 ms) [ok]: Self-referential BRPOPLPUSH (2 ms) [ok]: BRPOPLPUSH inside a transaction (2 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - hashtable (32 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - intset (7 ms) [ok]: PUSH resulting from BRPOPLPUSH affect WATCH (7 ms) [ok]: SMISMEMBER SMEMBERS SCARD against non set (1 ms) [ok]: SMISMEMBER SMEMBERS SCARD against non existing key (0 ms) [ok]: SMISMEMBER requires one or more members (1 ms) [ok]: SADD against non set (1 ms) [ok]: BRPOPLPUSH does not affect WATCH while still blocked (3 ms) [ok]: SADD a non-integer against a small intset (1 ms) [ok]: SADD a non-integer against a large intset (29 ms) [ok]: evict clients only until below limit (364 ms) [ok]: SADD an integer larger than 64 bits (0 ms) [ok]: SADD an integer larger than 64 bits to a large intset (29 ms) [ok]: WAITAOF replica copy if replica is blocked (1882 ms) [ok]: {cluster} SCAN basic (214 ms) [ok]: XGROUP CREATE: creation and duplicate group name detection (1 ms) [ok]: XGROUP CREATE: with ENTRIESREAD parameter (3 ms) [ok]: XGROUP CREATE: automatic stream creation fails without MKSTREAM (0 ms) [ok]: XGROUP CREATE: automatic stream creation works with MKSTREAM (0 ms) [ok]: SADD overflows the maximum allowed integers in an intset - single (86 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 (0 ms) [ok]: XPENDING can return single consumer items (0 ms) [ok]: XPENDING only group (1 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single (25 ms) [ok]: XPENDING with IDLE (26 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 (1 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 (3 ms) [ok]: XREADGROUP will not report data on empty history. Bug #5577 (2 ms) [ok]: XREADGROUP history reporting of deleted entries. Bug #5570 (3 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]: Blocking XREADGROUP will not reply with an empty array (26 ms) [ok]: Blocking XREADGROUP: key deleted (4 ms) [ok]: Blocking XREADGROUP: key type changed with SET (5 ms) [ok]: Blocking XREADGROUP: key type changed with transaction (10 ms) [ok]: Blocking XREADGROUP: flushed DB (6 ms) [ok]: Blocking XREADGROUP: swapped DB, key doesn't exist (4 ms) [ok]: Blocking XREADGROUP: swapped DB, key is not a stream (3 ms) [ok]: XREAD and XREADGROUP against wrong parameter (1 ms) [ok]: Blocking XREAD: key deleted (2 ms) [ok]: Blocking XREAD: key type changed with SET (3 ms) [ok]: SADD overflows the maximum allowed integers in an intset - single_multiple (44 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single_multiple (1 ms) [ok]: Variadic SADD (0 ms) [ok]: {cluster} SCAN COUNT (207 ms) [ok]: Blocking XREADGROUP for stream that ran dry (issue #5299) (80 ms) [ok]: Blocking XREADGROUP will ignore BLOCK if ID is not > (11 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on list (9 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - avoid endless loop (4 ms) [ok]: {cluster} SCAN MATCH (164 ms) [ok]: MIGRATE can correctly transfer large values (14411 ms) [ok]: Set encoding after DEBUG RELOAD (291 ms) [ok]: SREM basics - $type (1 ms) [ok]: SREM basics - $type (23 ms) [ok]: SREM basics - intset (1 ms) [ok]: SREM with multiple arguments (1 ms) [ok]: SREM variadic version with more args needed to destroy the key (1 ms) [ok]: SINTERCARD with illegal arguments (2 ms) [ok]: SINTERCARD against non-set should throw error (1 ms) [ok]: SINTERCARD against non-existing key (5 ms) [ok]: evict clients in right order (large to small) (421 ms) [ok]: Generated sets must be encoded correctly - regular (1 ms) [ok]: SINTER with two sets - regular (1 ms) [ok]: SINTERCARD with two sets - regular (0 ms) [ok]: SINTERSTORE with two sets - regular (0 ms) [ok]: SINTERSTORE with two sets, after a DEBUG RELOAD - regular (16 ms) [ok]: SUNION with two sets - regular (13 ms) [ok]: SUNIONSTORE with two sets - regular (13 ms) [ok]: SINTER against three sets - regular (0 ms) [ok]: SINTERCARD against three sets - regular (1 ms) [ok]: SINTERSTORE with three sets - regular (0 ms) [ok]: {cluster} SCAN TYPE (252 ms) [ok]: SUNION with non existing keys - regular (14 ms) [ok]: SDIFF with two sets - regular (1 ms) [ok]: SDIFF with three sets - regular (0 ms) [ok]: MIGRATE can correctly transfer hashes (241 ms) [ok]: SDIFFSTORE with three sets - regular (1 ms) [ok]: SINTER/SUNION/SDIFF with three same sets - regular (10 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 (1 ms) [ok]: SINTERSTORE with two sets - intset (0 ms) [ok]: SINTERSTORE with two sets, after a DEBUG RELOAD - intset (7 ms) [ok]: SUNION with two sets - intset (13 ms) [ok]: SUNIONSTORE with two sets - intset (13 ms) [ok]: SINTER against three sets - intset (0 ms) [ok]: SINTERCARD against three sets - intset (0 ms) [ok]: SINTERSTORE with three sets - intset (1 ms) [ok]: SUNION with non existing keys - intset (12 ms) [ok]: SDIFF with two sets - intset (0 ms) [ok]: SDIFF with three sets - intset (0 ms) [ok]: SDIFFSTORE with three sets - intset (0 ms) [ok]: {cluster} SCAN unknown type (170 ms) [ok]: SINTER/SUNION/SDIFF with three same sets - intset (10 ms) [ok]: SINTERSTORE with two listpack sets where result is intset (2 ms) [ok]: Big Hash table: SORT BY hash field (980 ms) [ok]: SORT GET # (1 ms) [ok]: SORT GET (0 ms) [ok]: SORT_RO GET (0 ms) [ok]: SORT GET (key and hash) with sanity check (7 ms) [ok]: SORT BY key STORE (1 ms) [ok]: SORT BY hash field STORE (2 ms) [ok]: SORT extracts STORE correctly (0 ms) [ok]: SORT_RO get keys (0 ms) [ok]: SORT extracts multiple STORE correctly (1 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 (2 ms) [ok]: SORT sorted set BY nosort + LIMIT (2 ms) [ok]: SORT sorted set BY nosort works as expected from scripts (2 ms) [ok]: SINTERSTORE with two hashtable sets where result is intset (49 ms) [ok]: SORT sorted set: +inf and -inf handling (1 ms) [ok]: SUNION hashtable and listpack (3 ms) [ok]: SDIFF with first set empty (1 ms) [ok]: SDIFF with same set two times (1 ms) [ok]: SORT regression for issue #19, sorting floats (23 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) (0 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 (1 ms) [ok]: SORT by nosort with limit returns based on original list order (0 ms) [ok]: SORT_RO - Successful case (1 ms) [ok]: SORT_RO - Cannot run with STORE arg (0 ms) [ok]: BRPOPLPUSH timeout (1018 ms) [ok]: SWAPDB awakes blocked client (10 ms) [ok]: {cluster} SCAN with expired keys (159 ms) [ok]: client total memory grows during client no-evict (186 ms) [ok]: SORT speed, 100 element list BY key, 100 times (46 ms) [ok]: WAITAOF replica multiple clients unblock - reuse last result (1031 ms) [ok]: SORT speed, 100 element list BY hash field, 100 times (49 ms) [ok]: SWAPDB wants to wake blocked client, but the key already expired (125 ms) [ok]: SORT speed, 100 element list directly, 100 times (35 ms) [ok]: SORT speed, 100 element list BY , 100 times (30 ms) [ok]: client total memory grows during maxmemory-clients disabled (142 ms) [ok]: SETRANGE with huge offset (4 ms) [ok]: {cluster} SCAN with expired keys with TYPE filter (159 ms) [ok]: {cluster} SSCAN with encoding intset (3 ms) [ok]: {cluster} SSCAN with encoding listpack (2 ms) [ok]: {cluster} SSCAN with encoding hashtable (7 ms) [ok]: {cluster} HSCAN with encoding listpack (3 ms) [ok]: {cluster} HSCAN with large value listpack (1 ms) [ok]: SORT STORE quicklist with the right options (68 ms) [38/96 done]: unit/client-eviction (31 seconds) Testing unit/type/stream [ok]: {cluster} HSCAN with encoding hashtable (139 ms) [ok]: {cluster} HSCAN with large value hashtable (3 ms) [ok]: {cluster} ZSCAN with encoding listpack (6 ms) [ok]: MIGRATE timeout actually works (647 ms) [ok]: XADD wrong number of args (1 ms) [ok]: XADD can add entries into a stream that XRANGE can fetch (3 ms) [ok]: XADD IDs are incremental (1 ms) [ok]: XADD IDs are incremental when ms is the same as well (1 ms) [ok]: XADD IDs correctly report an error when overflowing (1 ms) [ok]: XADD auto-generated sequence is incremented for last ID (1 ms) [ok]: XADD auto-generated sequence is zero for future timestamp ID (1 ms) [ok]: XADD auto-generated sequence can't be smaller than last ID (0 ms) [ok]: XADD auto-generated sequence can't overflow (2 ms) [ok]: XADD 0-* should succeed (1 ms) [ok]: WAITAOF on promoted replica (300 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - reprocessing command (1080 ms) [ok]: XGROUP DESTROY should unblock XREADGROUP with -NOGROUP (10 ms) [ok]: RENAME can unblock XREADGROUP with data (3 ms) [ok]: RENAME can unblock XREADGROUP with -NOGROUP (4 ms) [ok]: MULTI + LPUSH + EXPIRE + DEBUG SLEEP on blocked client, key already expired (306 ms) [ok]: {cluster} ZSCAN with encoding skiplist (106 ms) [ok]: {cluster} SCAN guarantees check under write load (46 ms) [ok]: {cluster} SSCAN with integer encoded object (issue #1345) (1 ms) [ok]: {cluster} SSCAN with PATTERN (0 ms) [ok]: {cluster} HSCAN with PATTERN (1 ms) [ok]: {cluster} HSCAN with NOVALUES (1 ms) [ok]: {cluster} ZSCAN with PATTERN (1 ms) [ok]: {cluster} ZSCAN scores: regression test for issue #2175 (82 ms) [ok]: XADD with MAXLEN option (210 ms) [ok]: MIGRATE can migrate multiple keys at once (248 ms) [ok]: MIGRATE with multiple keys must have empty key arg (1 ms) [ok]: XADD with MAXLEN option and the '=' argument (197 ms) [ok]: MIGRATE with multiple keys migrate just existing ones (236 ms) [ok]: XADD with MAXLEN option and the '~' argument (207 ms) [ok]: XADD with NOMKSTREAM option (1 ms) [ok]: XCLAIM can claim PEL items from another consumer (610 ms) [ok]: MIGRATE with multiple keys: stress command rewriting (267 ms) [ok]: XADD with MINID option (234 ms) [ok]: XTRIM with MINID option (1 ms) [ok]: XTRIM with MINID option, big delta from master record (1 ms) [ok]: MIGRATE with multiple keys: delete just ack keys (256 ms) [ok]: BLPOP unblock but the key is expired and then block again - reprocessing command (1010 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]: XCLAIM without JUSTID increments delivery count (406 ms) [ok]: BLMPOP_LEFT when new key is moved into place (3 ms) [ok]: BLMPOP_LEFT when result key is created by SORT..STORE (9 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 (23 ms) [ok]: BLPOP: second argument is not a list (1 ms) [ok]: MIGRATE AUTH: correct and wrong password cases (252 ms) [ok]: XCLAIM same consumer (206 ms) [39/96 done]: unit/dump (33 seconds) Testing unit/type/string [ok]: SET and GET an item (1 ms) [ok]: SET and GET an empty item (1 ms) [ok]: Very big payload in GET/SET (94 ms) [ok]: Verify Lua performs GC correctly after script loading (10807 ms) [ok]: XAUTOCLAIM can claim PEL items from another consumer (610 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 redis (1 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (4 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua true boolean -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua false boolean -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua status code reply -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua error reply -> Redis protocol type conversion (1 ms) [ok]: EVAL - Lua table -> Redis protocol type conversion (0 ms) [ok]: EVAL - Are the KEYS and ARGV arrays populated correctly? (0 ms) [ok]: EVAL - is Lua able to call Redis 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? (1 ms) [ok]: EVALSHA - Can we call a SHA1 in uppercase? (0 ms) [ok]: EVALSHA - Do we get an error on invalid SHA1? (1 ms) [ok]: EVALSHA - Do we get an error on non defined SHA1? (0 ms) [ok]: EVAL - Redis integer -> Lua type conversion (0 ms) [ok]: EVAL - Lua number -> Redis integer conversion (1 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (1 ms) [ok]: EVAL - Redis multi bulk -> Lua type conversion (1 ms) [ok]: EVAL - Redis status reply -> Lua type conversion (1 ms) [ok]: EVAL - Redis error reply -> Lua type conversion (1 ms) [ok]: EVAL - Redis nil bulk reply -> Lua type conversion (0 ms) [ok]: EVAL - Is the Lua client using the currently selected DB? (0 ms) [ok]: EVAL - SELECT inside Lua should not affect the caller (0 ms) [ok]: WAITAOF master that loses a replica and backlog is dropped (2003 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 (1 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 (7 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (2 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 redis.call/pcall is considered an error (1 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis 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 (1 ms) [ok]: EVAL - JSON string decoding (0 ms) [ok]: EVAL - JSON smoke test (1 ms) [ok]: EVAL - cmsgpack can pack double? (1 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [ok]: sort by in cluster mode (1 ms) [ok]: sort get in cluster mode (0 ms) [ok]: sort get # in cluster mode (0 ms) [ok]: sort_ro by in cluster mode (0 ms) [ok]: sort_ro get in cluster mode (1 ms) [ok]: sort_ro get # in cluster mode (1 ms) [ok]: XAUTOCLAIM as an iterator (208 ms) [ok]: XAUTOCLAIM COUNT must be > 0 (1 ms) [ok]: XCLAIM with XDEL (4 ms) [ok]: XCLAIM with trimming (5 ms) [ok]: XAUTOCLAIM with XDEL (4 ms) [ok]: XAUTOCLAIM with XDEL and count (5 ms) [ok]: XAUTOCLAIM with out of range count (0 ms) [ok]: XCLAIM with trimming (5 ms) [ok]: XINFO FULL output (12 ms) [40/96 done]: unit/sort (20 seconds) Testing unit/type/zset [ok]: BLPOP: timeout (1057 ms) [ok]: BLPOP: arguments are empty (7 ms) [ok]: BRPOP: with single empty list argument (4 ms) [ok]: BRPOP: with negative timeout (2 ms) [ok]: BRPOP: with non-integer timeout (1 ms) [ok]: BRPOP: with zero timeout should block indefinitely (2 ms) [ok]: BRPOP: with 0.001 timeout should not block indefinitely (23 ms) [ok]: BRPOP: second argument is not a list (1 ms) [ok]: Check encoding - listpack (0 ms) [ok]: ZSET basic ZADD and score update - listpack (2 ms) [ok]: ZSET element can't be set to NaN with ZADD - listpack (0 ms) [ok]: ZSET element can't be set to NaN with ZINCRBY - listpack (1 ms) [ok]: ZADD with options syntax error with incomplete pair - listpack (0 ms) [ok]: ZADD XX option without key - listpack (1 ms) [ok]: ZADD XX existing key - listpack (1 ms) [ok]: ZADD XX returns the number of elements actually added - listpack (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]: ZADD LT updates existing elements when new scores are lower - listpack (1 ms) [ok]: ZADD GT XX updates existing elements when new scores are greater and skips new elements - listpack (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 (1 ms) [ok]: ZADD NX with non existing key - listpack (0 ms) [ok]: ZADD NX only add new elements without updating old ones - listpack (1 ms) [ok]: ZADD GT and NX are not compatible - listpack (0 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 (1 ms) [ok]: ZADD INCR LT/GT with inf - listpack (2 ms) [ok]: ZADD INCR works like ZINCRBY - listpack (0 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 (1 ms) [ok]: ZINCRBY calls leading to NaN result in error - listpack (1 ms) [ok]: ZINCRBY accepts hexadecimal inputs - listpack (1 ms) [ok]: ZINCRBY against invalid incr value - listpack (1 ms) [ok]: ZADD - Variadic version base case - listpack (1 ms) [ok]: ZADD - Return value is the number of actually added items - listpack (1 ms) [ok]: ZADD - Variadic version does not add nothing on single parsing err - listpack (1 ms) [ok]: ZADD - Variadic version will raise error on missing arg - listpack (0 ms) [ok]: ZINCRBY does not work variadic even if shares ZADD implementation - listpack (0 ms) [ok]: ZCARD basics - listpack (1 ms) [ok]: ZREM removes key after last element is removed - listpack (1 ms) [ok]: ZREM variadic version - listpack (5 ms) [ok]: ZREM variadic version -- remove elements after key deletion - listpack (0 ms) [ok]: ZRANGE basics - listpack (3 ms) [ok]: ZREVRANGE basics - listpack (3 ms) [ok]: ZRANK/ZREVRANK basics - listpack (3 ms) [ok]: ZRANK - after deletion - listpack (4 ms) [ok]: ZINCRBY - can create a new sorted set - listpack (0 ms) [ok]: ZINCRBY - increment and decrement - listpack (1 ms) [ok]: ZINCRBY return value - listpack (1 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - listpack (7 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - listpack (2 ms) [ok]: Consumer seen-time and active-time (213 ms) [ok]: ZRANGEBYSCORE with LIMIT - listpack (8 ms) [ok]: XGROUP CREATECONSUMER: create consumer if does not exist (7 ms) [ok]: ZRANGEBYSCORE with LIMIT and WITHSCORES - listpack (2 ms) [ok]: ZRANGEBYSCORE with non-value min or max - listpack (0 ms) [ok]: XGROUP CREATECONSUMER: group must exist (1 ms) [ok]: ZRANGEBYLEX/ZREVRANGEBYLEX/ZLEXCOUNT basics - listpack (5 ms) [ok]: XREADGROUP of multiple entries changes dirty by one (4 ms) [ok]: ZLEXCOUNT advanced - listpack (3 ms) [ok]: XREADGROUP from PEL does not change dirty (5 ms) [ok]: ZRANGEBYLEX with LIMIT - listpack (9 ms) [ok]: ZRANGEBYLEX with invalid lex range specifiers - listpack (7 ms) [ok]: ZREMRANGEBYSCORE basics - listpack (24 ms) [ok]: ZREMRANGEBYSCORE with non-value min or max - listpack (1 ms) [ok]: ZREMRANGEBYRANK basics - listpack (7 ms) [ok]: ZREMRANGEBYLEX basics - listpack (18 ms) [ok]: ZUNIONSTORE against non-existing key doesn't set destination - listpack (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF against non-existing key - listpack (1 ms) [ok]: ZUNIONSTORE with empty set - listpack (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with empty set - listpack (1 ms) [ok]: ZUNIONSTORE basics - listpack (1 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 (1 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 (1 ms) [ok]: ZINTERCARD basics - listpack (0 ms) [ok]: ZINTER RESP3 - listpack (2 ms) [ok]: ZINTERSTORE with weights - listpack (0 ms) [ok]: ZINTER with weights - listpack (0 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 (3 ms) [ok]: ZUNIONSTORE with NaN weights - listpack (0 ms) [ok]: ZINTERSTORE with +inf/-inf scores - listpack (3 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (408 ms) [ok]: ZINTERSTORE with NaN weights - listpack (0 ms) [ok]: ZDIFFSTORE basics - listpack (1 ms) [ok]: ZDIFF basics - listpack (0 ms) [ok]: ZDIFFSTORE with a regular set - listpack (1 ms) [ok]: ZDIFF subtracting set from itself - listpack (0 ms) [ok]: ZDIFF algorithm 1 - listpack (2 ms) [ok]: ZDIFF algorithm 2 - listpack (2 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (6 ms) [ok]: EVAL - Numerical sanity check from bitop (1 ms) [ok]: EVAL - Verify minimal bitop functionality (0 ms) [ok]: EVAL - Able to parse trailing comments (0 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? (35 ms) [ok]: XREADGROUP with NOACK creates consumer (6 ms) [ok]: SCRIPTING FLUSH ASYNC (17 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 (1 ms) [ok]: SORT BY output gets ordered for scripting (1 ms) [ok]: SORT BY with GET gets ordered for scripting (1 ms) [ok]: redis.sha1hex() implementation (1 ms) [ok]: Consumer without PEL is present in AOF after AOFRW (119 ms) [ok]: Stress tester for #3343-alike bugs comp: 2 (8414 ms) [ok]: WAITAOF master without backlog, wait is released when the replica finishes full-sync (711 ms) [ok]: Consumer group read counter and lag in empty streams (2 ms) [ok]: Consumer group read counter and lag sanity (12 ms) [ok]: Consumer group lag with XDELs (21 ms) [ok]: Consumer Group Lag with XDELs and tombstone after the last_id of consume group (5 ms) [ok]: Consumer group lag with XTRIM (7 ms) [ok]: Loading from legacy (Redis <= v6.2.x, rdb_ver < 10) persistence (2 ms) [ok]: Loading from legacy (Redis <= v7.0.x, rdb_ver < 11) persistence (1 ms) [ok]: Consumer group last ID propagation to slave (NOACK=0) (109 ms) [ok]: Consumer group last ID propagation to slave (NOACK=1) (107 ms) [ok]: BRPOP: timeout (1064 ms) [ok]: BRPOP: arguments are empty (5 ms) [ok]: BLMPOP_LEFT: with single empty list argument (6 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]: BLMPOP_LEFT: with 0.001 timeout should not block indefinitely (26 ms) [ok]: BLMPOP_LEFT: second argument is not a list (1 ms) [ok]: Replication tests of XCLAIM with deleted entries (autoclaim=0) (113 ms) [ok]: Replication tests of XCLAIM with deleted entries (autoclaim=1) (13 ms) [ok]: XREADGROUP ACK would propagate entries-read (11 ms) [ok]: XREADGROUP from PEL inside MULTI (1 ms) [ok]: Measures elapsed time os.clock() (1080 ms) [ok]: Prohibit dangerous lua methods in sandbox (0 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (1 ms) [ok]: Globals protection reading an undeclared global variable (1 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 (1 ms) [ok]: random numbers are random now (0 ms) [ok]: Scripting engine PRNG can be seeded correctly (1 ms) [ok]: WAITAOF master isn't configured to do AOF (1002 ms) [ok]: Empty stream with no lastid can be rewrite into AOF correctly (60 ms) [ok]: WAITAOF replica isn't configured to do AOF (56 ms) [41/96 done]: unit/type/stream-cgroups (5 seconds) Testing unit/cluster/announced-endpoints [ok]: BLMPOP_LEFT: timeout (1059 ms) [ok]: BLMPOP_LEFT: arguments are empty (3 ms) [ok]: BLMPOP_RIGHT: with single empty list argument (2 ms) [ok]: BLMPOP_RIGHT: with negative timeout (1 ms) [ok]: BLMPOP_RIGHT: with non-integer timeout (5 ms) [ok]: BLMPOP_RIGHT: with zero timeout should block indefinitely (1 ms) [ok]: EVAL does not leak in the Lua stack (798 ms) [ok]: BLMPOP_RIGHT: with 0.001 timeout should not block indefinitely (23 ms) [ok]: BLMPOP_RIGHT: second argument is not a list (2 ms) [ok]: XADD mass insertion and XLEN (3561 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]: SPOP: We can call scripts rewriting client->argv from Lua (102 ms) [ok]: MGET: mget shouldn't be propagated in Lua (99 ms) [ok]: EXPIRE: We can call scripts rewriting client->argv from Lua (100 ms) [ok]: INCRBYFLOAT: We can call scripts expanding client->argv from Lua (339 ms) [ok]: Call Redis 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) (5 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 Redis namespace are able to report errors (0 ms) [ok]: CLUSTER RESET can not be invoke from within a script (1 ms) [ok]: Script with RESP3 map (3 ms) [ok]: XRANGE can be used to iterate the whole stream (722 ms) [ok]: Script return recursive object (256 ms) [ok]: Script check unpack with massive arguments (48 ms) [ok]: Script read key with expiration set (1 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 (1 ms) [ok]: Try trick global protection 2 (0 ms) [ok]: Try trick global protection 3 (0 ms) [ok]: Try trick global protection 4 (1 ms) [ok]: Try trick readonly table on redis table (0 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 (0 ms) [ok]: Test print are not available (0 ms) [ok]: BLMPOP_RIGHT: timeout (1067 ms) [ok]: BLMPOP_RIGHT: arguments are empty (6 ms) [ok]: BLPOP inside a transaction (3 ms) [ok]: BLMPOP_LEFT inside a transaction (3 ms) [ok]: GEOSEARCH fuzzy test - byradius (36889 ms) [ok]: BLMPOP propagate as pop with count command to replica (193 ms) [ok]: LPUSHX, RPUSHX - generic (2 ms) [ok]: LPUSHX, RPUSHX - quicklist (48 ms) [ok]: WAITAOF both local and replica got AOF enabled at runtime (1951 ms) [ok]: LINSERT - quicklist (47 ms) [ok]: LPUSHX, RPUSHX - listpack (1 ms) [ok]: LINSERT - listpack (3 ms) [ok]: LINSERT raise error on bad syntax (1 ms) [ok]: LINSERT against non-list value error (0 ms) [ok]: LINSERT against non existing key (0 ms) [ok]: LINDEX consistency test - listpack (123 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (405 ms) [ok]: LINDEX random access - listpack (92 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (245 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (204 ms) [ok]: Timedout script does not cause a false dead client (184 ms) [ok]: LINDEX consistency test - listpack (249 ms) [ok]: Test change cluster-announce-port and cluster-announce-tls-port at runtime (205 ms) [ok]: Timedout script link is still usable after Lua returns (230 ms) [ok]: SDIFF fuzzing (7048 ms) [ok]: SDIFF against non-set should throw error (1 ms) [ok]: SDIFF should handle non existing key as empty (1 ms) [ok]: LINDEX random access - listpack (148 ms) [ok]: SDIFFSTORE against non-set should throw error (3 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 (3 ms) [ok]: SINTERSTORE against non existing keys should delete dstkey (2 ms) [ok]: SUNION against non-set should throw error (1 ms) [ok]: SUNION should handle non existing key as empty (1 ms) [ok]: SUNIONSTORE against non-set should throw error (3 ms) [ok]: SUNIONSTORE should handle non existing key as empty (2 ms) [ok]: SUNIONSTORE against non existing keys should delete dstkey (1 ms) [ok]: SPOP basics - listpack (1 ms) [ok]: SPOP with =1 - listpack (1 ms) [ok]: SRANDMEMBER - listpack (14 ms) [ok]: SPOP basics - intset (2 ms) [ok]: SPOP with =1 - intset (1 ms) [ok]: SRANDMEMBER - intset (14 ms) [ok]: SPOP integer from listpack set (2 ms) [ok]: SPOP with - listpack (6 ms) [ok]: SPOP with - intset (6 ms) [ok]: SPOP with - hashtable (5 ms) [ok]: SPOP using integers, testing Knuth's and Floyd's algorithm (5 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 (4 ms) [ok]: SPOP new implementation: code path #3 intset (4 ms) [ok]: SPOP new implementation: code path #1 listpack (4 ms) [ok]: SPOP new implementation: code path #2 listpack (4 ms) [ok]: SPOP new implementation: code path #3 listpack (4 ms) [ok]: Test change cluster-announce-bus-port at runtime (206 ms) [ok]: CONFIG SET port updates cluster-announced port (1 ms) [ok]: SPOP new implementation: code path #1 propagate as DEL or UNLINK (75 ms) [ok]: SRANDMEMBER count of 0 is handled correctly (0 ms) [ok]: SRANDMEMBER with against non existing key (1 ms) [ok]: SRANDMEMBER count overflow (0 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 (44 ms) [ok]: SRANDMEMBER with - intset (33 ms) [ok]: SRANDMEMBER with - hashtable (36 ms) [ok]: WAITAOF master sends PING after last write (1202 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (338 ms) [ok]: SRANDMEMBER histogram distribution - listpack (135 ms) [42/96 done]: unit/cluster/announced-endpoints (4 seconds) Testing unit/cluster/cli [ok]: LINDEX consistency test - quicklist (118 ms) [ok]: Timedout scripts and unblocked command (526 ms) [ok]: Very big payload random access (5573 ms) [ok]: LINDEX random access - quicklist (82 ms) [ok]: SRANDMEMBER histogram distribution - intset (148 ms) [ok]: SRANDMEMBER histogram distribution - hashtable (140 ms) [ok]: Timedout scripts that modified data can't be killed by SCRIPT KILL (206 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (184 ms) [ok]: SHUTDOWN NOSAVE can kill a timedout script anyway (10 ms) [ok]: LTRIM stress testing - quicklist (14075 ms) [ok]: LINDEX consistency test - quicklist (236 ms) [ok]: Before the replica connects we issue two EVAL commands (1 ms) [ok]: LINDEX random access - quicklist (162 ms) [ok]: Connect a replica to the master instance (104 ms) [ok]: Now use EVALSHA against the master, with both SHAs (2 ms) [ok]: 'x' should be '4' for EVALSHA being replicated by effects (1 ms) [ok]: Replication of script multiple pushes to list with BLPOP (4 ms) [ok]: EVALSHA replication when first call is readonly (2 ms) [ok]: Lua scripts using SELECT are replicated correctly (2 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (335 ms) [ok]: LLEN against non-list value error (0 ms) [ok]: LLEN against non existing key (1 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 (1 ms) [ok]: RPUSH against non-list value error (0 ms) [ok]: RPOPLPUSH base case - quicklist (49 ms) [ok]: WAITAOF master client didn't send any write command (1205 ms) [ok]: LMOVE left left base case - quicklist (44 ms) [ok]: LMOVE left right base case - quicklist (46 ms) [ok]: LMOVE right left base case - quicklist (44 ms) [ok]: LMOVE right right base case - quicklist (50 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 (43 ms) [ok]: XREVRANGE returns the reverse of XRANGE (3247 ms) [ok]: XRANGE exclusive ranges (8 ms) [ok]: XREAD with non empty stream (1 ms) [ok]: Non blocking XREAD with empty streams (0 ms) [ok]: LMOVE left right with the same list as src and dst - quicklist (42 ms) [ok]: LMOVE right left with the same list as src and dst - quicklist (43 ms) [ok]: LMOVE right right with the same list as src and dst - quicklist (50 ms) [ok]: RPOPLPUSH with quicklist source and existing target quicklist (87 ms) [ok]: LMOVE left left with quicklist source and existing target quicklist (87 ms) [ok]: ZDIFF fuzzing - listpack (6258 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 (1 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 (2 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - listpack (2 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - listpack (1 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - listpack (3 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - listpack (3 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 (3 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX second sorted set has members - listpack (2 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 (2 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - listpack RESP3 (2 ms) [ok]: BZPOPMIN/BZPOPMAX - listpack RESP3 (9 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX - listpack RESP3 (2 ms) [ok]: Check encoding - skiplist (0 ms) [ok]: ZSET basic ZADD and score update - skiplist (1 ms) [ok]: ZSET element can't be set to NaN with ZADD - skiplist (1 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 (1 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 (1 ms) [ok]: ZADD LT updates existing elements when new scores are lower - skiplist (4 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 (1 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 (1 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 (5 ms) [ok]: ZADD INCR works like ZINCRBY - skiplist (1 ms) [ok]: ZADD INCR works with a single score-elemenet pair - skiplist (0 ms) [ok]: ZADD CH option changes return value to all changed elements - skiplist (1 ms) [ok]: ZINCRBY calls leading to NaN result in error - skiplist (0 ms) [ok]: ZINCRBY accepts hexadecimal inputs - skiplist (0 ms) [ok]: LMOVE left right with quicklist source and existing target quicklist (86 ms) [ok]: ZINCRBY against invalid incr value - skiplist (1 ms) [ok]: ZADD - Variadic version base case - skiplist (1 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 (1 ms) [ok]: ZADD - Variadic version will raise error on missing arg - skiplist (0 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 (1 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 (3 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 (2 ms) [ok]: ZINCRBY return value - skiplist (4 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - skiplist (13 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - skiplist (1 ms) [ok]: ZRANGEBYSCORE with LIMIT - skiplist (8 ms) [ok]: ZRANGEBYSCORE with LIMIT and WITHSCORES - skiplist (4 ms) [ok]: ZRANGEBYSCORE with non-value min or max - skiplist (0 ms) [ok]: ZRANGEBYLEX/ZREVRANGEBYLEX/ZLEXCOUNT basics - skiplist (11 ms) [ok]: ZLEXCOUNT advanced - skiplist (3 ms) [ok]: ZRANGEBYLEX with LIMIT - skiplist (7 ms) [ok]: ZRANGEBYLEX with invalid lex range specifiers - skiplist (0 ms) [ok]: Connect a replica to the master instance (103 ms) [ok]: Redis.replicate_commands() can be issued anywhere now (0 ms) [ok]: Redis.set_repl() can be issued before replicate_commands() now (1 ms) [ok]: Redis.set_repl() don't accept invalid values (0 ms) [ok]: Test selective replication of certain Redis commands from Lua (3 ms) [ok]: PRNG is seeded randomly for command replication (1 ms) [ok]: Using side effects is not a problem with command replication (1 ms) [ok]: ZREMRANGEBYSCORE basics - skiplist (14 ms) [ok]: ZREMRANGEBYSCORE with non-value min or max - skiplist (0 ms) [ok]: LMOVE right left with quicklist source and existing target quicklist (89 ms) [ok]: ZREMRANGEBYRANK basics - skiplist (8 ms) [ok]: ZREMRANGEBYLEX basics - skiplist (18 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 (1 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 (2 ms) [ok]: ZUNIONSTORE with weights - skiplist (0 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 (1 ms) [ok]: ZUNION/ZINTER with AGGREGATE MIN - skiplist (0 ms) [ok]: ZUNIONSTORE with AGGREGATE MAX - skiplist (1 ms) [ok]: ZUNION/ZINTER with AGGREGATE MAX - skiplist (0 ms) [ok]: ZINTERSTORE basics - skiplist (0 ms) [ok]: ZINTER basics - skiplist (0 ms) [ok]: ZINTERCARD with illegal arguments (1 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 (1 ms) [ok]: ZUNIONSTORE with +inf/-inf scores - skiplist (2 ms) [ok]: ZUNIONSTORE with NaN weights - skiplist (1 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]: LMOVE right right with quicklist source and existing target quicklist (88 ms) [ok]: RPOPLPUSH with quicklist source and existing target listpack (49 ms) [ok]: LMOVE left left with quicklist source and existing target listpack (43 ms) [ok]: LMOVE left right with quicklist source and existing target listpack (48 ms) [ok]: LMOVE right left with quicklist source and existing target listpack (48 ms) [ok]: LMOVE right right with quicklist source and existing target listpack (49 ms) [ok]: RPOPLPUSH base case - listpack (5 ms) [ok]: LMOVE left left base case - listpack (2 ms) [ok]: LMOVE left right base case - listpack (5 ms) [ok]: LMOVE right left base case - listpack (2 ms) [ok]: LMOVE right right base case - listpack (8 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 (2 ms) [ok]: LMOVE left right with the same list as src and dst - listpack (1 ms) [ok]: LMOVE right left with the same list as src and dst - listpack (2 ms) [ok]: LMOVE right right with the same list as src and dst - listpack (1 ms) [ok]: RPOPLPUSH with listpack source and existing target quicklist (43 ms) [ok]: LMOVE left left with listpack source and existing target quicklist (44 ms) [ok]: WAITAOF master client didn't send any command (1202 ms) [ok]: LMOVE left right with listpack source and existing target quicklist (46 ms) [ok]: Create 3 node cluster (1960 ms) [ok]: Run blocking command on cluster node3 (1 ms) [ok]: Perform a Resharding (16 ms) [ok]: LMOVE right left with listpack source and existing target quicklist (44 ms) [ok]: LMOVE right right with listpack source and existing target quicklist (49 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 (8 ms) [ok]: LMOVE right left with listpack source and existing target listpack (2 ms) [ok]: LMOVE right right with listpack source and existing target listpack (2 ms) [ok]: RPOPLPUSH against non existing key (1 ms) [ok]: Verify command got unblocked after resharding (82 ms) [ok]: RPOPLPUSH against non list src key (1 ms) [ok]: Wait for cluster to be stable (28 ms) [ok]: RPOPLPUSH against non list dst key - quicklist (45 ms) [ok]: RPOPLPUSH against non list dst key - listpack (1 ms) [ok]: use previous hostip in "cluster-preferred-endpoint-type unknown-endpoint" mode (16 ms) [ok]: Sanity test push cmd after resharding (1 ms) [ok]: RPOPLPUSH against non existing src key (4 ms) [ok]: Run blocking command again on cluster node1 (1 ms) [ok]: Basic LPOP/RPOP/LMPOP - quicklist (94 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 (2 ms) [ok]: Mass RPOP/LPOP - listpack (106 ms) [ok]: Mass RPOP/LPOP - listpack (155 ms) [ok]: LMPOP with illegal argument (3 ms) [ok]: LMPOP single existing list - quicklist (137 ms) [ok]: Test scripting debug protocol parsing (1 ms) [ok]: Test scripting debug lua stack overflow (4 ms) [ok]: LMPOP multiple existing lists - quicklist (179 ms) [ok]: LMPOP single existing list - listpack (5 ms) [ok]: LMPOP multiple existing lists - listpack (8 ms) [ok]: LMPOP propagate as pop with count command to replica (88 ms) [ok]: SET 10000 numeric keys and access all them in reverse order (3215 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]: LRANGE basics - quicklist (49 ms) [ok]: LRANGE inverted indexes - quicklist (49 ms) [ok]: Lua scripts eviction does not generate many scripts (208 ms) [ok]: LRANGE out of range indexes including the full list - quicklist (47 ms) [ok]: LRANGE out of range negative end index - quicklist (43 ms) [ok]: LRANGE basics - listpack (6 ms) [ok]: LRANGE inverted indexes - listpack (2 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]: Lua scripts eviction is plain LRU (96 ms) [ok]: XREAD with non empty second stream (2155 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 (89 ms) [ok]: Blocking XREAD for stream that ran dry (issue #5299) (112 ms) [ok]: Kill a cluster node and wait for fail state (1240 ms) [ok]: XREAD last element from non-empty stream (2 ms) [ok]: XREAD last element from empty stream (2 ms) [ok]: XREAD last element blocking from empty stream (2 ms) [ok]: Lua scripts eviction does not affect script load (258 ms) [ok]: XREAD last element blocking from non-empty stream (2 ms) [ok]: XREAD last element from multiple streams (6 ms) [ok]: XREAD last element with count > 1 (1 ms) [ok]: XREAD: read last element after XDEL (issue #13628) (1 ms) [ok]: XREAD: XADD + DEL should not awake client (3 ms) [ok]: XREAD: XADD + DEL + LPUSH should not awake client (3 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 (2 ms) [ok]: XDEL multiply id test (2 ms) [ok]: Verify command got unblocked after cluster failure (76 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 (1 ms) [ok]: test RESP2/2 verbatim protocol parsing (0 ms) [ok]: test RESP2/2 true protocol parsing (1 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 (1 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]: test RESP2/3 true protocol parsing (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 (1 ms) [ok]: test RESP3/2 set protocol parsing (0 ms) [ok]: test RESP3/2 double protocol parsing (0 ms) [ok]: test RESP3/2 null protocol parsing (1 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 (1 ms) [ok]: test RESP3/3 big number protocol parsing (0 ms) [ok]: test RESP3/3 malformed big number protocol parsing (1 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 (11 ms) [ok]: Script delete the expired key (4 ms) [ok]: TIME command using cached time (11 ms) [ok]: LTRIM basics - quicklist (548 ms) [ok]: Script block the time in some expiration related commands (83 ms) [ok]: RESTORE expired keys with expiration time (11 ms) [ok]: LTRIM out of range negative end index - quicklist (93 ms) [ok]: LSET - quicklist (43 ms) [ok]: LSET out of range index - quicklist (0 ms) [ok]: LTRIM basics - listpack (22 ms) [ok]: LTRIM out of range negative end index - listpack (3 ms) [ok]: LSET - listpack (2 ms) [ok]: LSET out of range index - listpack (0 ms) [ok]: LSET against non existing key (0 ms) [ok]: LSET against non list value (5 ms) [ok]: LREM remove all the occurrences - quicklist (45 ms) [ok]: LREM remove the first occurrence - quicklist (1 ms) [ok]: LREM remove non existing element - quicklist (0 ms) [ok]: LREM starting from tail with negative count - quicklist (44 ms) [ok]: LREM starting from tail with negative count (2) - quicklist (0 ms) [ok]: LREM deleting objects that may be int encoded - quicklist (45 ms) [ok]: LREM remove all the occurrences - listpack (2 ms) [ok]: LREM remove the first occurrence - listpack (1 ms) [ok]: LREM remove non existing element - listpack (0 ms) [ok]: LREM starting from tail with negative count - listpack (8 ms) [ok]: LREM starting from tail with negative count (2) - listpack (0 ms) [ok]: LREM deleting objects that may be int encoded - listpack (1 ms) [ok]: Regression for bug 593 - chaining BRPOPLPUSH with other blocking cmds (3 ms) [ok]: BLPOP/BLMOVE should increase dirty (4 ms) [ok]: client unblock tests (8 ms) [ok]: Stress tester for #3343-alike bugs comp: 1 (8767 ms) [ok]: client unblock tests (112 ms) [ok]: List listpack -> quicklist encoding conversion (6 ms) [ok]: Test script flush will not leak memory - script:1 (217 ms) [ok]: List listpack -> quicklist encoding conversion (187 ms) [ok]: List quicklist -> listpack encoding conversion (230 ms) [ok]: List encoding conversion when RDB loading (12 ms) [ok]: List invalid list-max-listpack-size config (90 ms) [ok]: List of various encodings (98 ms) [ok]: List of various encodings - sanitize dump (5 ms) [ok]: Unblock fairness is kept while pipelining (4 ms) [ok]: Unblock fairness is kept during nested unblock (5 ms) [ok]: Blocking command accounted only once in commandstats (5 ms) [ok]: Blocking command accounted only once in commandstats after timeout (6 ms) [ok]: Command being unblocked cause another command to get unblocked execution order test (68 ms) [43/96 done]: unit/type/list (17 seconds) Testing unit/cluster/cluster-response-tls [44/96 done]: unit/cluster/cluster-response-tls (0 seconds) Testing unit/cluster/failure-marking [ok]: WAITAOF when replica switches between masters, fsync: no (3362 ms) [ok]: {cluster} SCAN regression test for issue #4906 (13203 ms) [ok]: {cluster} SCAN MATCH pattern implies cluster slot (49 ms) [45/96 done]: unit/scan (33 seconds) Testing unit/cluster/hostnames [ok]: SETNX against expired volatile key (3814 ms) [ok]: GETEX EX option (0 ms) [ok]: GETEX PX option (1 ms) [ok]: GETEX EXAT option (1 ms) [ok]: GETEX PXAT option (1 ms) [ok]: GETEX PERSIST option (1 ms) [ok]: GETEX no option (2 ms) [ok]: GETEX syntax errors (0 ms) [ok]: GETEX and GET expired key or not exist (3 ms) [ok]: GETEX no arguments (0 ms) [ok]: GETDEL command (1 ms) [ok]: GETDEL propagate as DEL command to replica (51 ms) [ok]: XDEL fuzz test (3450 ms) [ok]: GETEX without argument does not propagate to replica (104 ms) [ok]: MGET (23 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 (1 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 (6 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 (1 ms) [ok]: SETBIT against integer-encoded key (5 ms) [ok]: SETBIT against key with wrong type (0 ms) [ok]: SETBIT with out of range bit offset (1 ms) [ok]: SETBIT with non-bit argument (1 ms) [ok]: Functions are added to new node on redis-cli cluster add-node (3071 ms) [ok]: WAITAOF when replica switches between masters, fsync: everysec (2357 ms) [ok]: SETBIT fuzzing (731 ms) [ok]: GETBIT against non-existing key (1 ms) [ok]: GETBIT against string-encoded key (1 ms) [ok]: GETBIT against integer-encoded key (1 ms) [ok]: SETRANGE against non-existing key (2 ms) [ok]: SETRANGE against string-encoded key (2 ms) [ok]: SETRANGE against integer-encoded key (3 ms) [ok]: SETRANGE against key with wrong type (1 ms) [ok]: SETRANGE with out of range offset (1 ms) [ok]: GETRANGE against non-existing key (1 ms) [ok]: GETRANGE against wrong key type (1 ms) [ok]: GETRANGE against string value (1 ms) [ok]: GETRANGE against integer-encoded value (1 ms) [ok]: ZDIFF fuzzing - skiplist (7171 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 (1 ms) [ok]: ZPOPMAX with negative count (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX with a single key - skiplist (2 ms) [ok]: ZPOPMIN/ZPOPMAX with count - skiplist (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - skiplist (2 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist (2 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - skiplist (2 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - skiplist (3 ms) [ok]: BZPOPMIN/BZPOPMAX second sorted set has members - skiplist (2 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with a single existing sorted set - skiplist (2 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with multiple existing sorted sets - skiplist (3 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX second sorted set has members - skiplist (2 ms) [ok]: Basic ZPOPMIN/ZPOPMAX - skiplist RESP3 (2 ms) [ok]: ZPOPMIN/ZPOPMAX with count - skiplist RESP3 (2 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX - skiplist RESP3 (2 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist RESP3 (3 ms) [ok]: BZPOPMIN/BZPOPMAX - skiplist RESP3 (3 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX - skiplist RESP3 (4 ms) [ok]: ZPOP/ZMPOP against wrong type (2 ms) [ok]: ZMPOP with illegal argument (3 ms) [ok]: ZMPOP propagate as pop with count command to replica (71 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP3 (2 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP3 (200 ms) [ok]: ZMPOP readraw in RESP3 (3 ms) [ok]: WAITAOF when replica switches between masters, fsync: always (1369 ms) [ok]: Set cluster hostnames and verify they are propagated (222 ms) [ok]: BZMPOP readraw in RESP3 (194 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP2 (3 ms) [ok]: GETRANGE fuzzing (1671 ms) [ok]: Coverage: SUBSTR (1 ms) [ok]: Extended SET can detect syntax errors (0 ms) [ok]: Extended SET NX option (1 ms) [ok]: Extended SET XX option (1 ms) [ok]: Extended SET GET option (1 ms) [ok]: Extended SET GET option with no previous value (0 ms) [ok]: Extended SET GET option with XX (1 ms) [ok]: Extended SET GET option with XX and no previous value (1 ms) [ok]: Extended SET GET option with NX (0 ms) [ok]: Extended SET GET option with NX and previous value (1 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 (0 ms) [ok]: Extended SET EXAT option (1 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 (1 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 (2 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP2 (195 ms) [ok]: ZMPOP readraw in RESP2 (3 ms) [ok]: Update hostnames and make sure they are all eventually propagated (217 ms) [46/96 done]: unit/type/string (15 seconds) Testing unit/cluster/human-announced-nodename [ok]: BZMPOP readraw in RESP2 (199 ms) [ok]: ZINTERSTORE regression with two sets, intset+hashtable (1 ms) [ok]: ZUNIONSTORE regression, should not create NaN in scores (1 ms) [ok]: ZINTERSTORE #516 regression, mixed sets and ziplist zsets (1 ms) [ok]: Remove hostnames and make sure they are all eventually propagated (227 ms) [ok]: setup replication for following tests (103 ms) [ok]: Verify cluster-preferred-endpoint-type behavior for redirects and info (112 ms) [ok]: ZUNIONSTORE result is sorted (169 ms) [ok]: ZUNIONSTORE/ZINTERSTORE/ZDIFFSTORE error if using WITHSCORES (1 ms) [ok]: ZMSCORE retrieve (6 ms) [ok]: ZMSCORE retrieve from empty set (1 ms) [ok]: ZMSCORE retrieve with missing member (0 ms) [ok]: ZMSCORE retrieve single member (0 ms) [ok]: ZMSCORE retrieve requires one or more members (1 ms) [ok]: ZSET commands don't accept the empty strings as valid score (0 ms) [ok]: zunionInterDiffGenericCommand at least 1 input key (2 ms) [ok]: ZSCORE - listpack (44 ms) [ok]: ZMSCORE - listpack (43 ms) [ok]: ZSCORE after a DEBUG RELOAD - listpack (57 ms) [ok]: ZSET sorting stresser - listpack (67 ms) [ok]: Verify that single primary marks replica as failed (3133 ms) [ok]: WAIT and WAITAOF replica multiple clients unblock - reuse last result (721 ms) [47/96 done]: unit/wait (34 seconds) Testing unit/cluster/internal-secret [ok]: Migrate the last slot away from a node using redis-cli (3952 ms) [ok]: AOF rewrite during write load: RDB preamble=no (32572 ms) [ok]: Set cluster human announced nodename and let it propagate (110 ms) [ok]: Turning off AOF kills the background writing child if any (111 ms) [ok]: AOF rewrite of list with listpack encoding, string data (115 ms) [ok]: AOF rewrite of list with quicklist encoding, string data (316 ms) [ok]: AOF rewrite of list with listpack encoding, int data (106 ms) [ok]: AOF rewrite of list with quicklist encoding, int data (275 ms) [ok]: Stress tester for #3343-alike bugs comp: 0 (9010 ms) [ok]: AOF rewrite of set with intset encoding, string data (111 ms) [ok]: Verify Lua performs GC correctly after script loading (9178 ms) [ok]: AOF rewrite of set with hashtable encoding, string data (302 ms) [ok]: Shebang support for lua engine (0 ms) [ok]: Unknown shebang option (0 ms) [ok]: Unknown shebang flag (0 ms) [ok]: allow-oom shebang flag (3 ms) [ok]: no-writes shebang flag (0 ms) [ok]: AOF rewrite of set with intset encoding, int data (112 ms) [ok]: Verify the nodes configured with prefer hostname only show hostname for new nodes (3834 ms) [ok]: AOF rewrite of set with hashtable encoding, int data (303 ms) [ok]: Test restart will keep hostname information (269 ms) [ok]: Test hostname validation (3 ms) [ok]: no-writes shebang flag on replica (226 ms) [ok]: AOF rewrite of hash with listpack encoding, string data (123 ms) [ok]: not enough good replicas (2 ms) [ok]: redis-cli -4 --cluster create using 127.0.0.1 with cluster-port (1950 ms) [ok]: LTRIM stress testing - listpack (14282 ms) [ok]: AOF rewrite of hash with hashtable encoding, string data (339 ms) [48/96 done]: unit/cluster/hostnames (8 seconds) Testing unit/cluster/links [ok]: AOF rewrite of hash with listpack encoding, int data (60 ms) [49/96 done]: unit/type/list-2 (28 seconds) Testing unit/cluster/misc [ok]: AOF rewrite of hash with hashtable encoding, int data (327 ms) [ok]: AOF rewrite of zset with listpack encoding, string data (57 ms) [ok]: not enough good replicas state change during long script (846 ms) [ok]: allow-stale shebang flag (2 ms) [ok]: reject script do not cause a Lua stack leak (13 ms) [ok]: AOF rewrite of zset with skiplist encoding, string data (332 ms) [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 128 element sorted set - listpack (5078 ms) [ok]: Consistent eval error reporting (26 ms) [ok]: LUA redis.error_reply API (1 ms) [ok]: LUA redis.error_reply API with empty string (1 ms) [ok]: LUA redis.status_reply API (1 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) [50/96 done]: unit/scripting (41 seconds) Testing unit/cluster/multi-slot-operations [ok]: AOF rewrite of zset with listpack encoding, int data (113 ms) [ok]: Test internal secret sync (10 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (392 ms) [ok]: Human nodenames are visible in log messages (3643 ms) [ok]: AOF rewrite of zset with skiplist encoding, int data (321 ms) [ok]: AOF rewrite functions (64 ms) [ok]: redis-cli -4 --cluster add-node using 127.0.0.1 with cluster-port (1334 ms) [ok]: Join a node to the cluster and make sure it gets the same secret (467 ms) [51/96 done]: unit/cluster/human-announced-nodename (7 seconds) Testing unit/cluster/scripting [ok]: BGREWRITEAOF is delayed if BGSAVE is in progress (375 ms) [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (524 ms) [ok]: BGREWRITEAOF is refused if already in progress (91 ms) [ok]: ZSETs skiplist implementation backlink consistency test - listpack (50 ms) [52/96 done]: unit/aofrw (55 seconds) Testing unit/cluster/sharded-pubsub [ok]: Broadcast message across a cluster shard while a cluster link is down (110 ms) [ok]: Key lazy expires during key migration (18 ms) [ok]: Coverage: Basic cluster commands (3 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - listpack (1565 ms) [ok]: BZPOPMIN, ZADD + DEL should not awake blocked client (3 ms) [ok]: BZPOPMIN, ZADD + DEL + SET should not awake blocked client (3 ms) [ok]: BZMPOP_MIN, ZADD + DEL should not awake blocked client (2 ms) [ok]: BZMPOP_MIN, ZADD + DEL + SET should not awake blocked client (3 ms) [ok]: Eval scripts with shebangs and functions default to no cross slots (2 ms) [ok]: Cross slot commands are allowed by default for eval scripts and with allow-cross-slot-keys flag (2 ms) [ok]: Cross slot commands are also blocked if they disagree with pre-declared keys (0 ms) [ok]: Cross slot commands are allowed by default if they disagree with pre-declared keys (1 ms) [ok]: Function no-cluster flag (1 ms) [ok]: Script no-cluster flag (1 ms) [ok]: Continuous slots distribution (20 ms) [ok]: ADDSLOTS command with several boundary conditions test suite (2 ms) [ok]: ADDSLOTSRANGE command with several boundary conditions test suite (4 ms) [ok]: DELSLOTSRANGE command with several boundary conditions test suite (8 ms) [53/96 done]: unit/cluster/misc (4 seconds) Testing unit/cluster/slot-ownership [ok]: Join another cluster, make sure clusters sync on the internal secret (2163 ms) [54/96 done]: unit/cluster/scripting (2 seconds) Testing integration/aof-multi-part [ok]: Multi Part AOF can't load data when some file missing (123 ms) [ok]: Multi Part AOF can't load data when the sequence not increase monotonically (113 ms) [ignore]: experimental test not allowed [55/96 done]: unit/cluster/multi-slot-operations (3 seconds) Testing integration/aof-race [ok]: Multi Part AOF can't load data when there are blank lines in the manifest file (116 ms) [ok]: Sharded pubsub publish behavior within multi/exec (1 ms) [ok]: Sharded pubsub within multi/exec with cross slot operation (2 ms) [ok]: Sharded pubsub publish behavior within multi/exec with read operation on primary (1 ms) [ok]: Sharded pubsub publish behavior within multi/exec with read operation on replica (1 ms) [ok]: Sharded pubsub publish behavior within multi/exec with write operation on primary (1 ms) [ok]: Sharded pubsub publish behavior within multi/exec with write operation on replica (1 ms) [ok]: Multi Part AOF can't load data when there is a duplicate base file (119 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (type unknown) (124 ms) [ok]: redis-cli -4 --cluster create using localhost with cluster-port (1961 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (missing key) (117 ms) [ok]: BZPOPMIN unblock but the key is expired and then block again - reprocessing command (1010 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (line too short) (115 ms) [ok]: BZPOPMIN with same key multiple times should work (105 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZPOPMIN (4 ms) [ok]: BZPOPMIN with variadic ZADD (5 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (line too long) (133 ms) [ok]: Verify that multiple primaries mark replica as failed (6239 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (odd parameter) (131 ms) [ok]: Multi Part AOF can't load data when the manifest file is empty (127 ms) [56/96 done]: unit/cluster/failure-marking (14 seconds) Testing integration/aof [57/96 done]: unit/cluster/sharded-pubsub (3 seconds) Testing integration/block-repl [58/96 done]: integration/aof-race (1 seconds) Testing integration/convert-ziplist-hash-on-load [ok]: Each node has two links with each peer (7 ms) [ok]: Unfinished MULTI: Server should start if load-truncated is yes (1 ms) [ok]: Validate cluster links format (9 ms) [59/96 done]: unit/cluster/internal-secret (8 seconds) Testing integration/convert-ziplist-zset-on-load [ok]: Multi Part AOF can start when no aof and no manifest (244 ms) [ok]: RDB load ziplist hash: converts to listpack when RDB loading (1 ms) [ok]: RDB load ziplist zset: converts to listpack when RDB loading (1 ms) [ok]: Multi Part AOF can start when we have en empty AOF dir (158 ms) [ok]: Short read: Server should start if load-truncated is yes (1 ms) [ok]: Truncated AOF loaded: we expect foo to be equal to 5 (1 ms) [ok]: Append a new command after loading an incomplete AOF (0 ms) [ok]: RDB load ziplist zset: converts to skiplist when zset-max-ziplist-entries is exceeded (1 ms) [ok]: RDB load ziplist hash: converts to hash table when hash-max-ziplist-entries is exceeded (1 ms) [ok]: redis-cli -4 --cluster add-node using localhost with cluster-port (1192 ms) [ok]: Short read + command: Server should start (4 ms) [ok]: Truncated AOF loaded: we expect foo to be equal to 6 now (1 ms) [60/96 done]: integration/convert-ziplist-zset-on-load (1 seconds) Testing integration/convert-zipmap-hash-on-load [ok]: BZPOPMIN with zero timeout should block indefinitely (1003 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZMPOP_MIN (3 ms) [ok]: BZMPOP_MIN with variadic ZADD (2 ms) [ok]: Multi Part AOF can load data discontinuously increasing sequence (246 ms) [61/96 done]: integration/convert-ziplist-hash-on-load (1 seconds) Testing integration/corrupt-dump-fuzzer [ok]: RDB load zipmap hash: converts to listpack (1 ms) [ok]: Fuzzing dense/sparse encoding: Redis should always detect errors (54110 ms) [ok]: PFADD, PFCOUNT, PFMERGE type checking works (6 ms) [ok]: PFMERGE results on the cardinality of union of sets (1 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]: SRANDMEMBER with a dict containing long chain (20013 ms) [ok]: SMOVE basics - from regular set to intset (4 ms) [ok]: SMOVE basics - from intset to regular set (2 ms) [ok]: SMOVE non existing key (2 ms) [ok]: SMOVE non existing src set (2 ms) [ok]: SMOVE from regular set to non existing destination set (3 ms) [ok]: SMOVE from intset to non existing destination set (2 ms) [ok]: SMOVE wrong src key type (0 ms) [ok]: SMOVE wrong dst key type (0 ms) [ok]: SMOVE with identical source and destination (1 ms) [ok]: SMOVE only notify dstset when the addition is successful (2 ms) [ok]: Bad format: Server should have logged an error (6 ms) [ok]: Multi Part AOF can load data when manifest add new k-v (242 ms) [ok]: RDB load zipmap hash: converts to hash table when hash-max-ziplist-entries is exceeded (0 ms) [ok]: Unfinished MULTI: Server should have logged an error (3 ms) [62/96 done]: unit/cluster/cli (20 seconds) Testing integration/corrupt-dump [ok]: Short read: Server should have logged an error (3 ms) [ok]: RDB load zipmap hash: converts to hash table when hash-max-ziplist-value is exceeded (1 ms) [ok]: Short read: Utility should confirm the AOF is not valid (17 ms) [ok]: Multi Part AOF can load data when some AOFs are empty (237 ms) [ok]: Short read: Utility should show the abnormal line num in AOF (14 ms) [ok]: Short read: Utility should be able to fix the AOF (23 ms) [ok]: XRANGE fuzzing (13470 ms) [ok]: XREVRANGE regression test for issue #5006 (2 ms) [ok]: XREAD streamID edge (no-blocking) (1 ms) [ok]: XREAD streamID edge (blocking) (2 ms) [ok]: XADD streamID edge (1 ms) [63/96 done]: integration/convert-zipmap-hash-on-load (0 seconds) Testing integration/dismiss-mem [ok]: corrupt payload: #7445 - with sanitize (236 ms) [ok]: Fixed AOF: Server should have been started (4 ms) [ok]: Fixed AOF: Keyspace should contain values that were parseable (1 ms) [ok]: XTRIM with MAXLEN option basic test (158 ms) [ok]: XADD with LIMIT consecutive calls (15 ms) [ok]: XTRIM with ~ is limited (17 ms) [ok]: XTRIM without ~ is not limited (17 ms) [ok]: Verify that slot ownership transfer through gossip propagates deletes to replicas (231 ms) [ok]: XTRIM without ~ and with LIMIT (16 ms) [ok]: First server should have role slave after SLAVEOF (1002 ms) [ok]: XTRIM with LIMIT delete entries no more than limit (1 ms) [ok]: corrupt payload: hash with valid zip list header, invalid entry len (235 ms) [ok]: Multi Part AOF can load data from old version redis (rdb preamble no) (371 ms) [ok]: AOF+SPOP: Server should have been started (0 ms) [ok]: AOF+SPOP: Set should have 1 member (0 ms) [ok]: XADD with MAXLEN > xlen can propagate correctly (18 ms) [ok]: BZMPOP_MIN with zero timeout should block indefinitely (1002 ms) [ok]: ZSCORE - skiplist (45 ms) [ok]: ZMSCORE - skiplist (32 ms) [ok]: corrupt payload: invalid zlbytes header (241 ms) [ok]: ZSCORE after a DEBUG RELOAD - skiplist (41 ms) [ok]: Multi Part AOF can load data from old version redis (rdb preamble yes) (253 ms) [ok]: AOF+SPOP: Server should have been started (1 ms) [ok]: AOF+SPOP: Set should have 1 member (0 ms) [ok]: ZSET sorting stresser - skiplist (46 ms) [ok]: XADD with MINID > lastid can propagate correctly (30 ms) [ok]: corrupt payload: valid zipped hash header, dup records (153 ms) [ok]: AOF+EXPIRE: Server should have been started (1 ms) [ok]: AOF+EXPIRE: List should be empty (1 ms) [ok]: Multi Part AOF can continue the upgrade from the interrupted upgrade state (238 ms) [ok]: corrupt payload: hash listpackex with invalid string TTL (142 ms) [ok]: Redis should not try to convert DEL into EXPIREAT for EXPIRE -1 (0 ms) [ok]: XADD with ~ MAXLEN can propagate correctly (39 ms) [ok]: corrupt payload: hash listpackex with TTL large than EB_EXPIRE_TIME_MAX (141 ms) [64/96 done]: unit/cluster/slot-ownership (3 seconds) Testing integration/failover [ok]: Multi Part AOF can be loaded correctly when both server dir and aof dir contain old AOF (248 ms) [ok]: corrupt payload: hash listpackex with unordered TTL fields (147 ms) [ok]: XADD with ~ MAXLEN and LIMIT can propagate correctly (31 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 (143 ms) [ok]: KEYSIZES - Test hyperloglog (replica) (32171 ms) [ok]: corrupt payload: hash listpackex field without TTL should not be followed by field with TTL (233 ms) [ok]: failover command fails without connected replica (0 ms) [ok]: dismiss all data types memory (1251 ms) [ok]: XADD with ~ MINID can propagate correctly (27 ms) [ok]: setup replication for following tests (107 ms) [ok]: failover command fails with invalid host (1 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]: Multi Part AOF can upgrade when when two redis share the same server dir (redis1) (56 ms) [ok]: KEYSIZES - Test List (replica) (290 ms) [ok]: Multi Part AOF can upgrade when when two redis share the same server dir (redis2) (56 ms) [ok]: corrupt payload: hash hashtable with TTL large than EB_EXPIRE_TIME_MAX (242 ms) [ok]: XADD with ~ MINID and LIMIT can propagate correctly (27 ms) [ok]: corrupt payload: quicklist big ziplist prev len (148 ms) [ok]: Multi Part AOF can upgrade when when two redis share the same server dir (558 ms) [ok]: PFMERGE results with simd (2216 ms) [ok]: KEYSIZES - Test SET (replica) (282 ms) [ok]: corrupt payload: quicklist small ziplist prev len (142 ms) [ok]: XTRIM with ~ MAXLEN can propagate correctly (29 ms) [ok]: Multi Part AOF can handle appendfilename contains whitespaces (365 ms) [ok]: corrupt payload: quicklist ziplist wrong count (248 ms) [ok]: KEYSIZES - Test ZSET (replica) (292 ms) [ok]: XADD can CREATE an empty stream (3 ms) [ok]: XSETID can set a specific ID (0 ms) [ok]: XSETID cannot SETID with smaller ID (1 ms) [ok]: XSETID cannot SETID on non-existent key (0 ms) [ok]: XSETID cannot run with an offset but without a maximal tombstone (1 ms) [ok]: XSETID cannot run with a maximal tombstone but without an offset (0 ms) [ok]: XSETID errors on negstive offset (4 ms) [ok]: XSETID cannot set the maximal tombstone with larger ID (1 ms) [ok]: XSETID cannot set the offset to less than the length (1 ms) [ok]: XSETID cannot set smaller ID than current MAXDELETEDID (1 ms) [ok]: corrupt payload: #3080 - quicklist (147 ms) [ok]: KEYSIZES - Test STRING (replica) (133 ms) [ok]: Multi Part AOF can create BASE (RDB format) when redis starts from empty (253 ms) [ok]: XADD advances the entries-added counter and sets the recorded-first-entry-id (7 ms) [ok]: XDEL/TRIM are reflected by recorded first entry (4 ms) [ok]: Maximum XDEL ID behaves correctly (3 ms) [ok]: XADD with artial ID with maximal seq (1 ms) [ok]: corrupt payload: quicklist with empty ziplist (249 ms) [ok]: failover command to specific replica works (1110 ms) [ok]: Multi Part AOF can create BASE (AOF format) when redis starts from empty (264 ms) [ok]: intsets implementation stress testing (3025 ms) [ok]: corrupt payload: quicklist encoded_len is 0 (145 ms) [65/96 done]: unit/type/set (32 seconds) Testing integration/logging [ok]: Empty stream can be rewrite into AOF correctly (108 ms) [ok]: Make sure aof manifest appendonly.aof.manifest not in aof directory (0 ms) [ok]: corrupt payload: quicklist listpack entry start with EOF (148 ms) [ok]: Stream can be rewrite into AOF correctly after XDEL lastid (108 ms) [ok]: KEYSIZES - Test HASH (listpackex) (replica) (705 ms) [ok]: Crash report generated on SIGABRT (103 ms) [ok]: corrupt payload: #3080 - ziplist (232 ms) [ok]: XGROUP HELP should not have unexpected options (6 ms) [ok]: KEYSIZES - Test Hash field lazy expiration (listpackex) (replica) (134 ms) [ok]: XINFO HELP should not have unexpected options (0 ms) [ok]: Crash report generated on DEBUG SEGFAULT (5 ms) [ok]: corrupt payload: load corrupted rdb with no CRC - #3505 (130 ms) [66/96 done]: unit/type/stream (31 seconds) Testing integration/psync2-master-restart [ok]: AOF enable will create manifest file (572 ms) [ok]: failover command to any replica works (780 ms) [ok]: Stacktraces generated on SIGALRM (103 ms) [ok]: corrupt payload: load corrupted rdb with empty keys (232 ms) [67/96 done]: integration/logging (1 seconds) Testing integration/psync2-pingoff [ok]: corrupt payload: load corrupted rdb with empty keys (242 ms) [ok]: corrupt payload: listpack invalid size header (143 ms) [ok]: ziplist implementation: value encoding and backlink (11148 ms) [ok]: KEYSIZES - Test HASH (hashtable) (replica) (760 ms) [ok]: failover to a replica with force works (554 ms) [ok]: corrupt payload: listpack too long entry len (144 ms) [ok]: corrupt payload: listpack very long entry len (134 ms) [ok]: corrupt payload: listpack too long entry prev len (143 ms) [ok]: KEYSIZES - Test Hash field lazy expiration (hashtable) (replica) (353 ms) [ok]: KEYSIZES - Test STRING BITS (replica) (21 ms) [ok]: KEYSIZES - Test RESTORE (replica) (2 ms) [ok]: KEYSIZES - Test RENAME (replica) (2 ms) [ok]: KEYSIZES - Test MOVE (replica) (10 ms) [ok]: KEYSIZES - Test SWAPDB (replica) (2 ms) [ok]: KEYSIZES - DEBUG RELOAD reset keysizes (replica) (16 ms) [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 100 element sorted set - skiplist (3796 ms) [ok]: corrupt payload: stream with duplicate consumers (250 ms) [ok]: KEYSIZES - Test RDB (replica) (192 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields when offset is 0 (137 ms) [68/96 done]: unit/info-keysizes (64 seconds) Testing integration/psync2-reg [ok]: failover with timeout aborts if replica never catches up (775 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (319 ms) [ok]: corrupt payload: hash ziplist with duplicate records (247 ms) [ok]: PSYNC2 pingoff: setup (1011 ms) [ok]: PSYNC2 pingoff: write and wait replication (2 ms) [ok]: corrupt payload: hash listpack with duplicate records (244 ms) [ok]: failovers can be aborted (299 ms) [ok]: corrupt payload: hash listpack with duplicate records - convert (150 ms) [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (434 ms) [ok]: ZSETs skiplist implementation backlink consistency test - skiplist (37 ms) [ok]: GEOSEARCH fuzzy test - bybox (27481 ms) [ok]: AOF multiple rewrite failures will open multiple INCR AOFs (1993 ms) [ok]: GEOSEARCH box edges fuzzy test (86 ms) [ok]: corrupt payload: hash ziplist uneven record count (244 ms) [69/96 done]: unit/geo (65 seconds) Testing integration/psync2 [ok]: corrupt payload: hash duplicate records (141 ms) [ok]: corrupt payload: hash empty zipmap (237 ms) [ok]: corrupt payload: fuzzer findings - NPD in streamIteratorGetID (144 ms) [ok]: AOF rewrite doesn't open new aof when AOF turn off (602 ms) [ok]: PSYNC2 #3899 regression: setup (1012 ms) [ok]: corrupt payload: fuzzer findings - listpack NPD on invalid stream (134 ms) [ok]: PSYNC2: --- CYCLE 1 --- (1 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #3 as master (1 ms) [ok]: failover aborts if target rejects sync request (1132 ms) [ok]: PSYNC2: Set #4 to replicate from #1 (1 ms) [ok]: AOF enable/disable auto gc (209 ms) [ok]: corrupt payload: fuzzer findings - NPD in quicklistIndex (141 ms) [ok]: dismiss client output buffer (4772 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: AOF can produce consecutive sequence number after reload (144 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: dismiss client query buffer (209 ms) [ok]: corrupt payload: fuzzer findings - encoded entry header reach outside the allocation (240 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: corrupt payload: fuzzer findings - invalid ziplist encoding (241 ms) [ok]: AOF enable during BGSAVE will not write data util AOFRW finish (398 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - skiplist (1570 ms) [ok]: BZPOPMIN, ZADD + DEL should not awake blocked client (3 ms) [ok]: BZPOPMIN, ZADD + DEL + SET should not awake blocked client (2 ms) [ok]: BZMPOP_MIN, ZADD + DEL should not awake blocked client (3 ms) [ok]: BZMPOP_MIN, ZADD + DEL + SET should not awake blocked client (2 ms) [ok]: AOF fsync always barrier issue (5685 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields with data (1142 ms) [ok]: corrupt payload: fuzzer findings - hash crash (243 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: GETEX should not append to AOF (1 ms) [ok]: corrupt payload: fuzzer findings - uneven entry count in hash (255 ms) [ok]: PSYNC2: Set #0 to replicate from #3 (3 ms) [ok]: Unknown command: Server should have logged an error (2 ms) [70/96 done]: integration/failover (7 seconds) Testing integration/rdb [ok]: corrupt payload: fuzzer findings - invalid read in lzf_decompress (241 ms) [ok]: test old version rdb file (1 ms) [ok]: AOF+LMPOP/BLMPOP: pop elements from the list (103 ms) [ok]: corrupt payload: fuzzer findings - leak in rdbloading due to dup entry in set (150 ms) [ok]: AOF will trigger limit when AOFRW fails many times (899 ms) [ok]: dismiss replication backlog (1235 ms) [ok]: RDB encoding loading test (21 ms) [ok]: AOF+LMPOP/BLMPOP: after pop elements from the list (1 ms) [ok]: corrupt payload: fuzzer findings - empty intset (155 ms) [71/96 done]: integration/dismiss-mem (8 seconds) Testing integration/redis-benchmark [ok]: BZPOPMIN unblock but the key is expired and then block again - reprocessing command (1014 ms) [ok]: BZPOPMIN with same key multiple times should work (9 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZPOPMIN (2 ms) [ok]: BZPOPMIN with variadic ZADD (2 ms) [ok]: benchmark: set,get (18 ms) [ok]: corrupt payload: fuzzer findings - zset ziplist entry lensize is 0 (155 ms) [ok]: benchmark: connecting using URI set,get (16 ms) [ok]: benchmark: connecting using URI with authentication set,get (14 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: Server started empty with non-existing RDB file (0 ms) [ok]: AOF+ZMPOP/BZMPOP: pop elements from the zset (103 ms) [ok]: corrupt payload: fuzzer findings - valgrind ziplist prevlen reaches outside the ziplist (237 ms) [ok]: benchmark: full test suite (258 ms) [ok]: Server started empty with empty RDB file (0 ms) [ok]: PSYNC2: Set #1 to replicate from #0 (6 ms) [ok]: PSYNC2: Set #2 to replicate from #0 (0 ms) [ok]: AOF+ZMPOP/BZMPOP: after pop elements from the zset (1 ms) [ok]: corrupt payload: fuzzer findings - valgrind - bad rdbLoadDoubleValue (248 ms) [ok]: corrupt payload: fuzzer findings - valgrind ziplist prev too big (147 ms) [ok]: Test RDB stream encoding (234 ms) [ok]: Test RDB stream encoding - sanitize dump (18 ms) [ok]: benchmark: multi-thread set,get (527 ms) [ok]: Generate timestamp annotations in AOF (377 ms) [ok]: corrupt payload: fuzzer findings - lzf decompression fails, avoid valgrind invalid read (236 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields with expire (1915 ms) [ok]: Disconnect link when send buffer limit reached (9760 ms) [ok]: BZPOPMIN with zero timeout should block indefinitely (1003 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZMPOP_MIN (3 ms) [ok]: Server should not start if RDB file can't be open (1 ms) [ok]: BZMPOP_MIN with variadic ZADD (6 ms) [ok]: Successfully load AOF which has timestamp annotations inside (1 ms) [ok]: benchmark: pipelined full set,get (215 ms) [ok]: benchmark: arbitrary command (20 ms) [ok]: Server should not start if RDB is corrupted (1 ms) [ok]: corrupt payload: fuzzer findings - stream bad lp_count (242 ms) [ok]: benchmark: keyspace length (110 ms) [ok]: benchmark: clients idle mode should return error when reached maxclients limit (4 ms) [ok]: benchmark: read last argument from stdin (23 ms) [72/96 done]: integration/redis-benchmark (1 seconds) Testing integration/redis-cli [ok]: PSYNC2 #3899 regression: kill first replica (3 ms) [ok]: corrupt payload: fuzzer findings - stream bad lp_count - unsanitized (146 ms) [ok]: PSYNC2: cluster is consistent after failover (2 ms) [ok]: corrupt payload: fuzzer findings - stream integrity check issue (146 ms) [ok]: Fuzzer corrupt restore payloads - sanitize_dump: no (9890 ms) [ok]: corrupt payload: fuzzer findings - infinite loop (145 ms) [ok]: Interactive CLI: should find first search result (248 ms) [ok]: Link memory increases with publishes (695 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: corrupt payload: fuzzer findings - hash ziplist too long entry len (242 ms) [ok]: Interactive CLI: should find and use the first search result (310 ms) [ok]: PSYNC2 pingoff: pause replica and promote it (5001 ms) [ok]: corrupt payload: fuzzer findings - zset ziplist invalid tail offset (144 ms) [ok]: Truncate AOF to specific timestamp (852 ms) [ok]: BZMPOP_MIN with zero timeout should block indefinitely (1004 ms) [ok]: BZPOP/BZMPOP against wrong type (8 ms) [ok]: BZMPOP with illegal argument (12 ms) [ok]: Test FLUSHALL aborts bgsave (784 ms) [ok]: BZMPOP with multiple blocked clients (16 ms) [ok]: Interactive CLI: should be ok if there is no result (127 ms) [ok]: corrupt payload: fuzzer findings - negative reply length (136 ms) [ok]: bgsave resets the change counter (103 ms) [ok]: Link memory resets after publish messages flush (498 ms) [ok]: BZMPOP propagate as pop with count command to replica (149 ms) [ok]: BZMPOP should not blocks on non key arguments - #10762 (4 ms) [ok]: Interactive CLI: upon submitting search, (reverse-i-search) prompt should go away (122 ms) [ok]: corrupt payload: fuzzer findings - valgrind negative malloc (242 ms) [73/96 done]: unit/cluster/links (17 seconds) Testing integration/replication-2 [ok]: Interactive CLI: should find second search result if user presses ctrl+r again (306 ms) [ok]: corrupt payload: fuzzer findings - valgrind invalid read (253 ms) [ok]: PFCOUNT multiple-keys merge returns cardinality of union #1 (8698 ms) [ok]: First server should have role slave after SLAVEOF (103 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 (3 ms) [ok]: If min-slaves-to-write is honored, write is accepted (again) (0 ms) [ok]: Interactive CLI: should find second search result if user presses ctrl+s (305 ms) [ok]: corrupt payload: fuzzer findings - empty hash ziplist (246 ms) [ok]: Make the old master a replica of the new one and check conditions (1007 ms) [ok]: corrupt payload: fuzzer findings - stream with no records (150 ms) [ok]: Interactive CLI: should exit reverse search if user presses ctrl+g (186 ms) [ok]: Interactive CLI: should exit reverse search if user presses up arrow (183 ms) [ok]: AOF will open a temporary INCR AOF to accumulate data until the first AOFRW success when AOF is dynamically enabled (3294 ms) [ok]: corrupt payload: fuzzer findings - quicklist ziplist tail followed by extra data which start with 0xff (251 ms) [ok]: Interactive CLI: should exit reverse search if user presses right arrow (190 ms) [ok]: corrupt payload: fuzzer findings - dict init to huge size (140 ms) [ok]: Interactive CLI: should exit reverse search if user presses down arrow (172 ms) [ok]: corrupt payload: fuzzer findings - huge string (246 ms) [ok]: Multi Part AOF writes start offset in the manifest (254 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: Interactive CLI: should exit reverse search if user presses left arrow (188 ms) [ok]: Multi Part AOF won't add the offset of incr AOF from old version (167 ms) [ok]: corrupt payload: fuzzer findings - stream PEL without consumer (250 ms) [ok]: PSYNC2: Full resync after Master restart when too many key expired (2982 ms) [ok]: ZSET skiplist order consistency when elements are moved (1776 ms) [ok]: ZRANGESTORE basic (1 ms) [ok]: ZRANGESTORE RESP3 (1 ms) [ok]: ZRANGESTORE range (0 ms) [ok]: ZRANGESTORE BYLEX (1 ms) [ok]: ZRANGESTORE BYSCORE (1 ms) [ok]: ZRANGESTORE BYSCORE LIMIT (1 ms) [ok]: ZRANGESTORE BYSCORE REV LIMIT (0 ms) [ok]: ZRANGE BYSCORE REV LIMIT (0 ms) [ok]: ZRANGESTORE - src key missing (1 ms) [ok]: ZRANGESTORE - src key wrong type (1 ms) [ok]: ZRANGESTORE - empty range (0 ms) [ok]: ZRANGESTORE BYLEX - empty range (0 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 (2 ms) [ok]: ZRANGE invalid syntax (1 ms) [ok]: Interactive CLI: should disable and persist line if user presses tab (247 ms) [ok]: ZRANDMEMBER - listpack (13 ms) [ok]: client freed during loading (1832 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: ZRANDMEMBER - skiplist (14 ms) [ok]: ZRANDMEMBER with RESP3 (2 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: fuzzer findings - stream listpack valgrind issue (140 ms) [ok]: Multi Part AOF can update master_repl_offset with only startoffset info (263 ms) [74/96 done]: integration/psync2-master-restart (9 seconds) Testing integration/replication-3 [ok]: Interactive CLI: should disable and persist search result if user presses tab (258 ms) [ok]: corrupt payload: fuzzer findings - stream with bad lpFirst (240 ms) [ok]: Multi Part AOF can update master_repl_offset with endoffset info (263 ms) [ok]: corrupt payload: fuzzer findings - stream listpack lpPrev valgrind issue (154 ms) [ok]: First server should have role slave after SLAVEOF (104 ms) [ok]: ZRANDMEMBER with - skiplist (502 ms) [ok]: corrupt payload: fuzzer findings - stream with non-integer entry id (141 ms) [ok]: Interactive CLI: should disable and persist line and move the cursor if user presses tab (308 ms) [ok]: Interactive CLI: INFO response should be printed raw (62 ms) [ok]: Multi Part AOF will add the end offset if we close gracefully the AOF (295 ms) [ok]: Interactive CLI: Status reply (60 ms) [ok]: Interactive CLI: Integer reply (64 ms) [ok]: corrupt payload: fuzzer findings - empty quicklist (233 ms) [ok]: Interactive CLI: Bulk reply (61 ms) [ok]: Interactive CLI: Multi-bulk reply (70 ms) [ok]: Test RDB load info (781 ms) [ok]: corrupt payload: fuzzer findings - empty zset (143 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: ZRANDMEMBER with - listpack (510 ms) [ok]: zset score double range (1 ms) [ok]: zunionInterDiffGenericCommand acts on SET and ZSET (24 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - single (11 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) [ok]: corrupt payload: fuzzer findings - hash with len of 0 (147 ms) [75/96 done]: unit/type/zset (38 seconds) Testing integration/replication-4 [ok]: corrupt payload: fuzzer findings - hash listpack first element too long entry len (236 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: Interactive CLI: Parsing quotes (431 ms) [ok]: First server should have role slave after SLAVEOF (4 ms) [ok]: EVAL timeout with slow verbatim Lua script from AOF (3410 ms) [ok]: INCR AOF has accurate start offset when AOFRW (774 ms) [76/96 done]: integration/aof-multi-part (15 seconds) Testing integration/replication-buffer [ok]: corrupt payload: fuzzer findings - stream double free listpack when insert dup node to rax returns 0 (246 ms) [ok]: EVAL can process writes from AOF in read-only replicas (240 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: No write if min-slaves-max-lag is > of the slave lag (2836 ms) [ok]: Test redis-check-aof for old style resp AOF (29 ms) [ok]: Test redis-check-aof for old style resp AOF - has data in the same format as manifest (24 ms) [ok]: Test redis-check-aof for old style rdb-preamble AOF (23 ms) [ok]: min-slaves-to-write is ignored by slaves (3 ms) [ok]: Test redis-check-aof for Multi Part AOF with resp AOF base (25 ms) [ok]: Test redis-check-aof for Multi Part AOF with rdb-preamble AOF base (40 ms) [ok]: Test redis-check-aof for Multi Part AOF contains a format error (24 ms) [ok]: corrupt payload: fuzzer findings - LCS OOM (243 ms) [ok]: Test redis-check-aof only truncates the last file for Multi Part AOF in fix mode (53 ms) [ok]: Test redis-check-aof only truncates the last file for Multi Part AOF in truncate-to-timestamp mode (22 ms) [ok]: Interactive CLI: Subscribed mode (604 ms) [ok]: corrupt payload: fuzzer findings - gcc asan reports false leak on assert (136 ms) [ok]: FLUSHDB / FLUSHALL should persist in AOF (11 ms) [ok]: corrupt payload: fuzzer findings - lpFind invalid access (146 ms) [ok]: corrupt payload: fuzzer findings - invalid access in ziplist tail prevlen decoding (234 ms) [ok]: Interactive non-TTY CLI: Subscribed mode (399 ms) [ok]: Non-interactive TTY CLI: Status reply (6 ms) [ok]: Non-interactive TTY CLI: Integer reply (3 ms) [ok]: Non-interactive TTY CLI: Bulk reply (9 ms) [ok]: PSYNC2: generate load while killing replication links (5001 ms) [ok]: Non-interactive TTY CLI: Multi-bulk reply (6 ms) [ok]: PSYNC2: cluster is consistent after load (x = 18870) (3 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (5 ms) [ok]: Non-interactive TTY CLI: Read last argument from pipe (15 ms) [ok]: PSYNC2: --- CYCLE 2 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #0 as master (1 ms) [ok]: Non-interactive TTY CLI: Read last argument from file (13 ms) [ok]: PSYNC2: Set #4 to replicate from #2 (0 ms) [ok]: Non-interactive TTY CLI: Escape character in JSON mode (44 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: Non-interactive non-TTY CLI: Status reply (3 ms) [ok]: Non-interactive non-TTY CLI: Integer reply (3 ms) [ok]: Non-interactive non-TTY CLI: Bulk reply (3 ms) [ok]: Non-interactive non-TTY CLI: Multi-bulk reply (5 ms) [ok]: Non-interactive non-TTY CLI: ASK redirect test (61 ms) [ok]: Non-interactive non-TTY CLI: Quoted input arguments (5 ms) [ok]: Non-interactive non-TTY CLI: No accidental unquoting of input arguments (6 ms) [ok]: Non-interactive non-TTY CLI: Invalid quoted input arguments (14 ms) [ok]: Non-interactive non-TTY CLI: Read last argument from pipe (8 ms) [ok]: Non-interactive non-TTY CLI: Read last argument from file (5 ms) [ok]: corrupt payload: fuzzer findings - zset zslInsert with a NAN score (241 ms) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - latest server (25 ms) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - no server (9 ms) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - old server (30 ms) [ok]: corrupt payload: fuzzer findings - streamLastValidID panic (237 ms) [ok]: PFCOUNT multiple-keys merge returns cardinality of union #2 (4284 ms) [ok]: corrupt payload: fuzzer findings - valgrind fishy value warning (241 ms) [ok]: All replicas share one global replication buffer rdbchannel=yes (182 ms) [ok]: Replication buffer will become smaller when no replica uses rdbchannel=yes (15 ms) [ok]: corrupt payload: fuzzer findings - empty set listpack (248 ms) [ok]: PSYNC2: Set #1 to replicate from #2 (1 ms) [ok]: corrupt payload: fuzzer findings - set with duplicate elements causes sdiff to hang (147 ms) [ok]: corrupt payload: fuzzer findings - set with invalid length causes smembers to hang (140 ms) [ok]: corrupt payload: fuzzer findings - set with invalid length causes sscan to hang (137 ms) [ok]: corrupt payload: zset listpack encoded with invalid length causes zscan to hang (150 ms) [ok]: corrupt payload: hash listpack encoded with invalid length causes hscan to hang (142 ms) [77/96 done]: integration/corrupt-dump (16 seconds) Testing integration/replication-psync [ok]: Test child sending info (2971 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: script won't load anymore if it's in rdb (0 ms) [ok]: Slave should be able to synchronize with the master (105 ms) [ok]: PSYNC2: Set #2 to replicate from #0 (4 ms) [ok]: PFDEBUG GETREG returns the HyperLogLog raw registers (1847 ms) [ok]: PFADD / PFCOUNT cache invalidation works (1 ms) [78/96 done]: unit/hyperloglog (76 seconds) Testing integration/replication-rdbchannel [ok]: Allow changing appendonly config while loading from AOF on startup (2678 ms) [ok]: failed bgsave prevents writes (420 ms) [ok]: test various edge cases of repl topology changes with missing pings at the end (5500 ms) [ok]: Detect write load to master (1006 ms) [ok]: PSYNC2: Set #3 to replicate from #0 (1 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: no, disabled, reconnect: 0, rdbchannel: no) (41 ms) [ok]: HFE - save and load expired fields, expired soon after, or long after (listpack) (313 ms) [ok]: Test replication with multiple replicas (rdbchannel enabled on both) (213 ms) [ok]: HFE - save and load expired fields, expired soon after, or long after (dict) (358 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: Slave should be able to synchronize with the master (104 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: HFE - save and load rdb all fields expired, (listpack) (329 ms) [ok]: PSYNC2: cluster is consistent after failover (5 ms) [ok]: All replicas share one global replication buffer rdbchannel=no (201 ms) [ok]: Replication buffer will become smaller when no replica uses rdbchannel=no (6 ms) [ok]: HFE - save and load rdb all fields expired, (dict) (248 ms) [ok]: Test replication with parallel clients writing in different DBs (5217 ms) [ok]: Allow changing appendonly config while loading from RDB on startup (1786 ms) [79/96 done]: integration/aof (20 seconds) Testing integration/replication [ok]: Detect write load to master (1004 ms) [ok]: save listpack, load dict (351 ms) [ok]: Slave enters handshake (1 ms) [ok]: Slave enters wait_bgsave (1 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: With min-slaves-to-write (1,3): master should be writable (2 ms) [ok]: With min-slaves-to-write (2,3): master should not be writable (5 ms) [ok]: With min-slaves-to-write function without no-write flag (0 ms) [ok]: With not enough good slaves, read in Lua script is still accepted (1 ms) [ok]: save dict, load listpack (441 ms) [ok]: MASTER and SLAVE consistency with expire (7015 ms) [ok]: Fuzzer corrupt restore payloads - sanitize_dump: yes (9953 ms) [80/96 done]: integration/corrupt-dump-fuzzer (20 seconds) Testing integration/shutdown [ok]: Master can replicate command longer than client-query-buffer-limit on replica (130 ms) [ok]: Dumping an RDB - functions only: no (5067 ms) [ok]: active field expiry after load, (listpack) (308 ms) [ok]: active field expiry after load, (dict) (207 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: Chained replicas disconnect when replica re-connect with the same master (2943 ms) [ok]: lazy field expiry after load, (listpack) (512 ms) [ok]: PSYNC2 #3899 regression: kill first replica (5 ms) [ok]: Dumping an RDB - functions only: yes (1931 ms) [ok]: lazy field expiry after load, (dict) (510 ms) [ok]: ziplist implementation: encoding stress testing (17751 ms) [ok]: Scan mode (190 ms) [81/96 done]: unit/type/list-3 (56 seconds) [ok]: With min-slaves-to-write: master not writable with lagged slave (2768 ms) [82/96 done]: integration/psync2-pingoff (18 seconds) [ok]: Shutting down master waits for replica to catch up (sigterm) (2610 ms) [ok]: load un-expired items below and above rax-list boundary, (listpack) (283 ms) [ok]: First server should have role slave after SLAVEOF (102 ms) [ok]: load un-expired items below and above rax-list boundary, (dict) (309 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [83/96 done]: integration/rdb (15 seconds) [ok]: Replication of an expired key does not delete the expired key (610 ms) [ok]: PSYNC2: generate load while killing replication links (5001 ms) [ok]: PSYNC2: cluster is consistent after load (x = 39422) (1 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (3 ms) [ok]: PSYNC2: --- CYCLE 3 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #0 as master (0 ms) [ok]: PSYNC2: Set #4 to replicate from #0 (0 ms) [ok]: PSYNC2: Set #1 to replicate from #0 (0 ms) [ok]: PSYNC2: Set #2 to replicate from #0 (0 ms) [ok]: PSYNC2: Set #3 to replicate from #1 (1 ms) [ok]: PSYNC2: cluster is consistent after failover (3 ms) [ok]: Test replication with multiple replicas (rdbchannel enabled on one of them) (5805 ms) [ok]: First server should have role slave after SLAVEOF (6 ms) [ok]: Test rdbchannel is not used if repl-diskless-sync config is disabled on master (141 ms) [ok]: Connecting as a replica (2122 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: Shutting down master waits for replica to catch up (shutdown) (2451 ms) [ok]: Replication backlog size can outgrow the backlog limit config rdbchannel=yes (4816 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: Test replica state should start with wait_bgsave (3 ms) [ok]: Test replica state advances to send_bulk_and_stream when rdbchannel connects (42 ms) [ok]: Test replica rdbchannel client has SC flag on client list output (0 ms) [ok]: Test replication partial resync: ok psync (diskless: no, disabled, reconnect: 1, rdbchannel: no) (6283 ms) [ok]: Test replication with blocking lists and sorted sets operations (25007 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (2 ms) [84/96 done]: integration/block-repl (27 seconds) [ok]: Slave is able to evict keys created in writable slaves (6010 ms) [ok]: Writable replica doesn't return expired keys (106 ms) [ok]: PFCOUNT updates cache on readonly replica (5 ms) [ok]: Slave should be able to synchronize with the master (102 ms) [ok]: PFCOUNT doesn't use expired key on readonly replica (103 ms) [ok]: PSYNC2 #3899 regression: verify consistency (60 ms) [85/96 done]: integration/replication-3 (15 seconds) [ok]: Piping raw protocol (2837 ms) [ok]: Options -X with illegal argument (8 ms) [ok]: Detect write load to master (1001 ms) [ok]: DUMP RESTORE with -x option (25 ms) [ok]: DUMP RESTORE with -X option (15 ms) [ok]: Send eval command by using --eval option (8 ms) [ok]: MASTER and SLAVE dataset should be identical after complex ops (13387 ms) [ok]: Shutting down master waits for replica timeout (2570 ms) [86/96 done]: integration/replication-2 (16 seconds) [87/96 done]: integration/psync2-reg (22 seconds) [ok]: Interactive CLI: db_num showed in redis-cli after reconnected (645 ms) [88/96 done]: integration/redis-cli (19 seconds) [ok]: Shutting down master waits for replica then fails (1274 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 60934) (1 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (2 ms) [ok]: PSYNC2: --- CYCLE 4 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #4 as master (1 ms) [ok]: PSYNC2: Set #0 to replicate from #3 (1 ms) [ok]: Shutting down master waits for replica then aborted (536 ms) [89/96 done]: integration/shutdown (9 seconds) [ok]: Slave is able to detect timeout during handshake (0 ms) [ok]: PSYNC2: Set #1 to replicate from #4 (0 ms) [ok]: Set instance A as slave of B (102 ms) [ok]: INCRBYFLOAT replication, should not remove expire (6 ms) [ok]: GETSET replication (3 ms) [ok]: BRPOPLPUSH replication, when blocking against empty list (6 ms) [ok]: BRPOPLPUSH replication, list exists (4 ms) [ok]: BLMOVE (left, left) replication, when blocking against empty list (4 ms) [ok]: BLMOVE (left, left) replication, list exists (4 ms) [ok]: BLMOVE (left, right) replication, when blocking against empty list (4 ms) [ok]: BLMOVE (left, right) replication, list exists (6 ms) [ok]: BLMOVE (right, left) replication, when blocking against empty list (4 ms) [ok]: Test replica state advances to online when fullsync is completed (4382 ms) [ok]: BLMOVE (right, left) replication, list exists (4 ms) [ok]: BLMOVE (right, right) replication, when blocking against empty list (5 ms) [ok]: BLMOVE (right, right) replication, list exists (9 ms) [ok]: BLPOP followed by role change, issue #2473 (108 ms) [ok]: Replica could use replication buffer (beyond backlog config) for partial resynchronization rdbchannel=yes (5289 ms) [ok]: Second server should have role master at first (1 ms) [ok]: SLAVEOF should start with link status "down" (1 ms) [ok]: The role should immediately be changed to "replica" (0 ms) [ok]: Sync should have transferred keys from master (1 ms) [ok]: The link status should be up (1 ms) [ok]: SET on the master should immediately propagate (1 ms) [ok]: FLUSHDB / FLUSHALL should replicate (102 ms) [ok]: ROLE in master reports master with a slave (0 ms) [ok]: ROLE in slave reports slave in connected state (0 ms) [ok]: PSYNC2: Set #2 to replicate from #3 (1 ms) [ok]: Replication backlog memory will become smaller if disconnecting with replica rdbchannel=yes (887 ms) [ok]: PSYNC2: Set #3 to replicate from #1 (0 ms) [ok]: PSYNC2: cluster is consistent after failover (2 ms) [ok]: Test replication partial resync: no backlog (diskless: no, disabled, reconnect: 1, rdbchannel: no) (7781 ms) [ok]: Slave should be able to synchronize with the master (102 ms) [ok]: Replication backlog size can outgrow the backlog limit config rdbchannel=no (4344 ms) [ok]: Detect write load to master (1002 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 81589) (6 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (2 ms) [ok]: PSYNC2: --- CYCLE 5 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #1 as master (0 ms) [ok]: PSYNC2: Set #0 to replicate from #4 (1 ms) [ok]: PSYNC2: Set #4 to replicate from #1 (0 ms) [ok]: Test master memory does not increase during replication (8773 ms) [ok]: PSYNC2: Set #2 to replicate from #4 (1 ms) [ok]: PSYNC2: Set #3 to replicate from #4 (1 ms) [ok]: Replica could use replication buffer (beyond backlog config) for partial resynchronization rdbchannel=no (4949 ms) [ok]: PSYNC2: cluster is consistent after failover (2 ms) [ok]: Replication backlog memory will become smaller if disconnecting with replica rdbchannel=no (982 ms) [ok]: Test replication stream buffer becomes full on replica (2857 ms) [ok]: Test replication stream buffer config replica-full-sync-buffer-limit (1437 ms) Waiting for process 47265 to exit... [ok]: slave buffer are counted correctly (79976 ms) [ok]: Test replication partial resync: ok after delay (diskless: no, disabled, reconnect: 1, rdbchannel: no) (9411 ms) [ok]: Slave should be able to synchronize with the master (102 ms) Waiting for process 47265 to exit... [ok]: Partial resynchronization is successful even client-output-buffer-limit is less than repl-backlog-size rdbchannel=yes (4208 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 105830) (4 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (2 ms) [ok]: PSYNC2: Bring the master back again for next test (6 ms) [ok]: PSYNC2: Partial resync after restart using RDB aux fields (148 ms) [ok]: The update of replBufBlock's repl_offset is ok - Regression test for #11666 (3 ms) [ok]: Detect write load to master (1002 ms) Waiting for process 47265 to exit... [ok]: Replica client-output-buffer size is limited to backlog_limit/16 when no replication data is pending rdbchannel=yes (1151 ms) [90/96 done]: integration/psync2 (42 seconds) [ok]: Replication: commands with many arguments (issue #1221) (25742 ms) [ok]: spopwithcount rewrite srem command (143 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=no, replica diskless=disabled, rdbchannel=no (18436 ms) [ok]: Replication of SPOP command -- alsoPropagate() API (2205 ms) [ok]: Partial resynchronization is successful even client-output-buffer-limit is less than repl-backlog-size rdbchannel=no (4278 ms) [ok]: First server should have role slave after SLAVEOF (104 ms) [ok]: Data divergence can happen under default conditions (11 ms) [ok]: Data divergence is allowed on writable replicas (4 ms) [ok]: The update of replBufBlock's repl_offset is ok - Regression test for #11666 (2 ms) [91/96 done]: integration/replication-4 (39 seconds) [ok]: Replica client-output-buffer size is limited to backlog_limit/16 when no replication data is pending rdbchannel=no (1136 ms) [92/96 done]: integration/replication-buffer (40 seconds) [ok]: Test master disconnects replica when output buffer limit is reached (6699 ms) [ok]: Test replication partial resync: backlog expired (diskless: no, disabled, reconnect: 1, rdbchannel: no) (9326 ms) [ok]: Slave should be able to synchronize with the master (103 ms) [ok]: Detect write load to master (1002 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: no, swapdb, reconnect: 0, rdbchannel: no) (49 ms) [ok]: Slave should be able to synchronize with the master (103 ms) [ok]: Test replication recovers after output buffer failures (4217 ms) [ok]: Detect write load to master (1001 ms) [ok]: replica buffer don't induce eviction (15507 ms) [ok]: Don't rehash if used memory exceeds maxmemory after rehash (494 ms) [ok]: client tracking don't cause eviction feedback loop (1697 ms) [ok]: propagation with eviction (104 ms) [ok]: propagation with eviction in MULTI (108 ms) [ok]: lru/lfu value of the key just added (2 ms) [93/96 done]: unit/maxmemory (121 seconds) [ok]: Test replication partial resync: ok psync (diskless: no, swapdb, reconnect: 1, rdbchannel: no) (6259 ms) [ok]: Slave should be able to synchronize with the master (102 ms) [ok]: Detect write load to master (1001 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=no, replica diskless=swapdb, rdbchannel=no (18512 ms) [ok]: Test master continues RDB delivery if not all replicas are dropped (9820 ms) [ok]: Test replication partial resync: no backlog (diskless: no, swapdb, reconnect: 1, rdbchannel: no) (7839 ms) [ok]: Slave should be able to synchronize with the master (103 ms) [ok]: Detect write load to master (1001 ms) [ok]: Test master aborts rdb delivery if all replicas are dropped (6027 ms) [ok]: Test replica recovers when rdb channel connection is killed (966 ms) [ok]: Test replica recovers when main channel connection is killed (1013 ms) [ok]: Test replica recovers connection failures (3626 ms) [ok]: Test replication partial resync: ok after delay (diskless: no, swapdb, reconnect: 1, rdbchannel: no) (9402 ms) [ok]: Test master connection drops while streaming repl buffer into the db (2493 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [ok]: Test main channel connection drops while loading rdb (disk based) (2395 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=yes, replica diskless=disabled, rdbchannel=yes (20580 ms) [ok]: Test main channel connection drops while loading rdb (diskless) (2035 ms) [ok]: Test replicaof command while streaming repl buffer into the db (2380 ms) [94/96 done]: integration/replication-rdbchannel (78 seconds) [ok]: Test replication partial resync: backlog expired (diskless: no, swapdb, reconnect: 1, rdbchannel: no) (9670 ms) [ok]: Slave should be able to synchronize with the master (1812 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: yes, disabled, reconnect: 0, rdbchannel: yes) (111 ms) [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, disabled, reconnect: 1, rdbchannel: yes) (6423 ms) [ok]: Slave should be able to synchronize with the master (1812 ms) [ok]: Detect write load to master (0 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=yes, replica diskless=swapdb, rdbchannel=yes (21882 ms) [ok]: Test replication partial resync: no backlog (diskless: yes, disabled, reconnect: 1, rdbchannel: yes) (8094 ms) [ok]: Slave should be able to synchronize with the master (808 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, disabled, reconnect: 1, rdbchannel: yes) (9727 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: backlog expired (diskless: yes, disabled, reconnect: 1, rdbchannel: yes) (9733 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, rdbchannel: no) (55 ms) [ok]: Master stream is correctly processed while the replica has a script in -BUSY state (27152 ms) [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (1 ms) [ok]: Diskless load swapdb (different replid): new database is exposed after swapping (0 ms) [ok]: Diskless load swapdb (different replid): replica enter loading rdbchannel=no (167 ms) [ok]: Diskless load swapdb (different replid): old database is exposed after replication fails rdbchannel=no (0 ms) [ok]: Diskless load swapdb (async_loading): new database is exposed after swapping (0 ms) [ok]: Diskless load swapdb (async_loading): replica enter async_loading (118 ms) [ok]: Diskless load swapdb (async_loading): old database is exposed while async replication is in progress (428 ms) [ok]: Busy script during async loading (631 ms) [ok]: Blocked commands and configs during async-loading (122 ms) [ok]: Diskless load swapdb (async_loading): old database is exposed after async replication fails (1 ms) Waiting for process 2220 to exit... [ok]: Test replication partial resync: ok psync (diskless: yes, disabled, reconnect: 1, rdbchannel: no) (6482 ms) Waiting for process 2220 to exit... [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (0 ms) Waiting for process 2220 to exit... Waiting for process 2220 to exit... [ok]: Test replication partial resync: no backlog (diskless: yes, disabled, reconnect: 1, rdbchannel: no) (8057 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: ok after delay (diskless: yes, disabled, reconnect: 1, rdbchannel: no) (9696 ms) [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (0 ms) [ok]: diskless loading short read (18042 ms) [ok]: diskless no replicas drop during rdb pipe (8136 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, disabled, reconnect: 1, rdbchannel: no) (9763 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, rdbchannel: yes) (100 ms) [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (0 ms) [ok]: diskless slow replicas drop during rdb pipe (4041 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, swapdb, reconnect: 1, rdbchannel: yes) (6465 ms) [ok]: diskless fast replicas drop during rdb pipe (6428 ms) [ok]: Slave should be able to synchronize with the master (807 ms) [ok]: Detect write load to master (0 ms) [ok]: diskless all replicas drop during rdb pipe (1823 ms) [ok]: Test replication partial resync: no backlog (diskless: yes, swapdb, reconnect: 1, rdbchannel: yes) (8078 ms) [ok]: diskless timeout replicas drop during rdb pipe (7084 ms) [ok]: Slave should be able to synchronize with the master (807 ms) [ok]: Detect write load to master (0 ms) [ok]: diskless replication child being killed is collected (1553 ms) [ok]: replication child dies when parent is killed - diskless: yes (1470 ms) [ok]: replication child dies when parent is killed - diskless: no (1465 ms) [ok]: diskless replication read pipe cleanup (819 ms) [ok]: replicaof right after disconnection (1833 ms) [ok]: Kill rdb child process if its dumping RDB is not useful (936 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 (110 ms) [ok]: replica can handle EINTR if use diskless load (647 ms) [ok]: replica do not write the reply to the replication link - SYNC (_addReplyToBufferOrList) (147 ms) [ok]: replica do not write the reply to the replication link - SYNC (addReplyDeferredLen) (95 ms) [ok]: replica do not write the reply to the replication link - PSYNC (_addReplyToBufferOrList) (57 ms) [ok]: replica do not write the reply to the replication link - PSYNC (addReplyDeferredLen) (106 ms) [ok]: PSYNC with wrong offset should throw error (2 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, swapdb, reconnect: 1, rdbchannel: yes) (9718 ms) [ok]: Test replication with lazy expire (112 ms) [ok]: Slave should be able to synchronize with the master (808 ms) [ok]: Detect write load to master (1 ms) [ok]: Replica should reply LOADING while flushing a large db (disklessload: disabled) (3965 ms) [ok]: Replica should reply LOADING while flushing a large db (disklessload: on-empty-db) (3959 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, swapdb, reconnect: 1, rdbchannel: yes) (9856 ms) [ok]: Allow appendonly config change while loading rdb on slave (2268 ms) [ok]: Replica flushes db lazily when replica-lazy-flush enabled (107 ms) [ok]: Test replication with functions when repl-diskless-load is set to on-empty-db (108 ms) [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: yes, swapdb, reconnect: 0, rdbchannel: no) (73 ms) [95/96 done]: integration/replication (201 seconds) [ok]: Slave should be able to synchronize with the master (808 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, swapdb, reconnect: 1, rdbchannel: no) (6491 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 backlog (diskless: yes, swapdb, reconnect: 1, rdbchannel: no) (8100 ms) [ok]: Slave should be able to synchronize with the master (1814 ms) [ok]: Detect write load to master (1 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, swapdb, reconnect: 1, rdbchannel: no) (9758 ms) [ok]: Slave should be able to synchronize with the master (1817 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, swapdb, reconnect: 1, rdbchannel: no) (9876 ms) [96/96 done]: integration/replication-psync (245 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 [96/96 done]: bitops-large-memory (1 seconds) Testing solo test [96/96 done]: defrag (2 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 [96/96 done]: violations (1 seconds) Testing solo test [96/96 done]: list-large-memory (1 seconds) Testing solo test [96/96 done]: set-large-memory (0 seconds) The End Execution time of different units: 0 seconds - unit/info-command 0 seconds - unit/acl-v2 2 seconds - unit/bitfield 2 seconds - unit/keyspace 3 seconds - unit/acl 3 seconds - unit/info 3 seconds - unit/auth 1 seconds - unit/limits 4 seconds - unit/functions 2 seconds - unit/networking 6 seconds - unit/bitops 0 seconds - unit/oom-score-adj 5 seconds - unit/multi 9 seconds - unit/introspection-2 1 seconds - unit/printver 1 seconds - unit/pause 11 seconds - unit/introspection 1 seconds - unit/pubsub 9 seconds - unit/memefficiency 0 seconds - unit/quit 1 seconds - unit/pubsubshard 1 seconds - unit/replybufsize 11 seconds - unit/latency-monitor 4 seconds - unit/protocol 1 seconds - unit/shutdown 1 seconds - unit/slowlog 0 seconds - unit/tls 16 seconds - unit/expire 0 seconds - unit/violations 3 seconds - unit/tracking 7 seconds - unit/querybuf 22 seconds - unit/lazyfree 1 seconds - unit/type/incr 19 seconds - unit/other 9 seconds - unit/type/hash 12 seconds - unit/type/hash-field-expire 24 seconds - unit/obuf-limits 31 seconds - unit/client-eviction 33 seconds - unit/dump 20 seconds - unit/sort 5 seconds - unit/type/stream-cgroups 4 seconds - unit/cluster/announced-endpoints 17 seconds - unit/type/list 0 seconds - unit/cluster/cluster-response-tls 33 seconds - unit/scan 15 seconds - unit/type/string 34 seconds - unit/wait 8 seconds - unit/cluster/hostnames 28 seconds - unit/type/list-2 41 seconds - unit/scripting 7 seconds - unit/cluster/human-announced-nodename 55 seconds - unit/aofrw 4 seconds - unit/cluster/misc 2 seconds - unit/cluster/scripting 3 seconds - unit/cluster/multi-slot-operations 14 seconds - unit/cluster/failure-marking 3 seconds - unit/cluster/sharded-pubsub 1 seconds - integration/aof-race 8 seconds - unit/cluster/internal-secret 1 seconds - integration/convert-ziplist-zset-on-load 1 seconds - integration/convert-ziplist-hash-on-load 20 seconds - unit/cluster/cli 0 seconds - integration/convert-zipmap-hash-on-load 3 seconds - unit/cluster/slot-ownership 32 seconds - unit/type/set 31 seconds - unit/type/stream 1 seconds - integration/logging 64 seconds - unit/info-keysizes 65 seconds - unit/geo 7 seconds - integration/failover 8 seconds - integration/dismiss-mem 1 seconds - integration/redis-benchmark 17 seconds - unit/cluster/links 9 seconds - integration/psync2-master-restart 38 seconds - unit/type/zset 15 seconds - integration/aof-multi-part 16 seconds - integration/corrupt-dump 76 seconds - unit/hyperloglog 20 seconds - integration/aof 20 seconds - integration/corrupt-dump-fuzzer 56 seconds - unit/type/list-3 18 seconds - integration/psync2-pingoff 15 seconds - integration/rdb 27 seconds - integration/block-repl 15 seconds - integration/replication-3 16 seconds - integration/replication-2 22 seconds - integration/psync2-reg 19 seconds - integration/redis-cli 9 seconds - integration/shutdown 42 seconds - integration/psync2 39 seconds - integration/replication-4 40 seconds - integration/replication-buffer 121 seconds - unit/maxmemory 78 seconds - integration/replication-rdbchannel 201 seconds - integration/replication 245 seconds - integration/replication-psync 1 seconds - bitops-large-memory 2 seconds - defrag 1 seconds - violations 1 seconds - list-large-memory 0 seconds - set-large-memory \o/ All tests passed without errors! Cleanup: may take some time... OK make[1]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src' >>> redis: Entering fakeroot... for dir in src; do make -C $dir install; done make[1]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src' INSTALL redis-sentinel INSTALL redis-check-rdb Hint: It's a good idea to run 'make test' ;) INSTALL redis-server INSTALL redis-benchmark INSTALL redis-cli make[1]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src' >>> redis-openrc*: Running split function openrc... 'etc/conf.d' -> '/home/buildozer/aports/community/redis/pkg/redis-openrc/etc/conf.d' 'etc/init.d' -> '/home/buildozer/aports/community/redis/pkg/redis-openrc/etc/init.d' >>> redis-openrc*: Preparing subpackage redis-openrc... >>> redis-openrc*: Running postcheck for redis-openrc >>> redis*: Running postcheck for redis >>> redis*: Preparing package redis... >>> redis*: Stripping binaries >>> redis*: Script found. /bin/sh added as a dependency for redis-8.0.0-r0.apk >>> redis*: Adding .pre-install >>> redis*: Adding .post-install >>> redis-openrc*: Scanning shared objects >>> redis*: Scanning shared objects >>> redis-openrc*: Tracing dependencies... >>> redis-openrc*: Package size: 1.7 KB >>> redis-openrc*: Compressing data... >>> redis-openrc*: Create checksum... >>> redis-openrc*: Create redis-openrc-8.0.0-r0.apk >>> redis*: Tracing dependencies... /bin/sh so:libc.musl-x86.so.1 so:libcrypto.so.3 so:libssl.so.3 so:libstdc++.so.6 >>> redis*: Package size: 3.8 MB >>> redis*: Compressing data... >>> redis*: Create checksum... >>> redis*: Create redis-8.0.0-r0.apk >>> redis: Build complete at Thu, 15 May 2025 21:24:07 +0000 elapsed time 0h 6m 21s >>> redis: Cleaning up srcdir >>> redis: Cleaning up pkgdir >>> redis: Uninstalling dependencies... (1/8) Purging .makedepends-redis (20250515.211747) (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: 400 MiB in 104 packages >>> redis: Updating the community/x86 repository index... >>> redis: Signing the index...