>>> valkey: Building main/valkey 9.0.0-r0 (using abuild 3.16.0_rc4-r0) started Mon, 17 Nov 2025 14:18:43 +0000 >>> valkey: Validating /home/buildozer/aports/main/valkey/APKBUILD... >>> valkey: Analyzing dependencies... >>> valkey: Installing for build: build-base linux-headers openssl-dev tcl procps ( 1/10) Installing linux-headers (6.16.12-r0) ( 2/10) Installing openssl-dev (3.5.4-r0) ( 3/10) Installing tzdata (2025b-r0) ( 4/10) Installing tcl (8.6.17-r0) ( 5/10) Installing libintl (0.24.1-r1) ( 6/10) Installing skalibs-libs (2.14.4.0-r0) ( 7/10) Installing utmps-libs (0.1.3.1-r0) ( 8/10) Installing libproc2 (4.0.4-r3) ( 9/10) Installing procps-ng (4.0.4-r3) (10/10) Installing .makedepends-valkey (20251117.141844) busybox-1.37.0-r25.trigger: Executing script... OK: 356 MiB in 115 packages >>> valkey: Cleaning up srcdir >>> valkey: Cleaning up pkgdir >>> valkey: Cleaning up tmpdir >>> valkey: Fetching https://distfiles.alpinelinux.org/distfiles/edge/valkey-9.0.0.tar.gz Connecting to distfiles.alpinelinux.org (172.105.82.32:443) wget: server returned error: HTTP/1.1 404 Not Found >>> valkey: Fetching https://github.com/valkey-io/valkey/archive/9.0.0/valkey-9.0.0.tar.gz Connecting to github.com (140.82.121.4:443) Connecting to codeload.github.com (140.82.121.9:443) saving to '/var/cache/distfiles/edge/valkey-9.0.0.tar.gz.part' valkey-9.0.0.tar.gz. 100% |********************************| 4017k 0:00:00 ETA '/var/cache/distfiles/edge/valkey-9.0.0.tar.gz.part' saved /var/cache/distfiles/edge/valkey-9.0.0.tar.gz: OK /home/buildozer/aports/main/valkey/valkey.conf.patch: OK /home/buildozer/aports/main/valkey/sentinel.conf.patch: OK /home/buildozer/aports/main/valkey/valkey.initd: OK /home/buildozer/aports/main/valkey/valkey.confd: OK /home/buildozer/aports/main/valkey/valkey-sentinel.initd: OK /home/buildozer/aports/main/valkey/valkey-sentinel.confd: OK >>> valkey: Fetching https://distfiles.alpinelinux.org/distfiles/edge/valkey-9.0.0.tar.gz /var/cache/distfiles/edge/valkey-9.0.0.tar.gz: OK /home/buildozer/aports/main/valkey/valkey.conf.patch: OK /home/buildozer/aports/main/valkey/sentinel.conf.patch: OK /home/buildozer/aports/main/valkey/valkey.initd: OK /home/buildozer/aports/main/valkey/valkey.confd: OK /home/buildozer/aports/main/valkey/valkey-sentinel.initd: OK /home/buildozer/aports/main/valkey/valkey-sentinel.confd: OK >>> valkey: Unpacking /var/cache/distfiles/edge/valkey-9.0.0.tar.gz... >>> valkey: valkey.conf.patch patching file valkey.conf Hunk #1 succeeded at 163 (offset 10 lines). Hunk #2 succeeded at 374 (offset 24 lines). Hunk #3 succeeded at 392 (offset 24 lines). Hunk #4 succeeded at 421 (offset 24 lines). Hunk #5 succeeded at 612 (offset 25 lines). Hunk #6 succeeded at 2614 (offset 98 lines). >>> valkey: sentinel.conf.patch patching file sentinel.conf cd src && make all make[1]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/src' CC Makefile.dep rm -rf valkey-server valkey-sentinel valkey-cli valkey-benchmark valkey-check-rdb valkey-check-aof valkey-unit-tests libvalkey.a unit/*.o unit/*.d lua/*.o lua/*.d trace/*.o trace/*.d *.o *.gcda *.gcno *.gcov valkey.info lcov-html Makefile.dep *.so rm -f threads_mngr.d adlist.d vector.d quicklist.d ae.d anet.d dict.d hashtable.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 memory_prefetch.d io_threads.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 cluster_slot_stats.d crc16.d cluster_migrateslots.d endianconv.d commandlog.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 valkey-check-rdb.d valkey-check-aof.d geo.d lazyfree.d module.d evict.d expire.d geohash.d geohash_helper.d childinfo.d allocator_defrag.d defrag.d siphash.d rax.d t_stream.d listpack.d localtime.d lolwut.d lolwut5.d lolwut6.d lolwut9.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.d functions.d commands.d strl.d connection.d unix.d logreqres.d rdma.d scripting_engine.d entry.d vset.d lua/script_lua.d lua/function_lua.d lua/engine_lua.d lua/debug_lua.d trace/trace.d trace/trace_commands.d trace/trace_db.d trace/trace_cluster.d trace/trace_server.d trace/trace_rdb.d trace/trace_aof.d anet.d adlist.d dict.d valkey-cli.d zmalloc.d release.d ae.d serverassert.d crcspeed.d crccombine.d crc64.d siphash.d crc16.d monotonic.d cli_common.d mt19937-64.d strl.d cli_commands.d sds.d util.d sha256.d ae.d anet.d valkey-benchmark.d adlist.d dict.d zmalloc.d serverassert.d release.d crcspeed.d crccombine.d crc64.d siphash.d crc16.d monotonic.d cli_common.d mt19937-64.d strl.d sds.d util.d sha256.d (cd ../deps && make distclean) make[2]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps' (cd libvalkey && 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_c_interface && make clean) > /dev/null || true (rm -f .make-*) make[2]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps' (cd modules && make clean) make[2]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/src/modules' rm -rf *.xo *.so make[2]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/src/modules' (cd ../tests/modules && make clean) make[2]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.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 block_keyspace_notification.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 moduleparameter.so publish.so usercall.so postnotifications.so moduleauthtwo.so rdbloadsave.so crash.so cluster.so helloscripting.so unsupported_features.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 block_keyspace_notification.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 moduleparameter.xo publish.xo usercall.xo postnotifications.xo moduleauthtwo.xo rdbloadsave.xo crash.xo cluster.xo helloscripting.xo unsupported_features.xo make[2]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/tests/modules' (rm -f .make-*) echo STD=-pedantic -std=gnu11 >> .make-settings echo WARN=-Wall -W -Wno-missing-field-initializers -Werror=deprecated-declarations -Wstrict-prototypes -Werror=undef >> .make-settings echo OPT=-O3 -flto=auto -ffat-lto-objects -fno-omit-frame-pointer >> .make-settings echo MALLOC=libc >> .make-settings echo BUILD_TLS=yes >> .make-settings echo BUILD_RDMA= >> .make-settings echo USE_SYSTEMD= >> .make-settings echo CFLAGS=-Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables >> .make-settings echo LDFLAGS=-Wl,--as-needed,-O1,--sort-common >> .make-settings echo SERVER_CFLAGS= >> .make-settings echo SERVER_LDFLAGS= >> .make-settings echo PREV_FINAL_CFLAGS=-pedantic -std=gnu11 -Wall -W -Wno-missing-field-initializers -Werror=deprecated-declarations -Wstrict-prototypes -Werror=undef -O3 -flto=auto -ffat-lto-objects -fno-omit-frame-pointer -g -ggdb -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -I../deps/libvalkey/include -I../deps/linenoise -I../deps/lua/src -I../deps/hdr_histogram -I../deps/fpconv -DUSE_OPENSSL=1 -DBUILD_TLS_MODULE=0 >> .make-settings echo PREV_FINAL_LDFLAGS=-Wl,--as-needed,-O1,--sort-common -O3 -flto=auto -ffat-lto-objects -fno-omit-frame-pointer -g -ggdb -rdynamic >> .make-settings (cd ../deps && make libvalkey linenoise lua hdr_histogram fpconv) make[2]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps' (cd libvalkey && 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_c_interface && make clean) > /dev/null || true (rm -f .make-*) (echo "-Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables" > .make-cflags) (echo "-Wl,--as-needed,-O1,--sort-common" > .make-ldflags) MAKE libvalkey cd libvalkey && make static SDS_INCLUDE_DIR=../../src/ DICT_INCLUDE_DIR=../../src/ USE_TLS=1 MAKE linenoise cd linenoise && make MAKE lua cd lua/src && make all CFLAGS="-Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 " MYLDFLAGS="-Wl,--as-needed,-O1,--sort-common" AR="ar rc" MAKE hdr_histogram cd hdr_histogram && make make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/libvalkey' MAKE fpconv cd fpconv && make make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/lua/src' cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lapi.o lapi.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lcode.o lcode.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ldebug.o ldebug.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ldo.o ldo.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ldump.o ldump.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lfunc.o lfunc.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lgc.o lgc.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o llex.o llex.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lmem.o lmem.c make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/fpconv' make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/hdr_histogram' cc -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -c fpconv_dtoa.c cc -std=c99 -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DHDR_MALLOC_INCLUDE=\"hdr_redis_malloc.h\" -c hdr_histogram.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lobject.o lobject.c make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/linenoise' cc -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -c linenoise.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lopcodes.o lopcodes.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lparser.o lparser.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lstate.o lstate.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lstring.o lstring.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ltable.o ltable.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ltm.o ltm.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lundump.o lundump.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lvm.o lvm.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lzio.o lzio.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o strbuf.o strbuf.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o fpconv.o fpconv.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lauxlib.o lauxlib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lbaselib.o lbaselib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ldblib.o ldblib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o liolib.o liolib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lmathlib.o lmathlib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o loslib.o loslib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ltablib.o ltablib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lstrlib.o lstrlib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o loadlib.o loadlib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o linit.o linit.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lua_cjson.o lua_cjson.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lua_struct.o lua_struct.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lua_cmsgpack.o lua_cmsgpack.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lua_bit.o lua_bit.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lua.o lua.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o luac.o luac.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o print.o print.c mkdir -p obj mkdir -p lib cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/tls.c -o obj/tls.o cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/adlist.c -o obj/adlist.o cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/alloc.c -o obj/alloc.o cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/async.c -o obj/async.o cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/cluster.c -o obj/cluster.o cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/command.c -o obj/command.o cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/conn.c -o obj/conn.o cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/crc16.c -o obj/crc16.o cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/net.c -o obj/net.o cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/read.c -o obj/read.o cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/sockcompat.c -o obj/sockcompat.o cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/valkey.c -o obj/valkey.o cc -std=c99 -pedantic -O3 -fPIC -fvisibility=hidden -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DVALKEY_TEST_TLS -Wall -Wextra -pedantic -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -Werror -g -ggdb -Iinclude/valkey -I../../src/ -I../../src/ -MMD -MP -c src/vkutil.c -o obj/vkutil.o ar rcs libfpconv.a fpconv_dtoa.o make[3]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/fpconv' ar rcs libhdrhistogram.a hdr_histogram.o make[3]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/hdr_histogram' make[3]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/linenoise' ar rc liblua.a lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o strbuf.o fpconv.o lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o loslib.o ltablib.o lstrlib.o loadlib.o linit.o lua_cjson.o lua_struct.o lua_cmsgpack.o lua_bit.o # DLL needs all object files ranlib liblua.a cc -o lua -Wl,--as-needed,-O1,--sort-common lua.o liblua.a -lm cc -o luac -Wl,--as-needed,-O1,--sort-common luac.o print.o liblua.a -lm ar rcs lib/libvalkey_tls.a obj/tls.o ar rcs lib/libvalkey.a obj/adlist.o obj/alloc.o obj/async.o obj/cluster.o obj/command.o obj/conn.o obj/crc16.o obj/net.o obj/read.o obj/sockcompat.o obj/valkey.o obj/vkutil.o make[3]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/libvalkey' make[3]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/lua/src' make[2]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps' CC threads_mngr.o CC adlist.o CC vector.o CC quicklist.o CC ae.o CC anet.o CC dict.o CC hashtable.o CC kvstore.o CC server.o CC sds.o CC zmalloc.o CC lzf_c.o CC lzf_d.o CC pqsort.o CC zipmap.o CC sha1.o CC ziplist.o CC release.o CC memory_prefetch.o CC networking.o CC util.o CC io_threads.o CC object.o CC db.o CC replication.o CC rdb.o CC t_string.o CC t_list.o CC t_set.o CC t_zset.o CC t_hash.o CC config.o CC aof.o CC pubsub.o CC multi.o CC debug.o CC sort.o CC intset.o CC syncio.o CC cluster.o CC cluster_legacy.o CC cluster_slot_stats.o CC crc16.o CC cluster_migrateslots.o CC endianconv.o CC commandlog.o CC eval.o CC bio.o CC rio.o CC rand.o CC memtest.o CC syscheck.o CC crcspeed.o CC crccombine.o CC crc64.o CC bitops.o CC sentinel.o CC notify.o CC setproctitle.o CC blocked.o CC hyperloglog.o CC latency.o CC sparkline.o CC valkey-check-rdb.o CC valkey-check-aof.o CC geo.o CC lazyfree.o CC module.o CC evict.o CC expire.o CC geohash.o CC geohash_helper.o CC childinfo.o CC allocator_defrag.o CC defrag.o CC siphash.o CC rax.o CC t_stream.o CC listpack.o CC localtime.o CC lolwut.o CC lolwut5.o CC lolwut6.o CC lolwut9.o valkey-check-aof.c: In function 'processAnnotations': valkey-check-aof.c:196:59: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 196 | printf("AOF %s has nothing before timestamp %ld, " | ~~^ | | | long int | %lld 197 | "aborting...\n", 198 | filename, to_timestamp); | ~~~~~~~~~~~~ | | | time_t {aka long long int} valkey-check-aof.c:202:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 202 | printf("Failed to truncate AOF %s to timestamp %ld to offset %ld because it is not the last file.\n", | ~~^ | | | long int | %lld 203 | filename, to_timestamp, (long int)epos); | ~~~~~~~~~~~~ | | | time_t {aka long long int} valkey-check-aof.c:211:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 211 | printf("Failed to truncate AOF %s to timestamp %ld\n", filename, to_timestamp); | ~~^ ~~~~~~~~~~~~ | | | | long int time_t {aka long long int} | %lld valkey-check-aof.c: In function 'checkSingleAof': valkey-check-aof.c:299:59: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 299 | printf("Truncate nothing in AOF %s to timestamp %ld\n", aof_filename, to_timestamp); | ~~^ ~~~~~~~~~~~~ | | | | long int time_t {aka long long int} | %lld valkey-check-aof.c: In function 'printAofStyle': valkey-check-aof.c:449:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 449 | printf("Successfully truncated AOF %s to timestamp %ld\n", aofFileName, to_timestamp); | ~~^ ~~~~~~~~~~~~ | | | | long int time_t {aka long long int} | %lld CC acl.o CC tracking.o CC socket.o CC tls.o CC sha256.o CC timeout.o CC setcpuaffinity.o CC monotonic.o CC mt19937-64.o CC resp_parser.o CC call_reply.o CC script.o CC functions.o CC commands.o CC strl.o CC connection.o CC unix.o CC logreqres.o CC rdma.o CC scripting_engine.o CC entry.o CC vset.o CC lua/script_lua.o CC lua/function_lua.o CC lua/engine_lua.o CC lua/debug_lua.o CC trace/trace.o CC trace/trace_commands.o CC trace/trace_db.o CC trace/trace_cluster.o CC trace/trace_server.o CC trace/trace_rdb.o CC trace/trace_aof.o CC valkey-cli.o CC serverassert.o CC cli_common.o CC cli_commands.o CC valkey-benchmark.o tracking.c: In function 'enableTracking': tracking.c:181:6: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 181 | void enableTracking(client *c, uint64_t redirect_to, struct ClientFlags options, robj **prefix, size_t numprefix) { | ^~~~~~~~~~~~~~ LINK valkey-benchmark networking.c: In function 'acceptCommonHandler': networking.c:1745:6: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 1745 | void acceptCommonHandler(connection *conn, struct ClientFlags flags, char *ip) { | ^~~~~~~~~~~~~~~~~~~ networking.c: In function 'clientTrackingCommand': networking.c:5408:9: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 5408 | enableTracking(c, redir, options, prefix, numprefix); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ LINK valkey-server LINK valkey-cli networking.c: In function 'acceptCommonHandler': networking.c:1745:6: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 1745 | void acceptCommonHandler(connection *conn, struct ClientFlags flags, char *ip) { | ^ tracking.c: In function 'enableTracking': tracking.c:181:6: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 181 | void enableTracking(client *c, uint64_t redirect_to, struct ClientFlags options, robj **prefix, size_t numprefix) { | ^ networking.c: In function 'clientTrackingCommand': networking.c:5408:9: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 5408 | enableTracking(c, redir, options, prefix, numprefix); | ^ INSTALL valkey-sentinel INSTALL valkey-check-rdb INSTALL valkey-check-aof Hint: It's a good idea to run 'make test' ;) make[1]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/src' cd src && make test make[1]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/src' CC Makefile.dep CC release.o LINK valkey-server LINK valkey-cli LINK valkey-benchmark networking.c: In function 'acceptCommonHandler': networking.c:1745:6: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 1745 | void acceptCommonHandler(connection *conn, struct ClientFlags flags, char *ip) { | ^ tracking.c: In function 'enableTracking': tracking.c:181:6: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 181 | void enableTracking(client *c, uint64_t redirect_to, struct ClientFlags options, robj **prefix, size_t numprefix) { | ^ networking.c: In function 'clientTrackingCommand': networking.c:5408:9: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 5408 | enableTracking(c, redir, options, prefix, numprefix); | ^ INSTALL valkey-check-aof INSTALL valkey-check-rdb Cleanup: may take some time... OK Starting test server at port 21079 [ready]: 65011 Testing unit/introspection-2 [ready]: 65010 Testing unit/aofrw [ready]: 65012 Testing unit/protocol [ready]: 65013 Testing unit/obuf-limits [ready]: 65014 Testing unit/scan [ready]: 65015 Testing unit/scripting [ready]: 65016 Testing unit/hyperloglog [ready]: 65017 Testing unit/functions [ready]: 65018 Testing unit/wait [ready]: 65020 Testing unit/commandlog [ready]: 65021 Testing unit/other [ready]: 65019 Testing unit/replybufsize [ready]: 65022 Testing unit/keyspace [ready]: 65025 Testing unit/oom-score-adj [ready]: 65024 Testing unit/memefficiency [ready]: 65023 Testing unit/pubsub [ignore]: CVE-2025-32023: Sparse HLL XZERO overflow triggers crash: large memory flag not provided [ok]: The microsecond part of the TIME command will not overflow (1 ms) [ok]: COMMANDLOG - check that it starts with an empty log (1 ms) [ok]: FUNCTION - Basic usage (0 ms) [ok]: FUNCTION - Load with unknown argument (0 ms) [ok]: FUNCTION - Create an already exiting library raise error (0 ms) [ok]: FUNCTION - Create an already exiting library raise error (case insensitive) (1 ms) [ok]: FUNCTION - Create a library with wrong name format (0 ms) [ok]: FUNCTION - Create library with unexisting engine (0 ms) [ok]: FUNCTION - Test uncompiled script (0 ms) [ok]: FUNCTION - test replace argument (0 ms) [ok]: FUNCTION - test function case insensitive (0 ms) [ok]: FUNCTION - test replace argument with failure keeps old libraries (1 ms) [ok]: DEL against a single item (1 ms) [ok]: FUNCTION - test function delete (0 ms) [ok]: CONFIG SET client-output-buffer-limit (1 ms) [ok]: FUNCTION - test fcall bad arguments (0 ms) [ok]: Vararg DEL (0 ms) [ok]: FUNCTION - test fcall bad number of keys arguments (0 ms) [ok]: FUNCTION - test fcall negative number of keys (0 ms) [ok]: FUNCTION - test delete on not exiting library (0 ms) [ok]: Untagged multi-key commands (0 ms) [ok]: FUNCTION - test function kill when function is not running (0 ms) [ok]: FUNCTION - test wrong subcommand (0 ms) [ok]: KEYS with pattern (0 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (0 ms) [ok]: Coverage: HELP commands (2 ms) [ok]: KEYS to get all keys (0 ms) [ok]: Pub/Sub PING on RESP2 (0 ms) [ok]: DBSIZE (0 ms) [ok]: EVAL - Return _G (0 ms) [ok]: EVAL - Return table with a metatable that raise error (1 ms) [ok]: Coverage: MEMORY MALLOC-STATS (1 ms) [ok]: KEYS with hashtag (1 ms) [ok]: EVAL - Return table with a metatable that call server (0 ms) [ok]: Coverage: MEMORY PURGE (0 ms) [ok]: Pub/Sub PING on RESP3 (0 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (0 ms) [ok]: Coverage: ECHO (0 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (0 ms) [ok]: FUNCTION - test loading from rdb (1 ms) [ok]: EVAL - Lua true boolean -> Redis protocol type conversion (1 ms) [ok]: DEL all keys (1 ms) [ok]: EVAL - Lua false boolean -> Redis protocol type conversion (0 ms) [ok]: KEYS with empty DB (0 ms) [ok]: EVAL - Lua status code reply -> Redis protocol type conversion (0 ms) [ok]: PUBLISH/SUBSCRIBE basics (1 ms) [ok]: EVAL - Lua error reply -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua table -> Redis protocol type conversion (0 ms) [ok]: EVAL - Are the KEYS and ARGV arrays populated correctly? (0 ms) [ok]: PUBLISH/SUBSCRIBE with two clients (1 ms) [ok]: EVAL - is Lua able to call Redis API? (0 ms) [ok]: EVAL - Redis integer -> Lua type conversion (0 ms) [ok]: SAVE - make sure there are all the types as values (2 ms) [ok]: PUBLISH/SUBSCRIBE after UNSUBSCRIBE without arguments (1 ms) [ok]: EVAL - Lua number -> Redis integer conversion (1 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (0 ms) [ok]: FUNCTION - test debug reload different options (2 ms) [ok]: SUBSCRIBE to one channel more than once (0 ms) [ok]: EVAL - Redis multi bulk -> Lua type conversion (0 ms) [ok]: UNSUBSCRIBE from non-subscribed channels (0 ms) [ok]: EVAL - Redis status reply -> Lua type conversion (1 ms) [ok]: EVAL - Redis error reply -> Lua type conversion (0 ms) [ok]: EVAL - Redis nil bulk reply -> Lua type conversion (0 ms) [ok]: EVAL - Is the Lua client using the currently selected DB? (1 ms) [ok]: PUBLISH/PSUBSCRIBE basics (2 ms) [ok]: FUNCTION - test debug reload with nosave and noflush (2 ms) [ok]: EVAL - SELECT inside Lua should not affect the caller (0 ms) [ok]: PUBLISH/PSUBSCRIBE with two clients (0 ms) [ok]: EVAL - Scripts do not block on blpop command (0 ms) [ok]: FUNCTION - test flushall and flushdb do not clean functions (0 ms) [ok]: EVAL - Scripts do not block on brpop command (1 ms) [ok]: PUBLISH/PSUBSCRIBE after PUNSUBSCRIBE without arguments (1 ms) [ok]: EVAL - Scripts do not block on brpoplpush command (0 ms) [ok]: CONFIG SET oom-score-adj works as expected (9 ms) [ok]: FUNCTION - test function dump and restore (1 ms) [ok]: EVAL - Scripts do not block on blmove command (0 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (1 ms) [ok]: FUNCTION - test function dump and restore with flush argument (1 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (0 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: CONFIG SET oom-score-adj handles configuration failures (0 ms) [ok]: EVAL - Scripts do not block on waitaof (1 ms) [ok]: CONFIG SET oom-score-adj-values doesn't touch proc when disabled (0 ms) [ok]: FUNCTION - test function dump and restore with append argument (1 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (0 ms) [ok]: CONFIG SET oom score restored on disable (0 ms) [ok]: CONFIG SET oom score relative and absolute (0 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (0 ms) [ok]: CONFIG SET out-of-range oom score (1 ms) [ok]: FUNCTION - test function dump and restore with replace argument (1 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (1 ms) [ok]: FUNCTION - test function restore with bad payload do not drop existing functions (0 ms) [ok]: FUNCTION - test function restore with wrong number of arguments (0 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option -- non empty stream (0 ms) [ok]: FUNCTION - test fcall_ro with write command (1 ms) [ok]: EVAL - Scripts can run non-deterministic commands (1 ms) [ok]: FUNCTION - test fcall_ro with read only commands (0 ms) [ok]: EVAL - No arguments to redis.call/pcall is considered an error (0 ms) [ok]: FUNCTION - test keys and argv (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: FUNCTION - test command get keys on fcall (0 ms) [ok]: FUNCTION - test command get keys on fcall_ro (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 (0 ms) [ok]: EVAL - JSON string decoding (0 ms) [ok]: EVAL - JSON smoke test (1 ms) [ok]: EVAL - cmsgpack can pack double? (0 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [ok]: Handle an empty query (43 ms) [ok]: Handle an empty query in pipeline (0 ms) [ok]: {standalone} SCAN basic (50 ms) [ok]: Negative multibulk length (42 ms) [ok]: Negative multibulk length in pipeline (0 ms) [ok]: Out of range multibulk length (0 ms) [ok]: Wrong multibulk payload header (0 ms) [ok]: Negative multibulk payload length (0 ms) [ok]: Out of range multibulk payload length (1 ms) [ok]: Non-number multibulk payload length (0 ms) [ok]: Multi bulk request not followed by bulk arguments (0 ms) [ok]: Generic wrong number of args (1 ms) [ok]: Mixing quoted and unquoted strings (0 ms) [ok]: Unbalanced single quotes (0 ms) [ok]: Unbalanced double quotes (1 ms) [ok]: PubSub messages with CLIENT REPLY OFF (84 ms) [ok]: PUNSUBSCRIBE from non-subscribed channels (0 ms) [ok]: NUMSUB returns numbers, not strings (#1561) (0 ms) [ok]: NUMPATs returns the number of unique patterns (1 ms) [ok]: Mix SUBSCRIBE and PSUBSCRIBE (1 ms) [ok]: PUNSUBSCRIBE and UNSUBSCRIBE should always reply (0 ms) [1/139 done]: unit/oom-score-adj (1 seconds) Testing unit/querybuf [ok]: {standalone} SCAN COUNT (52 ms) [ok]: Protocol desync regression test #1 (42 ms) [ok]: Keyspace notifications: we receive keyspace notifications (42 ms) [ok]: {standalone} SCAN MATCH (43 ms) [ok]: Protocol desync regression test #2 (41 ms) [ok]: Keyspace notifications: we receive keyevent notifications (42 ms) [ok]: Keyspace notifications: we can receive both kind of events (0 ms) [ok]: Keyspace notifications: we are able to mask events (1 ms) [ok]: Keyspace notifications: general events test (1 ms) [ok]: Keyspace notifications: list events test (1 ms) [ok]: Keyspace notifications: set events test (0 ms) [ok]: Keyspace notifications: zset events test (1 ms) [ok]: Keyspace notifications: hash events test (1 ms) [ok]: Keyspace notifications: stream events test (1 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (174 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (0 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]: redis.sha1hex() implementation (0 ms) [ok]: COMMANDLOG - only logs commands exceeding the threshold (201 ms) [ok]: COMMANDLOG - zero max length is correctly handled (5 ms) [ok]: {standalone} SCAN TYPE (64 ms) [ok]: COMMANDLOG - max entries is correctly handled (5 ms) [ok]: Protocol desync regression test #3 (41 ms) [ok]: COMMANDLOG - GET optional argument to limit output len works (5 ms) [ok]: COMMANDLOG - RESET subcommand works (0 ms) [ok]: {standalone} SCAN unknown type (41 ms) [ok]: Protocol desync regression test #4 (41 ms) [ok]: raw protocol response (0 ms) [ok]: raw protocol response - deferred (0 ms) [ok]: raw protocol response - multiline (0 ms) [ok]: RESP3 attributes (0 ms) [ok]: RESP3 attributes readraw (1 ms) [ok]: RESP3 attributes on RESP2 (0 ms) [ok]: test big number parsing (0 ms) [ok]: test bool parsing (1 ms) [ok]: test verbatim str parsing (0 ms) [ok]: test large number of args (30 ms) [ok]: test argument rewriting - issue 9598 (0 ms) [ok]: {standalone} SCAN with expired keys (52 ms) [ok]: Memory efficiency with values in range 32 (340 ms) [ok]: {standalone} SCAN with expired keys with TYPE filter (52 ms) [ok]: {standalone} SSCAN with encoding intset (1 ms) [ok]: {standalone} SSCAN with encoding listpack (1 ms) [ok]: {standalone} SSCAN with encoding hashtable (3 ms) [ok]: {standalone} HSCAN with encoding listpack (1 ms) [ok]: Keyspace notifications: expired events (triggered expire) (201 ms) [ok]: FUZZ stresser with data model binary (410 ms) [ok]: HELLO without protover (1 ms) [ok]: FUNCTION - test function kill (403 ms) [ok]: COMMANDLOG - logged entry sanity check (201 ms) [ok]: HELLO and availability-zone (1 ms) [ok]: COMMANDLOG slow - Certain commands are omitted that contain sensitive information (2 ms) [ok]: COMMANDLOG slow - Some commands can redact sensitive fields (1 ms) [ok]: COMMANDLOG slow - Rewritten commands are logged as their original command (3 ms) [ok]: COMMANDLOG slow - commands with too many arguments are trimmed (1 ms) [ok]: COMMANDLOG slow - too long arguments are trimmed (0 ms) [ok]: {standalone} HSCAN with encoding hashtable (71 ms) [ok]: {standalone} ZSCAN with encoding listpack (2 ms) [ok]: HyperLogLog self test passes (439 ms) [ok]: PFADD without arguments creates an HLL value (0 ms) [ok]: Approximated cardinality after creation is zero (0 ms) [ok]: PFADD returns 1 when at least 1 reg was modified (0 ms) [ok]: PFADD returns 0 when no reg was modified (0 ms) [ok]: PFADD works with empty string (regression) (0 ms) [ok]: PFCOUNT returns approximated cardinality of set (1 ms) [ok]: Keyspace notifications: expired events (background expire) (106 ms) [ok]: Keyspace notification: expired event (Expiration time is already expired) (0 ms) [ok]: Keyspace notifications: evicted events (1 ms) [ok]: Keyspace notifications: test CONFIG GET/SET of event flags (0 ms) [ok]: Keyspace notifications: new key test (0 ms) [ok]: publish to self inside multi (1 ms) [ok]: publish to self inside script (0 ms) [ok]: unsubscribe inside multi, and publish to self (1 ms) [ok]: {standalone} ZSCAN with encoding skiplist (70 ms) [ok]: {standalone} SCAN guarantees check under write load (11 ms) [ok]: {standalone} SSCAN with integer encoded object (issue #1345) (0 ms) [ok]: {standalone} SSCAN with PATTERN (0 ms) [ok]: {standalone} HSCAN with PATTERN (1 ms) [ok]: {standalone} HSCAN with NOVALUES (0 ms) [ok]: {standalone} ZSCAN with PATTERN (0 ms) [ok]: {standalone} ZSCAN with NOSCORES (0 ms) [2/139 done]: unit/pubsub (1 seconds) Testing unit/pubsubshard [ok]: COMMANDLOG slow - EXEC is not logged, just executed commands (201 ms) [ok]: Regression for a crash with blocking ops and pipelining (0 ms) [ok]: verify reply buffer limits (645 ms) [ok]: Memory efficiency with values in range 64 (342 ms) [3/139 done]: unit/replybufsize (1 seconds) Testing unit/info-command [ok]: SPUBLISH/SSUBSCRIBE basics (1 ms) [ok]: SPUBLISH/SSUBSCRIBE with two clients (1 ms) [ok]: SPUBLISH/SSUBSCRIBE after UNSUBSCRIBE without arguments (1 ms) [ok]: SSUBSCRIBE to one channel more than once (0 ms) [ok]: SUNSUBSCRIBE from non-subscribed channels (1 ms) [ok]: PUBSUB command basics (0 ms) [ok]: SPUBLISH/SSUBSCRIBE with two clients (0 ms) [ok]: SPUBLISH/SSUBSCRIBE with PUBLISH/SUBSCRIBE (0 ms) [4/139 done]: unit/protocol (1 seconds) Testing unit/networking [ok]: HyperLogLogs are promote from sparse to dense (341 ms) [ok]: Change hll-sparse-max-bytes (0 ms) [ok]: PubSubShard with CLIENT REPLY OFF (83 ms) [ok]: Hyperloglog promote to dense well in different hll-sparse-max-bytes (38 ms) [ok]: FUNCTION - test script kill not working on function (402 ms) Testing Valkey version 7.2.4 (00000000) [ok]: Extract version and sha1 details from info command and print (1 ms) [ok]: info command with at most one sub command (1 ms) [ok]: info command with one sub-section (0 ms) [ok]: info command with multiple sub-sections (1 ms) [ok]: COMMANDLOG slow - can clean older entries (200 ms) [ok]: FUZZ stresser with data model alpha (437 ms) [5/139 done]: unit/info-command (1 seconds) Testing unit/sort [ok]: CONFIG SET port number (215 ms) [ok]: {standalone} ZSCAN scores: regression test for issue #2175 (453 ms) [ok]: Setup slave (905 ms) [ok]: WAIT out of range timeout (milliseconds) (0 ms) [ok]: WAIT should acknowledge 1 additional copy of the data (0 ms) [ok]: Memory efficiency with values in range 128 (344 ms) [ok]: Listpack: SORT BY key (0 ms) [ok]: Listpack: SORT BY key with limit (0 ms) [ok]: Listpack: SORT BY hash field (1 ms) [ok]: DEL against expired key (1100 ms) [ok]: EXISTS (0 ms) [ok]: Zero length value in key. SET/GET/EXISTS (0 ms) [ok]: Commands pipelining (0 ms) [ok]: Non existing command (1 ms) [ok]: RENAME basic usage (0 ms) [ok]: RENAME source key should no longer exist (0 ms) [ok]: RENAME against already existing key (0 ms) [ok]: RENAMENX basic usage (1 ms) [ok]: RENAMENX against already existing key (0 ms) [ok]: RENAMENX against already existing key (2) (0 ms) [ok]: RENAME against non existing source key (0 ms) [ok]: RENAME where source and dest key are the same (existing) (0 ms) [ok]: RENAMENX where source and dest key are the same (existing) (1 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 (0 ms) [ok]: RENAME with volatile key, should not inherit TTL of target key (1 ms) [ok]: DEL all keys again (DB 0) (0 ms) [ok]: DEL all keys again (DB 1) (0 ms) [ok]: COPY basic usage for string (1 ms) [ok]: COPY for string does not replace an existing key without REPLACE option (0 ms) [ok]: COPY for string can replace an existing key with REPLACE option (0 ms) [ok]: COPY for string ensures that copied data is independent of copying data (1 ms) [ok]: COPY for string does not copy data to no-integer DB (0 ms) [ok]: COPY can copy key expire metadata as well (1 ms) [ok]: COPY does not create an expire if it does not exist (0 ms) [ok]: COPY basic usage for list - quicklist (41 ms) [ok]: COPY basic usage for list - listpack (0 ms) [ok]: COPY basic usage for $type set (1 ms) [ok]: COPY basic usage for $type set (1 ms) [ok]: CONFIG SET bind address (217 ms) [ok]: COPY basic usage for $type set (11 ms) [ok]: COPY basic usage for listpack sorted set (0 ms) [ok]: COPY basic usage for skiplist sorted set (8 ms) [ok]: COPY basic usage for listpack hash (0 ms) [ok]: COPY basic usage for hashtable hash (10 ms) [ok]: Measures elapsed time os.clock() (1003 ms) [ok]: Prohibit dangerous lua methods in sandbox (1 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (1 ms) [ok]: Globals protection reading an undeclared global variable (0 ms) [ok]: Globals protection setting an undeclared global* (0 ms) [ok]: lua bit.tohex bug (0 ms) [ok]: Test an example script DECR_IF_GT (2 ms) [ok]: Quicklist: SORT BY key (8 ms) [ok]: Quicklist: SORT BY key with limit (1 ms) [ok]: Quicklist: SORT BY hash field (9 ms) [ok]: FUNCTION - test function kill not working on eval (403 ms) [ok]: FUNCTION - test function flush (2 ms) [ok]: COMMANDLOG slow - can be disabled (401 ms) [ok]: COMMANDLOG slow - count must be >= -1 (1 ms) [ok]: COMMANDLOG slow - get all slow logs (1 ms) [ok]: COMMANDLOG slow - blocking command is reported only after unblocked (2 ms) [ok]: COMMANDLOG slow - the commands in script are recorded normally - is_eval: 0 (0 ms) [ok]: COMMANDLOG slow - the commands in script are recorded normally - is_eval: 1 (1 ms) [ok]: FUNCTION - test function flush will re-create the lua engine (13 ms) [ok]: FUZZ stresser with data model compr (408 ms) [ok]: COPY basic usage for stream (113 ms) [ok]: COPY basic usage for stream-cgroups (5 ms) [ok]: MOVE basic usage (1 ms) [ok]: MOVE against key existing in the target DB (0 ms) [ok]: MOVE against non-integer DB (#1428) (0 ms) [ok]: MOVE can move key expire metadata as well (1 ms) [ok]: MOVE does not create an expire if it does not exist (0 ms) [ok]: SET/GET keys in different DBs (1 ms) [ok]: RANDOMKEY (5 ms) [ok]: RANDOMKEY against empty DB (0 ms) [ok]: RANDOMKEY regression 1 (0 ms) [ok]: KEYS * two times with long key, Github issue #1208 (1 ms) [ok]: Regression for pattern matching long nested loops (0 ms) [ok]: Coverage: basic SWAPDB test and unhappy path (1 ms) [ok]: Coverage: SWAPDB and FLUSHDB (1 ms) [6/139 done]: unit/commandlog (2 seconds) Testing unit/tls [ok]: FLUSHALL should not reset the dirty counter if we disable save (1 ms) [ok]: FLUSHALL should reset the dirty counter to 0 if we enable save (4 ms) [ok]: Regression for pattern matching very long nested loops (83 ms) [ok]: Memory efficiency with values in range 1024 (387 ms) [ok]: HyperLogLog sparse encoding stress test (654 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Additional at tail (1 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Broken magic (0 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Invalid encoding (0 ms) [ok]: Corrupted dense HyperLogLogs are detected: Wrong length (1 ms) [ok]: Client output buffer hard limit is enforced (1526 ms) [ok]: BGSAVE (54 ms) [ok]: SELECT an out of range DB (0 ms) [7/139 done]: unit/tls (0 seconds) Testing unit/multi [ok]: MULTI / EXEC basics (1 ms) [ok]: DISCARD (0 ms) [ok]: Nested MULTI are not allowed (0 ms) [ok]: MULTI where commands alter argc/argv (1 ms) [ok]: WATCH inside MULTI is not allowed (0 ms) [ok]: EXEC fails if there are errors while queueing commands #1 (0 ms) [ok]: EXEC fails if there are errors while queueing commands #2 (1 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) (0 ms) [ok]: EXEC fail on WATCHed key modified (1 key of 5 watched) (1 ms) [ok]: EXEC fail on WATCHed key modified by SORT with STORE even if the result is empty (0 ms) [ok]: EXEC fail on lazy expired WATCHed key (102 ms) [ok]: WATCH stale keys should not fail EXEC (2 ms) [ok]: Delete WATCHed stale keys should not fail EXEC (3 ms) [ok]: FLUSHDB while watching stale keys should not fail EXEC (2 ms) [ok]: After successful EXEC key is no longer watched (0 ms) [ok]: After failed EXEC key is no longer watched (1 ms) [ok]: It is possible to UNWATCH (0 ms) [ok]: UNWATCH when there is nothing watched works as expected (0 ms) [ok]: FLUSHALL is able to touch the watched keys (0 ms) [ok]: FLUSHALL does not touch non affected keys (1 ms) [ok]: FLUSHDB is able to touch the watched keys (0 ms) [ok]: FLUSHDB does not touch non affected keys (0 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 (0 ms) [ok]: SWAPDB does not touch watched stale keys (3 ms) [ok]: SWAPDB does not touch non-existing key replaced with stale key (3 ms) [ok]: SWAPDB does not touch stale key replaced with another stale key (2 ms) [ok]: WATCH is able to remember the DB a key belongs to (1 ms) [ok]: WATCH will consider touched keys target of EXPIRE (0 ms) [ok]: setup replication for following tests (804 ms) [ok]: publish message to master and receive on replica (1 ms) [ok]: EVAL does not leak in the Lua stack (736 ms) [ok]: Call Redis command with many args from Lua (issue #1764) (1 ms) [ok]: Number conversion precision test (issue #1118) (0 ms) [ok]: String containing number precision test (regression of issue #1118) (0 ms) [ok]: Verify negative arg count is error instead of crash (issue #1842) (0 ms) [ok]: Scripts can handle commands with incorrect arity (0 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 (0 ms) [ok]: Script with RESP3 map (2 ms) [ok]: Check consistency of different data types after a reload (484 ms) [ok]: Script return recursive object (102 ms) [ok]: Script check unpack with massive arguments (41 ms) [ok]: Script read key with expiration set (0 ms) [ok]: Script del key with expiration set (1 ms) [ok]: Script ACL check (1 ms) [ok]: Binary code loading failed (0 ms) [ok]: Try trick global protection 1 (0 ms) [ok]: Try trick global protection 2 (0 ms) [ok]: Try trick global protection 3 (0 ms) [ok]: Try trick global protection 4 (0 ms) [ok]: Try trick readonly table on valkey table (0 ms) [ok]: Try trick readonly table on json table (1 ms) [ok]: Try trick readonly table on cmsgpack table (0 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (0 ms) [ok]: Test dofile are not available (1 ms) [ok]: Test print are not available (0 ms) [ok]: WAIT should not acknowledge 2 additional copies of the data (1075 ms) [ignore]: large memory flag not provided [ok]: Same dataset digest if saving/reloading as AOF? (129 ms) [ok]: EXPIRES after a reload (snapshot + append only file rewrite) (54 ms) [ok]: CONFIG SET bind-source-addr (1324 ms) [ok]: Memory efficiency with values in range 16384 (1081 ms) [8/140 done]: unit/memefficiency (3 seconds) Testing unit/acl [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (402 ms) [ok]: Connections start with the default user (0 ms) [ok]: It is possible to create new users (0 ms) [ok]: Coverage: ACL USERS (0 ms) [ok]: Usernames can not contain spaces or null characters (0 ms) [ok]: New users start disabled (0 ms) [ok]: Enabling the user allows the login (1 ms) [ok]: Only the set of correct passwords work (0 ms) [ok]: It is possible to remove passwords from the set of valid ones (0 ms) [ok]: Test password hashes can be added (0 ms) [ok]: Test password hashes validate input (0 ms) [ok]: ACL GETUSER returns the password hash instead of the actual password (0 ms) [ok]: Test hashed passwords removal (0 ms) [ok]: By default users are not able to access any command (1 ms) [ok]: By default users are not able to access any key (0 ms) [ok]: It's possible to allow the access of a subset of keys (0 ms) [ok]: By default, only default user is able to publish to any channel (1 ms) [ok]: By default, only default user is not able to publish to any shard channel (0 ms) [ok]: By default, only default user is able to subscribe to any channel (1 ms) [ok]: By default, only default user is able to subscribe to any shard channel (0 ms) [ok]: By default, only default user is able to subscribe to any pattern (1 ms) [ok]: It's possible to allow publishing to a subset of channels (0 ms) [ok]: It's possible to allow publishing to a subset of shard channels (1 ms) [ok]: Validate subset of channels is prefixed with resetchannels flag (0 ms) [ok]: In transaction queue publish/subscribe/psubscribe to unauthorized channel will fail (1 ms) [ok]: It's possible to allow subscribing to a subset of channels (1 ms) [ok]: It's possible to allow subscribing to a subset of shard channels (0 ms) [ok]: It's possible to allow subscribing to a subset of channel patterns (1 ms) [ok]: Subscribers are killed when revoked of channel permission (0 ms) [ok]: Subscribers are killed when revoked of channel permission (0 ms) [ok]: Subscribers are killed when revoked of pattern permission (1 ms) [ok]: Subscribers are killed when revoked of allchannels permission (0 ms) [ok]: Subscribers are pardoned if literal permissions are retained and/or gaining allchannels (0 ms) [ok]: blocked command gets rejected when reprocessed after permission change (2 ms) [ok]: Users can be configured to authenticate with any password (0 ms) [ok]: ACLs can exclude single commands (1 ms) [ok]: ACLs can include or exclude whole classes of commands (0 ms) [ok]: ACLs can include single subcommands (1 ms) [ok]: ACLs can exclude single subcommands, case 1 (0 ms) [ok]: ACLs can exclude single subcommands, case 2 (1 ms) [ok]: ACLs cannot include a subcommand with a specific arg (0 ms) [ok]: ACLs cannot exclude or include a container commands with a specific arg (0 ms) [ok]: ACLs cannot exclude or include a container command with two args (1 ms) [ok]: ACLs including of a type includes also subcommands (0 ms) [ok]: ACLs can block SELECT of all but a specific DB (1 ms) [ok]: ACLs can block all DEBUG subcommands except one (0 ms) [ok]: ACLs set can include subcommands, if already full command exists (1 ms) [ok]: ACLs set can exclude subcommands, if already full command exists (2 ms) [ok]: ACL SETUSER RESET reverting to default newly created user (1 ms) [ok]: ACL GETUSER is able to translate back command permissions (0 ms) [ok]: ACL GETUSER provides reasonable results (9 ms) [ok]: ACL GETUSER provides correct results (3 ms) [ok]: ACL CAT with illegal arguments (1 ms) [ok]: ACL CAT without category - list all categories (0 ms) [ok]: ACL CAT category - list all commands/subcommands that belong to category (1 ms) [ok]: ACL requires explicit permission for scripting for EVAL_RO, EVALSHA_RO and FCALL_RO (0 ms) [ok]: ACL #5998 regression: memory leaks adding / removing subcommands (0 ms) [ok]: ACL LOG aggregates similar errors together and assigns unique entry-id to new errors (4 ms) [ok]: ACL LOG shows failed command executions at toplevel (1 ms) [ok]: ACL LOG shows failed subcommand executions at toplevel (0 ms) [ok]: ACL LOG is able to test similar events (0 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 (0 ms) [ok]: ACL LOG RESET is able to flush the entries in the log (0 ms) [ok]: ACL LOG can distinguish the transaction context (1) (0 ms) [ok]: ACL LOG can distinguish the transaction context (2) (1 ms) [ok]: ACL can log errors in the context of Lua scripting (1 ms) [ok]: ACL LOG can accept a numerical argument to show less entries (1 ms) [ok]: ACL LOG can log failed auth attempts (1 ms) [ok]: ACLLOG - zero max length is correctly handled (1 ms) [ok]: ACL LOG entries are limited to a maximum amount (1 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 (0 ms) [ok]: When default user has no command permission, hello command still works for other users (0 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 (0 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 (0 ms) [ok]: ACL GENPASS command failed test (0 ms) [ok]: Default user can not be removed (0 ms) [ok]: ACL load non-existing configured ACL file (0 ms) [ok]: ACL-Metrics user AUTH failure (3 ms) [ok]: ACL-Metrics invalid command accesses (2 ms) [ok]: ACL-Metrics invalid key accesses (2 ms) [ok]: ACL-Metrics invalid channels accesses (2 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (84 ms) [ok]: Timedout script does not cause a false dead client (84 ms) [ok]: Default bind address configuration handling (212 ms) [ok]: Protected mode works as expected (3 ms) [ok]: default: load from include file, can access any channels (0 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 (0 ms) [ok]: Alice: can execute all command (1 ms) [ok]: Bob: just execute @set and acl command (0 ms) [ok]: ACL LOAD only disconnects affected clients (1 ms) [ok]: ACL LOAD disconnects clients of deleted users (2 ms) [ok]: ACL load and save (1 ms) [ok]: ACL load and save with restricted channels (2 ms) [ok]: query buffer resized correctly (2677 ms) [ok]: WATCH will consider touched expired keys (1106 ms) [ok]: DISCARD should clear the WATCH dirty flag on the client (0 ms) [ok]: DISCARD should UNWATCH all the keys (1 ms) [ok]: Timedout script link is still usable after Lua returns (139 ms) [ok]: query buffer resized correctly when not idle (59 ms) [9/140 done]: unit/pubsubshard (3 seconds) Testing unit/bitops [ok]: MULTI / EXEC is not propagated (single write command) (64 ms) [ok]: TTL, TYPE and EXISTS do not alter the last access time of a key (3003 ms) [ok]: MULTI / EXEC is propagated correctly (multiple commands) (100 ms) [ok]: BITCOUNT against wrong type (1 ms) [ok]: BITCOUNT returns 0 against non existing key (0 ms) [ok]: BITCOUNT returns 0 with out of range indexes (0 ms) [ok]: BITCOUNT returns 0 with negative indexes where start > end (1 ms) [ok]: BITCOUNT against test vector #1 (0 ms) [ok]: BITCOUNT against test vector #2 (0 ms) [ok]: BITCOUNT against test vector #3 (1 ms) [ok]: BITCOUNT against test vector #4 (0 ms) [ok]: BITCOUNT against test vector #5 (0 ms) [ok]: Default user has access to all channels irrespective of flag (1 ms) [ok]: Update acl-pubsub-default, existing users shouldn't get affected (0 ms) [ok]: Single channel is valid (1 ms) [ok]: Single channel is not valid with allchannels (0 ms) [10/140 done]: unit/networking (3 seconds) Testing unit/auth [ok]: MULTI / EXEC is propagated correctly (multiple commands with SELECT) (101 ms) [ok]: WAIT should not acknowledge 1 additional copy if slave is blocked (1103 ms) [ok]: Big Quicklist: SORT BY key (425 ms) [ok]: Big Quicklist: SORT BY key with limit (10 ms) [ok]: AUTH fails if there is no password configured server side (0 ms) [ok]: Arity check for auth command (0 ms) [ok]: MULTI / EXEC is propagated correctly (empty transaction) (100 ms) [ok]: BITCOUNT fuzzing without start/end (196 ms) [ok]: Only default user has access to all channels irrespective of flag (1 ms) [ok]: Timedout scripts and unblocked command (388 ms) [ok]: FUNCTION - test loading function during the flush async (2105 ms) [ok]: FUNCTION - test function wrong argument (1 ms) [ok]: MULTI / EXEC is propagated correctly (read-only commands) (101 ms) [ok]: MULTI / EXEC is propagated correctly (write command, no effect) (100 ms) [ok]: AUTH fails when a wrong password is given (0 ms) [ok]: Arbitrary command gives an error when AUTH is required (0 ms) [ok]: AUTH succeeds when the right password is given (0 ms) [ok]: Once AUTH succeeded we can actually send commands to the server (1 ms) [ok]: For unauthenticated clients multibulk and bulk length are limited (0 ms) [ok]: For unauthenticated clients output buffer is limited (1 ms) [ok]: For once authenticated clients output buffer is NOT limited (0 ms) [ok]: Unauthenticated multibulk limit works in pipeline after AUTH (0 ms) [ok]: default: load from config file, without channel permission default user can't access any channels (0 ms) [ok]: Timedout scripts that modified data can't be killed by SCRIPT KILL (202 ms) [ok]: SHUTDOWN NOSAVE can kill a timedout script anyway (2 ms) [ok]: KEYS with empty DB in cluster mode (1 ms) [ok]: KEYS with empty slot in cluster mode (0 ms) [ok]: MULTI / EXEC with REPLICAOF (101 ms) [ok]: DISCARD should not fail during OOM (1 ms) [ok]: Big Quicklist: SORT BY hash field (424 ms) [ok]: Intset: SORT BY key (0 ms) [ok]: Intset: SORT BY key with limit (0 ms) [ok]: Intset: SORT BY hash field (0 ms) [11/140 done]: unit/keyspace (4 seconds) Testing unit/geo [ok]: BITCOUNT fuzzing with start/end (408 ms) [ok]: BITCOUNT with just start (0 ms) [ok]: BITCOUNT with start, end (1 ms) [ok]: BITCOUNT with illegal arguments (1 ms) [ok]: BITCOUNT against non-integer value (0 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) (0 ms) [ok]: BITOP NOT (known string) (0 ms) [ok]: BITOP where dest and target are the same key (0 ms) [ok]: BITOP AND|OR|XOR don't change the string with single input key (0 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 (0 ms) [ok]: AUTH fails when binary password is wrong (0 ms) [ok]: AUTH succeeds when binary password is correct (0 ms) [ok]: default: load from config file with all channels permissions (0 ms) [ok]: Before the replica connects we issue two EVAL commands (0 ms) [ok]: GEO with wrong type src key (1 ms) [ok]: GEO with non existing src key (0 ms) [ok]: GEO BYLONLAT with empty search (0 ms) [ok]: GEO BYMEMBER with non existing member (1 ms) [ok]: GEOADD create (0 ms) [ok]: GEOADD update (0 ms) [ok]: GEOADD update with CH option (1 ms) [ok]: GEOADD update with NX option (0 ms) [ok]: GEOADD update with XX option (0 ms) [ok]: GEOADD update with CH NX option (1 ms) [ok]: GEOADD update with CH XX option (0 ms) [ok]: GEOADD update with XX NX option will return syntax error (0 ms) [ok]: GEOADD update with invalid option (0 ms) [ok]: GEOADD invalid coordinates (1 ms) [ok]: GEOADD multi add (0 ms) [ok]: Check geoset values (0 ms) [ok]: GEORADIUS simple (sorted) (0 ms) [ok]: GEORADIUS_RO simple (sorted) (0 ms) [ok]: GEOSEARCH simple (sorted) (0 ms) [ok]: GEOSEARCH FROMLONLAT and FROMMEMBER cannot exist at the same time (0 ms) [ok]: GEOSEARCH FROMLONLAT and FROMMEMBER one must exist (1 ms) [ok]: GEOSEARCH BYRADIUS and BYBOX cannot exist at the same time (0 ms) [ok]: GEOSEARCH BYRADIUS and BYBOX one must exist (0 ms) [ok]: GEOSEARCH with STOREDIST option (0 ms) [ok]: GEORADIUS withdist (sorted) (0 ms) [ok]: GEOSEARCH withdist (sorted) (0 ms) [ok]: GEORADIUS with COUNT (0 ms) [ok]: GEORADIUS with multiple WITH* tokens (1 ms) [ok]: GEORADIUS with ANY not sorted by default (0 ms) [ok]: GEORADIUS with ANY sorted by ASC (0 ms) [ok]: GEORADIUS with ANY but no COUNT (0 ms) [ok]: GEORADIUS with COUNT but missing integer argument (0 ms) [ok]: GEORADIUS with COUNT DESC (0 ms) [ok]: GEORADIUS HUGE, issue #2767 (1 ms) [ok]: GEORADIUSBYMEMBER simple (sorted) (0 ms) [ok]: GEORADIUSBYMEMBER_RO simple (sorted) (0 ms) [ok]: GEORADIUSBYMEMBER member does not exist (1 ms) [ok]: GEORADIUSBYMEMBER search areas contain satisfied points in oblique direction (0 ms) [ok]: GEORADIUSBYMEMBER crossing pole search (0 ms) [ok]: GEOSEARCH FROMMEMBER member does not exist (0 ms) [ok]: GEOSEARCH FROMMEMBER simple (sorted) (0 ms) [ok]: GEOSEARCH vs GEORADIUS (0 ms) [ok]: GEOSEARCH non square, long and narrow (1 ms) [ok]: GEOSEARCH corner point test (0 ms) [ok]: GEORADIUSBYMEMBER withdist (sorted) (1 ms) [ok]: GEOHASH is able to return geohash strings (0 ms) [ok]: GEOHASH with only key as argument (0 ms) [ok]: GEOPOS simple (1 ms) [ok]: GEOPOS missing element (0 ms) [ok]: GEOPOS with only key as argument (1 ms) [ok]: GEODIST simple & unit (0 ms) [ok]: GEODIST missing elements (1 ms) [ok]: GEORADIUS STORE option: syntax error (0 ms) [ok]: GEOSEARCHSTORE STORE option: syntax error (0 ms) [ok]: GEORANGE STORE option: incompatible options (1 ms) [ok]: GEORANGE STORE option: plain usage (0 ms) [ok]: GEORADIUSBYMEMBER STORE/STOREDIST option: plain usage (0 ms) [ok]: GEOSEARCHSTORE STORE option: plain usage (1 ms) [ok]: GEORANGE STOREDIST option: plain usage (0 ms) [ok]: GEOSEARCHSTORE STOREDIST option: plain usage (0 ms) [ok]: GEORANGE STOREDIST option: COUNT ASC and DESC (0 ms) [ok]: GEOSEARCH the box spans -180° or 180° (1 ms) [ok]: GEOSEARCH with small distance (0 ms) [ok]: GEOSEARCH BYPOLYGON standard operations (2 ms) [ok]: GEOSEARCH BYPOLYGON across hemispheres (2 ms) [ok]: GEOSEARCH BYPOLYGON overlapping edges (1 ms) [ok]: GEOSEARCH with exact zero distances (0 ms) [ok]: Hash table: SORT BY key (9 ms) [ok]: Hash table: SORT BY key with limit (1 ms) [ok]: Hash table: SORT BY hash field (9 ms) [ok]: BITOP and fuzzing (209 ms) [ok]: Test loading an ACL file with duplicate users (2 ms) [ok]: Test loading an ACL file with duplicate default user (2 ms) [ok]: Test loading duplicate users in config on startup (10 ms) [ok]: MULTI and script timeout (403 ms) [ok]: BITOP or fuzzing (149 ms) [ok]: BITOP xor fuzzing (145 ms) [ok]: BITOP NOT fuzzing (27 ms) [ok]: BITOP with integer encoded source objects (1 ms) [ok]: BITOP with non string source key (0 ms) [ok]: BITOP with empty string after non empty string (issue #529) (0 ms) [ok]: BITPOS against wrong type (1 ms) [ok]: BITPOS will illegal arguments (0 ms) [ok]: BITPOS against non-integer value (1 ms) [ok]: BITPOS bit=0 with empty key returns 0 (0 ms) [ok]: BITPOS bit=1 with empty key returns -1 (0 ms) [ok]: BITPOS bit=0 with string less than 1 word works (0 ms) [ok]: BITPOS bit=1 with string less than 1 word works (0 ms) [ok]: BITPOS bit=0 starting at unaligned address (0 ms) [ok]: BITPOS bit=1 starting at unaligned address (0 ms) [ok]: BITPOS bit=0 unaligned+full word+reminder (1 ms) [ok]: BITPOS bit=1 unaligned+full word+reminder (1 ms) [ok]: BITPOS bit=1 returns -1 if string is all 0 bits (3 ms) [ok]: BITPOS bit=0 works with intervals (0 ms) [ok]: BITPOS bit=1 works with intervals (1 ms) [ok]: BITPOS bit=0 changes behavior if end is given (0 ms) [ok]: SETBIT/BITFIELD only increase dirty when the value changed (3 ms) [ok]: WAIT implicitly blocks on client pause since ACKs aren't sent (1103 ms) [ok]: EXPIRES after AOF reload (without rewrite) (2108 ms) [ok]: WAIT replica multiple clients unblock - reuse last result (11 ms) [ok]: ACL from config file and config rewrite (204 ms) [ok]: EXEC and script timeout (402 ms) [ok]: BITPOS bit=1 fuzzy testing using SETBIT (148 ms) [ok]: Connect a replica to the master instance (806 ms) [ok]: FUNCTION - creation is replicated to replica (0 ms) [ok]: FUNCTION - call on replica (0 ms) [ok]: FUNCTION - restore is replicated to replica (1 ms) [ok]: FUNCTION - delete is replicated to replica (0 ms) [ok]: FUNCTION - flush is replicated to replica (1 ms) [ok]: ACL still denies individual renamed commands (0 ms) [ok]: ACL command classes aren't affected by command renaming (1 ms) [ok]: ACL GETUSER provides correct results when commands renamed (2 ms) [ok]: Connect a replica to the master instance (806 ms) [ok]: Replication of script multiple pushes to list with BLPOP (1 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: BITPOS bit=0 fuzzy testing using SETBIT (192 ms) [ok]: Test ACL LOAD works on primary (2 ms) [ok]: BITPOS/BITCOUNT fuzzy testing using SETBIT (165 ms) [ok]: MULTI-EXEC body and script timeout (402 ms) [12/141 done]: unit/bitops (1 seconds) Testing unit/maxmemory [ok]: Client output buffer soft limit is enforced if time is overreached (3387 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: false (40 ms) [ok]: PIPELINING stresser (also a regression for the old epoll bug) (784 ms) [ok]: APPEND basics (0 ms) [ok]: APPEND basics, integer encoded values (0 ms) [ok]: just EXEC and script timeout (403 ms) [ok]: exec with write commands and state change (1 ms) [ok]: exec with read commands and stale replica state change (6 ms) [ok]: EXEC with only read commands should not be rejected when OOM (0 ms) [ok]: EXEC with at least one use-memory command should fail (0 ms) [ok]: Blocking commands ignores the timeout (1 ms) [ok]: APPEND fuzzing (186 ms) [ok]: FLUSHDB (0 ms) [ok]: Perform a final SAVE to leave a clean DB on disk (2 ms) [ok]: RESET clears client state (0 ms) [ok]: MULTI propagation of PUBLISH (92 ms) [ok]: RESET clears MONITOR state (1 ms) [ok]: RESET clears and discards MULTI state (0 ms) [ok]: RESET clears Pub/Sub state (1 ms) [ok]: RESET clears authenticated state (0 ms) [ok]: Subcommand syntax error crash (issue #10070) (1 ms) [ok]: Extended Redis Compatibility config (3 ms) [ok]: Setup a new replica (914 ms) [ok]: MULTI propagation of SCRIPT LOAD (101 ms) [ok]: Disconnecting the replica from master instance (1008 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 (2 ms) [ok]: FUNCTION - delete on read only replica (0 ms) [ok]: FUNCTION - function effect is replicated to replica (0 ms) [ok]: FUNCTION - modify key space of read only replica (1 ms) [ok]: MULTI propagation of EVAL (100 ms) [ok]: MULTI propagation of SCRIPT FLUSH (101 ms) [ok]: MULTI propagation of XREADGROUP (101 ms) [ok]: MULTI with SAVE (1 ms) [ok]: MULTI with SHUTDOWN (0 ms) [ok]: primaryauth test with binary password dualchannel = yes (1914 ms) [ok]: Test ACL LOAD works on replica (906 ms) [ok]: Don't rehash if server has child process (328 ms) [ok]: Big Hash table: SORT BY key (423 ms) [ok]: Big Hash table: SORT BY key with limit (13 ms) [ok]: MULTI with BGREWRITEAOF (204 ms) [ok]: query buffer resized correctly with fat argv (2942 ms) [13/141 done]: unit/querybuf (6 seconds) Testing unit/bitfield [14/141 done]: unit/acl (4 seconds) Testing unit/pause [ok]: Process title set as expected (1 ms) [ok]: TOUCH alters the last access time of a key (3003 ms) [ok]: AUTH fails when binary password is wrong (0 ms) [ok]: AUTH succeeds when binary password is correct (1 ms) [ok]: BITFIELD signed SET and GET basics (1 ms) [ok]: BITFIELD unsigned SET and GET basics (0 ms) [ok]: BITFIELD signed SET and GET together (0 ms) [ok]: BITFIELD unsigned with SET, GET and INCRBY arguments (0 ms) [ok]: BITFIELD with only key as argument (1 ms) [ok]: BITFIELD # form (0 ms) [ok]: BITFIELD basic INCRBY form (0 ms) [ok]: BITFIELD chaining of multiple commands (1 ms) [ok]: BITFIELD unsigned overflow wrap (0 ms) [ok]: BITFIELD unsigned overflow sat (0 ms) [ok]: BITFIELD signed overflow wrap (0 ms) [ok]: BITFIELD signed overflow sat (0 ms) [ok]: MULTI with config set appendonly (204 ms) [ok]: MULTI with config error (0 ms) [ok]: Flushall while watching several keys by one client (1 ms) [ok]: MULTI is rejected when CLIENT REPLY is ON/OFF/SKIP (0 ms) [ok]: CLIENT REPLY OFF/SKIP: multi command (83 ms) [ok]: AUTH errored inside MULTI will add the reply (0 ms) [ok]: BITFIELD overflow detection fuzzing (168 ms) [ok]: Big Hash table: SORT BY hash field (427 ms) [ok]: SORT GET # (0 ms) [ok]: SORT GET (1 ms) [ok]: SORT_RO GET (0 ms) [ok]: SORT GET (key and hash) with sanity check (2 ms) [ok]: SORT BY key STORE (1 ms) [ok]: SORT BY hash field STORE (0 ms) [ok]: SORT extracts STORE correctly (1 ms) [ok]: SORT_RO get keys (0 ms) [ok]: SORT extracts multiple STORE correctly (0 ms) [ok]: SORT DESC (0 ms) [ok]: SORT ALPHA against integer encoded strings (1 ms) [ok]: SORT sorted set (0 ms) [ok]: SORT sorted set BY nosort should retain ordering (1 ms) [ok]: SORT sorted set BY nosort + LIMIT (1 ms) [ok]: SORT sorted set BY nosort works as expected from scripts (0 ms) [ok]: SORT sorted set: +inf and -inf handling (0 ms) [ok]: SORT regression for issue #19, sorting floats (1 ms) [ok]: SORT with STORE returns zero if result is empty (github issue 224) (0 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 (0 ms) [ok]: SORT will complain with numerical sorting and bad doubles (1) (1 ms) [ok]: SORT will complain with numerical sorting and bad doubles (2) (0 ms) [ok]: SORT BY sub-sorts lexicographically if score is the same (0 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 (0 ms) [ok]: SORT by nosort plus store retains native order for lists (0 ms) [ok]: SORT by nosort with limit returns based on original list order (1 ms) [ok]: SORT_RO - Successful case (0 ms) [ok]: SORT_RO - Cannot run with STORE arg (0 ms) [ok]: SORT speed, 100 element list BY key, 100 times (19 ms) [ok]: MULTI with FLUSHALL and AOF (2 ms) [ok]: SORT speed, 100 element list BY hash field, 100 times (22 ms) [ok]: SORT speed, 100 element list directly, 100 times (13 ms) [ok]: SORT speed, 100 element list BY , 100 times (11 ms) [ok]: SETRANGE with huge offset (2 ms) [ok]: WAIT in script will work (1012 ms) [ok]: SORT STORE quicklist with the right options (54 ms) [ok]: BITFIELD overflow wrap fuzzing (222 ms) [ok]: BITFIELD regression for #3221 (0 ms) [ok]: BITFIELD regression for #3564 (1 ms) [ok]: BITFIELD_RO with only key as argument (0 ms) [ok]: BITFIELD_RO fails when write option is used (1 ms) [ok]: {standalone} SCAN regression test for issue #4906 (5716 ms) [ok]: Connect a replica to the master instance (807 ms) [ok]: Redis.replicate_commands() can be issued anywhere now (0 ms) [ok]: Redis.set_repl() can be issued before replicate_commands() now (0 ms) [ok]: Redis.set_repl() don't accept invalid values (1 ms) [ok]: Test selective replication of certain commands from Lua (1 ms) [ok]: PRNG is seeded randomly for command replication (1 ms) [ok]: Using side effects is not a problem with command replication (0 ms) [ok]: {standalone} SCAN MATCH pattern implies cluster slot (17 ms) [ok]: WAITAOF local copy before fsync (93 ms) [ok]: WAITAOF local copy everysec (0 ms) [ok]: WAITAOF local copy with appendfsync always (2 ms) [ok]: WAITAOF local wait and then stop aof (2 ms) [ok]: WAITAOF local on server with aof disabled (0 ms) [ok]: FUNCTION can processes create, delete and flush commands in AOF when doing "debug loadaof" in read-only slaves (321 ms) [ok]: LIBRARIES - test shared function can access default globals (4 ms) [ok]: LIBRARIES - usage and code sharing (0 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 (1 ms) [ok]: LIBRARIES - test registration with to many arguments (0 ms) [ok]: LIBRARIES - test registration with no string name (0 ms) [ok]: LIBRARIES - test registration with wrong name format (0 ms) [ok]: LIBRARIES - test registration with empty name (0 ms) [ok]: LIBRARIES - math.random from function load (0 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 (0 ms) [ok]: LIBRARIES - redis.acl_check_cmd from function load (0 ms) [ok]: LIBRARIES - malicious access test (1 ms) [ok]: LIBRARIES - delete removed all functions on library (0 ms) [ok]: LIBRARIES - register function inside a function (0 ms) [ok]: LIBRARIES - register library with no functions (1 ms) [ok]: WAITAOF local if AOFRW was postponed (298 ms) [ok]: WAITAOF on demoted master gets unblocked with an error (1 ms) [ok]: LIBRARIES - load timeout (502 ms) [ok]: LIBRARIES - verify global protection on the load run (0 ms) [ok]: LIBRARIES - named arguments (0 ms) [ok]: LIBRARIES - named arguments, bad function name (1 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 (1 ms) [ok]: FUNCTION - test function list with code (1 ms) [ok]: FUNCTION - test function list with pattern (0 ms) [ok]: FUNCTION - test function list wrong argument (0 ms) [ok]: FUNCTION - test function list with bad argument to library name (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 (1 ms) [ok]: FUNCTION - verify allow-omm allows running any command (0 ms) [ok]: BITFIELD: setup slave (905 ms) [ok]: BITFIELD: write on master, read on slave (1 ms) [ok]: BITFIELD_RO with only key as argument on read-only replica (0 ms) [ok]: BITFIELD_RO fails when write option is used on read-only replica (0 ms) [ok]: FUNCTION - wrong flags type named arguments (0 ms) [ok]: FUNCTION - wrong flag type (0 ms) [ok]: FUNCTION - unknown flag (0 ms) [ok]: FUNCTION - write script on fcall_ro (0 ms) [ok]: FUNCTION - write script with no-writes flag (0 ms) [ok]: FUNCTION - deny oom (0 ms) [ok]: FUNCTION - deny oom on no-writes function (1 ms) [ok]: FUNCTION - allow stale (1 ms) [ok]: FUNCTION - valkey version api (0 ms) [ok]: FUNCTION - function stats (1 ms) [ok]: FUNCTION - function stats reloaded correctly from rdb (2 ms) [ok]: FUNCTION - function stats delete library (0 ms) [ok]: FUNCTION - test function stats on loading failure (0 ms) [ok]: FUNCTION - function stats cleaned after flush (0 ms) [ok]: FUNCTION - function test empty engine (0 ms) [ok]: FUNCTION - function test unknown metadata value (0 ms) [ok]: FUNCTION - function test no name (0 ms) [ok]: FUNCTION - function test multiple names (1 ms) [ok]: FUNCTION - function test name with quotes (0 ms) [ok]: FUNCTION - trick global protection 1 (0 ms) [ok]: FUNCTION - test getmetatable on script load (1 ms) [15/141 done]: unit/functions (8 seconds) Testing unit/lazyfree [16/141 done]: unit/bitfield (1 seconds) Testing unit/limits [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 (1 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 (0 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (0 ms) [ok]: test RESP2/3 malformed big number protocol parsing (0 ms) [ok]: test RESP2/3 map protocol parsing (1 ms) [ok]: test RESP2/3 set protocol parsing (0 ms) [ok]: test RESP2/3 double protocol parsing (0 ms) [ok]: test RESP2/3 null protocol parsing (0 ms) [ok]: test RESP2/3 verbatim protocol parsing (0 ms) [ok]: test RESP2/3 true protocol parsing (0 ms) [ok]: test RESP2/3 false protocol parsing (0 ms) [ok]: test RESP3/2 big number protocol parsing (0 ms) [ok]: test RESP3/2 malformed big number protocol parsing (0 ms) [ok]: test RESP3/2 map protocol parsing (0 ms) [ok]: test RESP3/2 set protocol parsing (1 ms) [ok]: test RESP3/2 double protocol parsing (0 ms) [ok]: test RESP3/2 null protocol parsing (0 ms) [ok]: test RESP3/2 verbatim protocol parsing (0 ms) [ok]: test RESP3/2 true protocol parsing (0 ms) [ok]: test RESP3/2 false protocol parsing (0 ms) [ok]: test RESP3/3 big number protocol parsing (0 ms) [ok]: test RESP3/3 malformed big number protocol parsing (0 ms) [ok]: test RESP3/3 map protocol parsing (0 ms) [ok]: test RESP3/3 set protocol parsing (0 ms) [ok]: test RESP3/3 double protocol parsing (0 ms) [ok]: test RESP3/3 null protocol parsing (1 ms) [ok]: test RESP3/3 verbatim protocol parsing (0 ms) [ok]: test RESP3/3 true protocol parsing (0 ms) [ok]: test RESP3/3 false protocol parsing (0 ms) [ok]: test resp3 attribute protocol parsing (1 ms) [ok]: Script block the time during execution (10 ms) [ok]: Script delete the expired key (3 ms) [ok]: TIME command using cached time (10 ms) [ok]: Script block the time in some expiration related commands (82 ms) [ok]: RESTORE expired keys with expiration time (10 ms) [ok]: primaryauth test with binary password dualchannel = no (1915 ms) [ok]: Test check paused info in info clients (2099 ms) [ok]: Test read commands are not blocked by client pause (1 ms) [ok]: WAITAOF replica copy before fsync (78 ms) [ok]: eviction due to input buffer of a dead client, client eviction: false (3255 ms) [ok]: UNLINK can reclaim memory in background (250 ms) [17/141 done]: unit/auth (5 seconds) Testing unit/slowlog [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 server (0 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua true boolean -> Redis protocol type conversion (1 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 (0 ms) [ok]: EVAL - Are the KEYS and ARGV arrays populated correctly? (0 ms) [ok]: EVAL - is Lua able to call Redis API? (0 ms) [ok]: EVAL - Redis integer -> Lua type conversion (1 ms) [ok]: EVAL - Lua number -> Redis integer conversion (0 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (0 ms) [ok]: EVAL - Redis multi bulk -> Lua type conversion (1 ms) [ok]: EVAL - Redis status reply -> Lua type conversion (0 ms) [ok]: EVAL - Redis error reply -> Lua type conversion (0 ms) [ok]: EVAL - Redis nil bulk reply -> Lua type conversion (1 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]: EVAL - Scripts do not block on blpop command (1 ms) [ok]: EVAL - Scripts do not block on brpop command (0 ms) [ok]: EVAL - Scripts do not block on brpoplpush command (0 ms) [ok]: EVAL - Scripts do not block on blmove command (1 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (0 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (0 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (0 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 (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) [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) [ok]: SLOWLOG - check that it starts with an empty log (0 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (179 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (0 ms) [ok]: EVAL - Numerical sanity check from bitop (1 ms) [ok]: EVAL - Verify minimal bitop functionality (1 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]: redis.sha1hex() implementation (0 ms) [ok]: FLUSHDB ASYNC can reclaim memory in background (250 ms) [ok]: Regression test for multi-exec with RANDOMKEY accessing the wrong per-slot dictionary (0 ms) [ok]: Test old pause-all takes precedence over new pause-write (less restrictive) (349 ms) [ok]: sort by in cluster mode (0 ms) [ok]: sort get in cluster mode (1 ms) [ok]: sort_ro by in cluster mode (0 ms) [ok]: sort_ro get in cluster mode (0 ms) [ok]: lazy free a stream with all types of metadata (63 ms) [ok]: lazy free a stream with deleted cgroup (1 ms) [ok]: SLOWLOG - only logs commands taking more time than specified (201 ms) [ok]: SLOWLOG - zero max length is correctly handled (5 ms) [18/141 done]: unit/multi (7 seconds) Testing unit/dump [ok]: SLOWLOG - max entries is correctly handled (4 ms) [ok]: SLOWLOG - GET optional argument to limit output len works (1 ms) [ok]: SLOWLOG - RESET subcommand works (0 ms) [19/141 done]: unit/lazyfree (1 seconds) Testing unit/info [ok]: Test new pause time is smaller than old one, then old time preserved (101 ms) [20/141 done]: unit/sort (7 seconds) Testing unit/expire [ok]: Test write commands are paused by RO (1 ms) [ok]: Test special commands are paused by RO (1 ms) [ok]: Test read/admin multi-execs are not blocked by pause RO (1 ms) [ok]: Test write multi-execs are blocked by pause RO (1 ms) [ok]: Test scripts are blocked by pause RO (1 ms) [ok]: Test RO scripts are not blocked by pause RO (1 ms) [ok]: Test read-only scripts in multi-exec are not blocked by pause RO (1 ms) [ok]: Test write scripts in multi-exec are blocked by pause RO (1 ms) [ok]: Test may-replicate commands are rejected in RO scripts (0 ms) [ok]: Test multiple clients can be queued up and unblocked (1 ms) [ok]: Test clients with syntax errors will get responses immediately (0 ms) [ok]: Test eviction is skipped during client pause (1 ms) [ok]: DUMP / RESTORE are able to serialize / unserialize a simple key (0 ms) [ok]: RESTORE can set an arbitrary expire to the materialized key (1 ms) [ok]: RESTORE can set an expire that overflows a 32 bit integer (0 ms) [ok]: RESTORE can set an absolute expire (1 ms) [ok]: RESTORE with ABSTTL in the past (0 ms) [ok]: RESTORE can set LRU (1 ms) [ok]: RESTORE can set LFU (0 ms) [ok]: RESTORE returns an error of the key already exists (1 ms) [ok]: RESTORE can overwrite an existing key with REPLACE (0 ms) [ok]: RESTORE can detect a syntax error for unrecognized options (0 ms) [ok]: Test both active and passive expires are skipped during client pause (102 ms) [ok]: Test that client pause starts at the end of a transaction (1 ms) [ok]: EXPIRE - set timeouts multiple times (0 ms) [ok]: EXPIRE - It should be still possible to read 'x' (0 ms) [ok]: SLOWLOG - logged entry sanity check (201 ms) [ok]: SLOWLOG - Certain commands are omitted that contain sensitive information (1 ms) [ok]: SLOWLOG - Some commands can redact sensitive fields (0 ms) [ok]: SLOWLOG - Rewritten commands are logged as their original command (3 ms) [ok]: RESTORE should not store key that are already expired, with REPLACE will propagate it as DEL or UNLINK (90 ms) [ok]: RESTORE key with future RDB version, strict version check (0 ms) [ok]: RESTORE key with future RDB version, relaxed version check (1 ms) [ok]: DUMP of non existing key returns nil (0 ms) [ok]: SLOWLOG - commands with too many arguments are trimmed (1 ms) [ok]: SLOWLOG - too long arguments are trimmed (0 ms) [ok]: latencystats: disable/enable (1 ms) [ok]: latencystats: configure percentiles (1 ms) [ok]: {cluster} SCAN basic (53 ms) [ok]: latencystats: bad configure percentiles (2 ms) [ok]: latencystats: blocking commands (2 ms) [ok]: latencystats: subcommands (1 ms) [ok]: latencystats: measure latency (51 ms) [ok]: errorstats: failed call authentication error (2 ms) [ok]: errorstats: failed call within MULTI/EXEC (2 ms) [ok]: {cluster} SCAN COUNT (59 ms) [ok]: errorstats: failed call within LUA (2 ms) [ok]: errorstats: failed call NOSCRIPT error (1 ms) [ok]: errorstats: failed call NOGROUP error (1 ms) [ok]: errorstats: rejected call unknown command (1 ms) [ok]: errorstats: rejected call within MULTI/EXEC (2 ms) [ok]: Check if maxclients works refusing connections (904 ms) [ok]: errorstats: rejected call due to wrong arity (1 ms) [ok]: errorstats: rejected call by OOM error (1 ms) [ok]: errorstats: rejected call by authorization error (2 ms) [ok]: errorstats: blocking commands (1 ms) [ok]: {cluster} SCAN MATCH (49 ms) [ok]: SLOWLOG - EXEC is not logged, just executed commands (201 ms) [21/141 done]: unit/limits (2 seconds) Testing unit/shutdown [ok]: MIGRATE is caching connections (215 ms) [ok]: errorstats: limit errors will not increase indefinitely (98 ms) [ok]: {cluster} SCAN TYPE (72 ms) [ok]: TOUCH alters the last access time of a key in no-touch mode (3002 ms) [ok]: {cluster} SCAN unknown type (43 ms) [ok]: eviction due to output buffers of pubsub, client eviction: false (844 ms) [ok]: WAITAOF replica copy everysec (918 ms) [ok]: {cluster} SCAN with expired keys (55 ms) [ok]: stats: eventloop metrics (111 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: true (58 ms) [ok]: {cluster} SCAN with expired keys with TYPE filter (56 ms) [ok]: {cluster} SSCAN with encoding intset (1 ms) [ok]: {cluster} SSCAN with encoding listpack (3 ms) [ok]: {cluster} SSCAN with encoding hashtable (3 ms) [ok]: {cluster} HSCAN with encoding listpack (1 ms) [ok]: SLOWLOG - can clean older entries (201 ms) [ok]: Temp rdb will be deleted if we use bg_unlink when shutdown (112 ms) [ok]: {cluster} HSCAN with encoding hashtable (71 ms) [ok]: {cluster} ZSCAN with encoding listpack (1 ms) [ok]: {cluster} ZSCAN with encoding skiplist (71 ms) [ok]: {cluster} SCAN guarantees check under write load (14 ms) [ok]: {cluster} SSCAN with integer encoded object (issue #1345) (1 ms) [ok]: {cluster} SSCAN with PATTERN (0 ms) [ok]: {cluster} HSCAN with PATTERN (0 ms) [ok]: {cluster} HSCAN with NOVALUES (1 ms) [ok]: {cluster} ZSCAN with PATTERN (0 ms) [ok]: {cluster} ZSCAN with NOSCORES (0 ms) [ok]: SHUTDOWN ABORT can cancel SIGTERM (12 ms) [ok]: Temp rdb will be deleted in signal handle (83 ms) [ok]: Measures elapsed time os.clock() (1003 ms) [ok]: Prohibit dangerous lua methods in sandbox (1 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (2 ms) [ok]: Globals protection reading an undeclared global variable (0 ms) [ok]: Globals protection setting an undeclared global* (0 ms) [ok]: lua bit.tohex bug (0 ms) [ok]: Test an example script DECR_IF_GT (1 ms) [ok]: RDB save will be failed in shutdown (2 ms) [ok]: SLOWLOG - can be disabled (401 ms) [ok]: SLOWLOG - count must be >= -1 (0 ms) [ok]: SLOWLOG - get all slow logs (1 ms) [ok]: SLOWLOG - blocking command is reported only after unblocked (1 ms) [ok]: SLOWLOG - the commands in script are recorded normally - is_eval: 0 (1 ms) [ok]: SLOWLOG - the commands in script are recorded normally - is_eval: 1 (0 ms) [ok]: SHUTDOWN will abort if rdb save failed on signal (97 ms) [ok]: SHUTDOWN will abort if rdb save failed on shutdown command (1 ms) [ok]: SHUTDOWN can proceed if shutdown command was with nosave (2 ms) [ok]: Clean up rdb same named folder (0 ms) [22/141 done]: unit/slowlog (1 seconds) Testing unit/quit [ok]: Test when replica paused, offset would not grow (3 ms) [ok]: Test replica offset would grow after unpause (0 ms) [ok]: {cluster} ZSCAN scores: regression test for issue #2175 (452 ms) [ok]: QUIT returns OK (1 ms) [ok]: Pipelined commands after QUIT must not be executed (1 ms) [ok]: Pipelined commands after QUIT that exceed read buffer size (0 ms) [ok]: Test the randomkey command will not cause the server to get into an infinite loop during the client pause write (5 ms) [ok]: CLIENT UNBLOCK is not allow to unblock client blocked by CLIENT PAUSE (2 ms) [ok]: Server can trigger resizing (1732 ms) [ok]: SHUTDOWN SIGTERM will abort if there's an initial AOFRW - default (99 ms) [23/141 done]: unit/quit (1 seconds) Testing unit/hashexpire [ok]: Client output buffer soft limit is not enforced too early and is enforced when no traffic (5031 ms) [24/141 done]: unit/shutdown (1 seconds) Testing unit/acl-v2 [ok]: HGETEX EX expiry (1 ms) [ok]: HGETEX EX with mix of existing and non-existing fields (0 ms) [ok]: HGETEX EX on more then 1 field (0 ms) [ok]: HGETEX EX -> PERSIST (1 ms) [ok]: HGETEX EX on non-exist field (0 ms) [ok]: HGETEX EX on non-exist key (0 ms) [ok]: HGETEX EX with duplicate field names (0 ms) [ok]: HGETEX EX overwrites existing field TTL with bigger value (1 ms) [ok]: HGETEX EX overwrites existing field TTL with smaller value (0 ms) [ok]: HGETEX PX expiry (0 ms) [ok]: HGETEX PX with mix of existing and non-existing fields (1 ms) [ok]: HGETEX PX on more then 1 field (0 ms) [ok]: HGETEX PX -> PERSIST (1 ms) [ok]: HGETEX PX on non-exist field (0 ms) [ok]: HGETEX PX on non-exist key (0 ms) [ok]: HGETEX PX with duplicate field names (0 ms) [ok]: HGETEX PX overwrites existing field TTL with bigger value (1 ms) [ok]: HGETEX PX overwrites existing field TTL with smaller value (0 ms) [ok]: HGETEX EXAT expiry (0 ms) [ok]: HGETEX EXAT with mix of existing and non-existing fields (1 ms) [ok]: HGETEX EXAT on more then 1 field (0 ms) [ok]: HGETEX EXAT -> PERSIST (1 ms) [ok]: HGETEX EXAT on non-exist field (0 ms) [ok]: HGETEX EXAT on non-exist key (0 ms) [ok]: HGETEX EXAT with duplicate field names (0 ms) [ok]: HGETEX EXAT overwrites existing field TTL with bigger value (1 ms) [ok]: HGETEX EXAT overwrites existing field TTL with smaller value (0 ms) [ok]: HGETEX PXAT expiry (0 ms) [ok]: HGETEX PXAT with mix of existing and non-existing fields (1 ms) [ok]: HGETEX PXAT on more then 1 field (0 ms) [ok]: HGETEX PXAT -> PERSIST (1 ms) [ok]: HGETEX PXAT on non-exist field (0 ms) [ok]: HGETEX PXAT on non-exist key (0 ms) [ok]: HGETEX PXAT with duplicate field names (0 ms) [ok]: HGETEX PXAT overwrites existing field TTL with bigger value (1 ms) [ok]: HGETEX PXAT overwrites existing field TTL with smaller value (0 ms) [ok]: HGETEX EX overwrites existing field TTL with bigger value (0 ms) [ok]: HGETEX EX overwrites existing field TTL with smaller value (0 ms) [ok]: HGETEX PX overwrites existing field TTL with bigger value (0 ms) [ok]: HGETEX PX overwrites existing field TTL with smaller value (1 ms) [ok]: HGETEX EXAT overwrites existing field TTL with bigger value (0 ms) [ok]: HGETEX EXAT overwrites existing field TTL with smaller value (0 ms) [ok]: HGETEX PXAT overwrites existing field TTL with bigger value (1 ms) [ok]: HGETEX PXAT overwrites existing field TTL with smaller value (0 ms) [ok]: HGETEX - verify no change when field does not exist (0 ms) [ok]: HGETEX EX- multiple options used (EX + PX) (1 ms) [ok]: HGETEX EXAT- multiple options used (EXAT + PXAT) (0 ms) [ok]: HGETEX EX- missing TTL value (0 ms) [ok]: HGETEX EX- negative TTL (0 ms) [ok]: HGETEX EX- non-integer TTL (1 ms) [ok]: HGETEX EX- missing FIELDS keyword (0 ms) [ok]: HGETEX EX- wrong numfields count (too few fields) (0 ms) [ok]: HGETEX EX- wrong numfields count (too many fields) (0 ms) [ok]: HGETEX EX- key is wrong type (string instead of hash) (1 ms) [ok]: HGETEX EX with FIELDS 0 (0 ms) [ok]: HGETEX EX with negative numfields (0 ms) [ok]: HGETEX EX with missing key (0 ms) [ok]: HGETEX PX- missing TTL value (0 ms) [ok]: HGETEX PX- negative TTL (1 ms) [ok]: HGETEX PX- non-integer TTL (0 ms) [ok]: HGETEX PX- missing FIELDS keyword (0 ms) [ok]: HGETEX PX- wrong numfields count (too few fields) (0 ms) [ok]: HGETEX PX- wrong numfields count (too many fields) (0 ms) [ok]: HGETEX PX- key is wrong type (string instead of hash) (0 ms) [ok]: HGETEX PX with FIELDS 0 (0 ms) [ok]: HGETEX PX with negative numfields (0 ms) [ok]: HGETEX PX with missing key (0 ms) [ok]: HGETEX EXAT- missing TTL value (0 ms) [ok]: HGETEX EXAT- negative TTL (1 ms) [ok]: HGETEX EXAT- non-integer TTL (0 ms) [ok]: HGETEX EXAT- missing FIELDS keyword (0 ms) [ok]: HGETEX EXAT- wrong numfields count (too few fields) (0 ms) [ok]: HGETEX EXAT- wrong numfields count (too many fields) (1 ms) [ok]: HGETEX EXAT- key is wrong type (string instead of hash) (0 ms) [ok]: HGETEX EXAT with FIELDS 0 (0 ms) [ok]: HGETEX EXAT with negative numfields (0 ms) [ok]: HGETEX EXAT with missing key (0 ms) [ok]: HGETEX PXAT- missing TTL value (0 ms) [ok]: HGETEX PXAT- negative TTL (0 ms) [ok]: HGETEX PXAT- non-integer TTL (0 ms) [ok]: HGETEX PXAT- missing FIELDS keyword (0 ms) [ok]: HGETEX PXAT- wrong numfields count (too few fields) (0 ms) [ok]: HGETEX PXAT- wrong numfields count (too many fields) (1 ms) [ok]: HGETEX PXAT- key is wrong type (string instead of hash) (0 ms) [ok]: HGETEX PXAT with FIELDS 0 (0 ms) [ok]: HGETEX PXAT with negative numfields (0 ms) [ok]: HGETEX PXAT with missing key (0 ms) [ok]: WAITAOF replica copy everysec with AOFRW (1004 ms) [ok]: No response for single command if client output buffer hard limit is enforced (116 ms) [ok]: Test basic multiple selectors (1 ms) [ok]: Test ACL selectors by default have no permissions (1 ms) [ok]: Test deleting selectors (0 ms) [ok]: Test selector syntax error reports the error in the selector context (1 ms) [ok]: Test flexible selector definition (2 ms) [ok]: Test separate read permission (0 ms) [ok]: Test separate write permission (1 ms) [ok]: Test separate read and write permissions (0 ms) [ok]: Validate read and write permissions format (1 ms) [ok]: Validate key permissions format - empty and omitted pattern (1 ms) [ok]: Test separate read and write permissions on different selectors are not additive (1 ms) [ok]: Test SET with separate read permission (1 ms) [ok]: Test SET with separate write permission (1 ms) [ok]: Test SET with read and write permissions (0 ms) [ok]: Test BITFIELD with separate read permission (0 ms) [ok]: Test BITFIELD with separate write permission (1 ms) [ok]: Test BITFIELD with read and write permissions (1 ms) [ok]: Test ACL log correctly identifies the relevant item when selectors are used (1 ms) [ok]: Test ACL GETUSER response information (1 ms) [ok]: Test ACL list idempotency (0 ms) [ok]: Test R+W is the same as all permissions (0 ms) [ok]: Test basic dry run functionality (1 ms) [ok]: Test various commands for command permissions (0 ms) [ok]: Test various odd commands for key permissions (2 ms) [ok]: Existence test commands are not marked as access (1 ms) [ok]: Intersection cardinaltiy commands are access commands (1 ms) [ok]: Test general keyspace commands require some type of permission to execute (1 ms) [ok]: Cardinality commands require some type of permission to execute (1 ms) [ok]: Test sharded channel permissions (1 ms) [ok]: Test sort with ACL permissions (1 ms) [ok]: Operations in no-touch mode do not alter the last access time of a key (1101 ms) [ok]: Test DRYRUN with wrong number of arguments (1 ms) [ok]: TOUCH returns the number of existing keys specified (1 ms) [ok]: command stats for GEOADD (1 ms) [ok]: errors stats for GEOADD (1 ms) [ok]: command stats for EXPIRE (1 ms) [ok]: command stats for BRPOP (1 ms) [ok]: command stats for MULTI (2 ms) [ok]: command stats for scripts (1 ms) [ok]: COMMAND COUNT get total number of commands (1 ms) [ok]: COMMAND GETKEYS GET (0 ms) [ok]: COMMAND GETKEYSANDFLAGS (0 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 (0 ms) [ok]: COMMAND GETKEYS LCS (0 ms) [ok]: COMMAND GETKEYS MORE THAN 256 KEYS (2 ms) [ok]: COMMAND LIST syntax error (1 ms) [ok]: COMMAND LIST WITHOUT FILTERBY (3 ms) [ok]: COMMAND LIST FILTERBY ACLCAT against non existing category (0 ms) [ok]: COMMAND LIST FILTERBY ACLCAT - list all commands/subcommands (0 ms) [ok]: COMMAND LIST FILTERBY PATTERN - list all commands/subcommands (1 ms) [ok]: COMMAND LIST FILTERBY MODULE against non existing module (1 ms) [ok]: COMMAND INFO of invalid subcommands (0 ms) [ok]: SET command will not be marked with movablekeys (0 ms) [ok]: GET command will not be marked with movablekeys (1 ms) [ok]: MSET command will not be marked with movablekeys (0 ms) [ok]: BITFIELD command will not be marked with movablekeys (1 ms) [ok]: LMOVE command will not be marked with movablekeys (0 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 (1 ms) [ok]: MEMORY|USAGE command will not be marked with movablekeys (0 ms) [ok]: EVAL does not leak in the Lua stack (687 ms) [ok]: RENAME command will not be marked with movablekeys (1 ms) [ok]: GEORADIUS_RO command will not be marked with movablekeys (0 ms) [ok]: Call Redis command with many args from Lua (issue #1764) (1 ms) [ok]: ZUNIONSTORE command is marked with movablekeys (1 ms) [ok]: Number conversion precision test (issue #1118) (0 ms) [ok]: String containing number precision test (regression of issue #1118) (0 ms) [ok]: XREAD command is marked with movablekeys (0 ms) [ok]: Verify negative arg count is error instead of crash (issue #1842) (0 ms) [ok]: EVAL command is marked with movablekeys (1 ms) [ok]: Scripts can handle commands with incorrect arity (1 ms) [ok]: SORT command is marked with movablekeys (0 ms) [ok]: Correct handling of reused argv (issue #1939) (0 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 (0 ms) [ok]: SORT_RO command is marked with movablekeys (1 ms) [ok]: MIGRATE command is marked with movablekeys (0 ms) [ok]: GEORADIUS command is marked with movablekeys (1 ms) [ok]: Script with RESP3 map (1 ms) [25/141 done]: unit/introspection-2 (11 seconds) Testing unit/client-eviction [ok]: HGETEX EX generates hexpire keyspace notification (1 ms) [ok]: HGETEX EX with multiple fields generates single notification (1 ms) [ok]: HGETEX EX on non-existent field generates no notification (1 ms) [ok]: Script return recursive object (103 ms) [ok]: HGETEX PX generates hexpire keyspace notification (1 ms) [ok]: HGETEX PX with multiple fields generates single notification (1 ms) [ok]: HGETEX PX on non-existent field generates no notification (0 ms) [ok]: HGETEX EXAT generates hexpire keyspace notification (1 ms) [ok]: HGETEX EXAT with multiple fields generates single notification (1 ms) [ok]: HGETEX EXAT on non-existent field generates no notification (1 ms) [ok]: HGETEX PXAT generates hexpire keyspace notification (1 ms) [ok]: HGETEX PXAT with multiple fields generates single notification (0 ms) [ok]: HGETEX PXAT on non-existent field generates no notification (0 ms) [ok]: HGETEX PERSIST generates hpersist keyspace notification (1 ms) [ok]: HGETEX EX 0/past time works correctly with 1 field (3 ms) [ok]: HGETEX PX 0/past time works correctly with 1 field (1 ms) [ok]: HGETEX EXAT 0/past time works correctly with 1 field (2 ms) [ok]: HGETEX PXAT 0/past time works correctly with 1 field (1 ms) [ok]: HSETEX KEEPTTL - preserves existing TTL of field (1 ms) [ok]: HSETEX EX - FIELDS 0 returns error (0 ms) [ok]: HSETEX EX - test negative ttl (0 ms) [ok]: HSETEX EX - test non-numeric ttl (0 ms) [ok]: HSETEX EX - overwrite field resets TTL (1 ms) [ok]: Script check unpack with massive arguments (40 ms) [ok]: Script read key with expiration set (0 ms) [ok]: Script del key with expiration set (0 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 (0 ms) [ok]: Try trick readonly table on valkey table (0 ms) [ok]: Try trick readonly table on json table (1 ms) [ok]: Try trick readonly table on cmsgpack table (0 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (0 ms) [ok]: Test dofile are not available (1 ms) [ok]: Test print are not available (0 ms) [ok]: Test behavior of loading ACLs (1 ms) [ok]: client evicted due to large argv (41 ms) [ignore]: large memory flag not provided [ok]: client evicted due to large query buf (26 ms) [26/141 done]: unit/acl-v2 (0 seconds) Testing unit/introspection [ok]: client evicted due to percentage of maxmemory (9 ms) [ok]: client evicted due to large multi buf (51 ms) [ok]: Server can rewind and trigger smaller slot resizing (654 ms) [ok]: CLUSTER FORGET with invalid node ID (1 ms) [ok]: PING (0 ms) [ok]: CLIENT LIST (1 ms) [ok]: CLIENT LIST with IDs (0 ms) [ok]: CLIENT INFO (0 ms) [ok]: CLIENT LIST with ADDR filter (1 ms) [ok]: CLIENT LIST with LADDR filter (0 ms) [ok]: CLIENT LIST with MAXAGE filter (1 ms) [ok]: CLIENT LIST with TYPE filter (0 ms) [ok]: CLIENT LIST with USER filter (0 ms) [ok]: CLIENT LIST with SKIPME filter (0 ms) [ok]: CLIENT LIST with multiple IDs and TYPE filter (1 ms) [ok]: CLIENT LIST with filters matching no clients (1 ms) [ok]: CLIENT LIST with NAME filter (1 ms) [ok]: CLIENT LIST with FLAGS filter (0 ms) [ok]: CLIENT LIST with TYPE filter (1 ms) [ok]: CLIENT LIST with multiple filters (0 ms) [ok]: Server can resize empty dict (13 ms) [ok]: EXPIRE - After 2.1 seconds the key should no longer be here (2102 ms) [ok]: EXPIRE - write on expire should work (0 ms) [ok]: EXPIREAT - Check for EXPIRE alike behavior (0 ms) [ok]: SETEX - Set + Expire combo operation. Check for TTL (1 ms) [ok]: SETEX - Check value (0 ms) [ok]: SETEX - Overwrite old key (0 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (403 ms) [ok]: client evicted due to watched key list (477 ms) [ok]: test io-threads are runtime modifiable (113 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (83 ms) [ok]: Timedout script does not cause a false dead client (83 ms) [ok]: stats: instantaneous metrics (2003 ms) [ok]: No response for multi commands in pipeline if client output buffer limit is enforced (1043 ms) [ok]: Execute transactions completely even if client output buffer limit is enforced (16 ms) [ok]: Obuf limit, HRANDFIELD with huge count stopped mid-run (19 ms) [ok]: test unixsocket options are set correctly (0 ms) [ok]: stats: debug metrics (112 ms) [ok]: Obuf limit, KEYS stopped mid-run (74 ms) [ok]: Timedout script link is still usable after Lua returns (138 ms) [ok]: stats: client input and output buffer limit disconnections (29 ms) [ok]: clients: pubsub clients (1 ms) [ok]: clients: watching clients (5 ms) [27/141 done]: unit/other (12 seconds) Testing unit/violations [28/142 done]: unit/obuf-limits (12 seconds) Testing unit/latency-monitor [ok]: HSETEX EX - test mix of expiring and persistent fields (1101 ms) [ok]: HSETEX EX - test missing TTL (0 ms) [ok]: HSETEX EX - mismatched field/value count (0 ms) [ok]: HSETEX EX 0/past time works correctly with 1 field (2 ms) [ok]: HSETEX PX 0/past time works correctly with 1 field (1 ms) [ok]: HSETEX EXAT 0/past time works correctly with 1 field (2 ms) [ok]: HSETEX PXAT 0/past time works correctly with 1 field (1 ms) [ok]: HSETEX PX - test negative ttl (0 ms) [ok]: HSETEX PX - test non-numeric ttl (0 ms) [ok]: HSETEX PX - overwrite field resets TTL (1 ms) [ok]: SORT adds integer field to list (0 ms) [ok]: HSETEX PX - test zero ttl expires immediately (10 ms) [ok]: HSETEX PX - test mix of expiring and persistent fields (21 ms) [ok]: HSETEX PX - test missing TTL (0 ms) [ok]: HSETEX PX - mismatched field/value count (0 ms) [ok]: HSETEX EX FNX - set only if none of the fields exist (0 ms) [ok]: HSETEX EX FXX - set only if all fields exist (1 ms) [ok]: HSETEX PX FNX - partial conflict returns 0 (0 ms) [ok]: HSETEX PX FXX - one field missing returns 0 (1 ms) [ok]: HSETEX EX - FNX and FXX conflict error (0 ms) [ok]: HSETEX EX - FXX does not create object in case key does not exist (0 ms) [ok]: HEXPIRE - set TTL on existing field (0 ms) [ok]: HEXPIRE - TTL 0 deletes field (1 ms) [ok]: HEXPIRE - negative TTL returns error (0 ms) [ok]: HEXPIRE - wrong type key returns error (0 ms) [ok]: HEXPIRE NX - only set when field has no TTL (0 ms) [ok]: HEXPIRE XX - only set when field has TTL (1 ms) [ok]: HEXPIRE GT - only set if new TTL > existing TTL (10 ms) [ok]: HEXPIRE LT - only set if new TTL < existing TTL (1 ms) [ok]: LATENCY HISTOGRAM with empty histogram (1 ms) [ok]: LATENCY HISTOGRAM all commands (0 ms) [ok]: LATENCY HISTOGRAM sub commands (1 ms) [ok]: LATENCY HISTOGRAM with a subset of commands (1 ms) [ok]: LATENCY HISTOGRAM command (0 ms) [ok]: LATENCY HISTOGRAM with wrong command name skips the invalid one (1 ms) [29/142 done]: unit/violations (0 seconds) Testing unit/type/list-2 [ok]: memory: database and pubsub overhead and rehashing dict count (3 ms) [ok]: CLIENT LIST with multiple filters (1003 ms) [ok]: CLIENT LIST with IP filter (0 ms) [ok]: Timedout scripts and unblocked command (389 ms) [30/142 done]: unit/info (3 seconds) Testing unit/type/list [ok]: CLIENT LIST with IPv6 filter (1 ms) [ok]: packed node check compression with insert and pop (1 ms) [ok]: packed node check compression combined with trim (1 ms) [ok]: packed node check compression with lset (0 ms) [ok]: CLIENT LIST with CAPA filter (1 ms) [ok]: CLIENT KILL with IP filter (1 ms) [ok]: Timedout scripts that modified data can't be killed by SCRIPT KILL (201 ms) [ok]: SHUTDOWN NOSAVE can kill a timedout script anyway (2 ms) [ok]: CLIENT LIST with IPv6 filter (1 ms) [ok]: SETEX - Wait for the key to expire (1102 ms) [ok]: SETEX - Wrong time parameter (1 ms) [ok]: PERSIST can undo an EXPIRE (0 ms) [ok]: PERSIST returns 0 against non existing or non volatile keys (0 ms) [ok]: HEXPIRE - refresh TTL with new value (501 ms) [ok]: HEXPIRE on a non-existent field (should not create field) (0 ms) [ok]: HEXPIRE - conflicting conditions error (0 ms) [ok]: HEXPIRE - missing FIELDS error (1 ms) [ok]: HEXPIRE - no fields after FIELDS keyword (0 ms) [ok]: HEXPIRE - non-integer TTL error (0 ms) [ok]: HEXPIRE - non-existing key returns -2 (0 ms) [ok]: HEXPIRE EX - set TTL on multiple fields (1 ms) [ok]: HEXPIRE returns -2 on non-existing key (0 ms) [ok]: HEXPIRE - GT condition fails when field has no TTL (0 ms) [ok]: HEXPIRE - LT condition succeeds when field has no TTL (0 ms) [ok]: HSETEX HEXPIRE 0/past time works correctly with 1 field (2 ms) [ok]: HSETEX HPEXPIRE 0/past time works correctly with 1 field (1 ms) [ok]: HSETEX HEXPIREAT 0/past time works correctly with 1 field (1 ms) [ok]: HSETEX HPEXPIREAT 0/past time works correctly with 1 field (1 ms) [ok]: HTTL - persistent field returns -1 (1 ms) [ok]: HTTL - non-existent field returns -2 (0 ms) [ok]: HTTL - non-existent key returns -2 (0 ms) [ok]: HEXPIREAT - set absolute expiry on field (0 ms) [ok]: HEXPIREAT - timestamp in past deletes field immediately (1 ms) [ok]: HEXPIREAT - set TTL on multiple fields (existing + non-existing) (0 ms) [ok]: HEXPIREAT NX - only set when field has no TTL (0 ms) [ok]: HEXPIREAT XX - only set when field has TTL (1 ms) [ok]: HEXPIREAT GT - only set if new expiry > existing (10 ms) [ok]: HEXPIREAT LT - only set if new expiry < existing (0 ms) [ok]: HEXPIREAT - refresh TTL with new future timestamp (1 ms) [ok]: HEXPIREAT - TTL is accurate via HEXPIRETIME (0 ms) [ok]: HEXPIREAT - conflicting options error (0 ms) [ok]: HEXPIREAT - missing FIELDS keyword (1 ms) [ok]: HEXPIREAT - no fields after FIELDS (0 ms) [ok]: HEXPIREAT - non-integer timestamp (0 ms) [ok]: HEXPIREAT - non-existing key returns -2 (0 ms) [ok]: HEXPIRETIME - returns expiry timestamp for single field with TTL (1 ms) [ok]: HEXPIRETIME - field has no TTL returns -1 (0 ms) [ok]: HEXPIRETIME - field does not exist returns -2 (0 ms) [ok]: HEXPIRETIME - key does not exist returns -2 (0 ms) [ok]: HEXPIRETIME - multiple fields mixed cases (0 ms) [ok]: HEXPIRETIME - no FIELDS keyword (0 ms) [ok]: HEXPIRETIME - FIELDS 0 (0 ms) [ok]: HEXPIRETIME - wrong FIELDS count (0 ms) [ok]: HEXPIRETIME - wrong type key (0 ms) [ok]: HPEXPIREAT - set absolute expiry with ms precision (1 ms) [ok]: HPEXPIREAT - past timestamp deletes field immediately (0 ms) [ok]: HPEXPIREAT - non-existent key returns -2 (0 ms) [ok]: HPEXPIREAT - mixed fields (0 ms) [ok]: HPEXPIREAT - GT and LT options with success and failure cases (0 ms) [ok]: HPEXPIREAT - invalid inputs (0 ms) [ok]: HPEXPIRETIME - check with multiple fields (1 ms) [ok]: HPERSIST - field does not exist (0 ms) [ok]: HPERSIST - key does not exist (0 ms) [ok]: HPERSIST - field exists but no expiration (0 ms) [ok]: HPERSIST - field exists with expiration (1 ms) [ok]: HPERSIST - multiple fields with mixed state (0 ms) [ok]: HPERSIST, then HEXPIRE, check new TTL is set (1 ms) [ok]: CLIENT KILL with CAPA filter (0 ms) [ok]: CLIENT KILL with NAME filter (1 ms) [ok]: CLIENT KILL with FLAGS filter (0 ms) [ok]: CLIENT KILL with TYPE filter (0 ms) [ok]: CLIENT KILL with multiple filters (0 ms) [ok]: plain node check compression with insert and pop (289 ms) [ok]: Before the replica connects we issue two EVAL commands (0 ms) [ok]: HRANDFIELD - CASE 1: negative count (105 ms) [ok]: WAITAOF replica copy everysec with slow AOFRW (2012 ms) [ok]: plain node check compression combined with trim (123 ms) [ok]: HRANDFIELD - CASE 2: The number of requested elements is greater than the number of elements inside the hash (104 ms) [ok]: WAITAOF replica copy everysec->always with AOFRW (103 ms) [ok]: WAITAOF replica copy appendfsync always (1 ms) [ok]: HRANDFIELD - CASE 3: The number of elements inside the hash is not greater than 3 times the number of requested elements (105 ms) [ok]: plain node check compression with lset (164 ms) [ok]: HRANDFIELD - CASE 4: The number of elements inside the hash is greater than 3 times the number of requested elements (104 ms) [ok]: RENAME Preserves Field TTLs (1 ms) [ok]: RESTORE Preserves Field TTLs (1 ms) [ok]: COPY Preserves TTLs (1 ms) [ok]: Hash Encoding Transitions with TTL - Add TTL to Existing Fields (1 ms) [ok]: eviction due to input buffer of a dead client, client eviction: true (3261 ms) [ok]: Test LPUSH and LPOP on plain nodes (3 ms) [ok]: Test LINDEX and LINSERT on plain nodes (0 ms) [ok]: Test LTRIM on plain nodes (0 ms) [ok]: Test LREM on plain nodes (1 ms) [ok]: Test LPOS on plain nodes (0 ms) [ok]: Test LMOVE on plain nodes (1 ms) [ok]: Hash Encoding Transitions with TTL - Create New Fields with TTL (104 ms) [ok]: HGETALL skips expired fields (10 ms) [ok]: HSCAN skips expired fields (11 ms) [ok]: MOVE preserves field TTLs (0 ms) [ok]: HSET - overwrite expired field without TTL clears expiration (101 ms) [ok]: Test LSET with packed / plain combinations (168 ms) [ok]: Test LSET with packed is split in the middle (1 ms) [ok]: HINCRBY - on expired field (101 ms) [ok]: Test LSET with packed consist only one item (167 ms) [ok]: HINCRBYFLOAT - on expired field (102 ms) [ok]: Crash due to delete entry from a compress quicklist node (1 ms) [ok]: HSET - overwrite unexpired field removes TTL (0 ms) [ok]: Crash due to split quicklist node wrongly (1 ms) [ok]: Test LPUSH and LPOP on plain nodes (3 ms) [ok]: Test LINDEX and LINSERT on plain nodes (0 ms) [ok]: Test LTRIM on plain nodes (1 ms) [ok]: Test LREM on plain nodes (1 ms) [ok]: Test LPOS on plain nodes (0 ms) [ok]: Test LMOVE on plain nodes (1 ms) [ok]: HDEL - expired field is removed without triggering expiry logic (21 ms) [ok]: HDEL on field with TTL, then re-add and check TTL is gone (0 ms) [ok]: Connect a replica to the master instance (804 ms) [ok]: Replication of script multiple pushes to list with BLPOP (1 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: expired_fields metric increments by one when single hash field expires (101 ms) [ok]: Test LSET with packed / plain combinations (167 ms) [ok]: Test LSET with packed is split in the middle (1 ms) [ok]: CLIENT KILL with multiple filters including idle time (1002 ms) [ok]: CLIENT LIST with NOT-NAME filter (1 ms) [ok]: CLIENT LIST with NOT-FLAGS filter (0 ms) [ok]: CLIENT LIST with NOT-TYPE filter (1 ms) [ok]: CLIENT LIST with multiple negative filters (0 ms) [ok]: CLIENT LIST with multiple id filters (1 ms) [ok]: CLIENT KILL with multiple id filters (1 ms) [ok]: EXPIRE precision is now the millisecond (1102 ms) [ok]: WAITAOF replica copy if replica is blocked (901 ms) [ok]: AOF rewrite during write load: RDB preamble=yes (12980 ms) [ok]: PSETEX can set sub-second expires (102 ms) [ok]: expired_fields metric tracks multiple field expirations with keyspace notifications (203 ms) [ok]: Test LSET with packed consist only one item (167 ms) [ok]: Crash due to delete entry from a compress quicklist node (1 ms) [ok]: Crash due to split quicklist node wrongly (0 ms) [ok]: eviction due to output buffers of pubsub, client eviction: true (798 ms) [ok]: PEXPIRE can set sub-second expires (102 ms) [ok]: client evicted due to pubsub subscriptions (2302 ms) [ok]: client evicted due to tracking redirection (39 ms) [ok]: LPOS basic usage - quicklist (42 ms) [ok]: LPOS RANK (positive, negative and zero rank) option (0 ms) [ok]: LPOS COUNT option (1 ms) [ok]: LPOS COUNT + RANK option (0 ms) [ok]: LPOS non existing key (0 ms) [ok]: LPOS no match (0 ms) [ok]: LPOS MAXLEN (1 ms) [ok]: LPOS when RANK is greater than matches (0 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - quicklist (82 ms) [ok]: LPOP/RPOP with wrong number of arguments (0 ms) [ok]: PEXPIREAT can set sub-second expires (202 ms) [ok]: EXPIRE / EXPIREAT / PEXPIRE / PEXPIREAT Expiration time is already expired (2 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 (0 ms) [ok]: TTL / PTTL / EXPIRETIME / PEXPIRETIME return -2 if key does not exit (0 ms) [ok]: EXPIRETIME returns absolute expiration time in seconds (0 ms) [ok]: PEXPIRETIME returns absolute expiration time in milliseconds (0 ms) [ok]: RPOP/LPOP with the optional count argument - quicklist (41 ms) [ok]: LPOS basic usage - listpack (0 ms) [ok]: LPOS RANK (positive, negative and zero rank) option (1 ms) [ok]: LPOS COUNT option (0 ms) [ok]: LPOS COUNT + RANK option (0 ms) [ok]: LPOS non existing key (0 ms) [ok]: LPOS no match (1 ms) [ok]: LPOS MAXLEN (0 ms) [ok]: LPOS when RANK is greater than matches (0 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - listpack (1 ms) [ok]: LPOP/RPOP with wrong number of arguments (1 ms) [ok]: RPOP/LPOP with the optional count argument - listpack (0 ms) [ok]: LPOP/RPOP with the count 0 returns an empty array in RESP3 (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 (0 ms) [ok]: BLPOP: single existing list - quicklist (42 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-random) (100 ms) [ok]: BLPOP: multiple existing lists - quicklist (83 ms) [ok]: BLPOP: second list has an entry - quicklist (42 ms) [ok]: BLMPOP_LEFT: single existing list - quicklist (41 ms) [ok]: BLMPOP_LEFT: multiple existing lists - quicklist (83 ms) [ok]: BLMPOP_LEFT: second list has an entry - quicklist (42 ms) [ok]: BRPOPLPUSH - quicklist (42 ms) [ok]: BLMOVE left left - quicklist (42 ms) [ok]: BLMOVE left right - quicklist (42 ms) [ok]: BLMOVE right left - quicklist (42 ms) [ok]: CLIENT LIST with multiple negative filters (1002 ms) [ok]: CLIENT LIST with NOT-IP filter (0 ms) [ok]: BLMOVE right right - quicklist (42 ms) [ok]: BLPOP: single existing list - listpack (1 ms) [ok]: BLPOP: multiple existing lists - listpack (1 ms) [ok]: BLPOP: second list has an entry - listpack (1 ms) [ok]: BLMPOP_LEFT: single existing list - listpack (1 ms) [ok]: BLMPOP_LEFT: multiple existing lists - listpack (1 ms) [ok]: BLMPOP_LEFT: second list has an entry - listpack (1 ms) [ok]: BRPOPLPUSH - listpack (1 ms) [ok]: BLMOVE left left - listpack (1 ms) [ok]: BLMOVE left right - listpack (1 ms) [ok]: BLMOVE right left - listpack (1 ms) [ok]: BLMOVE right right - listpack (0 ms) [ok]: BLPOP, LPUSH + DEL should not awake blocked client (0 ms) [ok]: BLPOP, LPUSH + DEL + SET should not awake blocked client (0 ms) [ok]: BLMPOP_LEFT, LPUSH + DEL should not awake blocked client (1 ms) [ok]: BLMPOP_LEFT, LPUSH + DEL + SET should not awake blocked client (1 ms) [ok]: BLPOP with same key multiple times should work (issue #801) (2 ms) [ok]: MULTI/EXEC is isolated from the point of view of BLPOP (0 ms) [ok]: BLPOP with variadic LPUSH (1 ms) [ok]: MULTI/EXEC is isolated from the point of view of BLMPOP_LEFT (1 ms) [ok]: BLMPOP_LEFT with variadic LPUSH (1 ms) [ok]: BRPOPLPUSH with zero timeout should block indefinitely (0 ms) [ok]: BLMOVE left left with zero timeout should block indefinitely (0 ms) [ok]: BLMOVE left right with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE right left with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE right right with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE (left, left) with a client BLPOPing the target list (1 ms) [ok]: BLMOVE (left, right) with a client BLPOPing the target list (1 ms) [ok]: BLMOVE (right, left) with a client BLPOPing the target list (1 ms) [ok]: BLMOVE (right, right) with a client BLPOPing the target list (1 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lru) (521 ms) [ok]: BRPOPLPUSH with wrong source type (0 ms) [ok]: BRPOPLPUSH with wrong destination type (1 ms) [ok]: BRPOPLPUSH maintains order of elements after failure (0 ms) [ok]: BRPOPLPUSH with multiple blocked clients (1 ms) [ok]: BLMPOP with multiple blocked clients (2 ms) [ok]: Linked LMOVEs (1 ms) [ok]: Server should actively expire keys incrementally (602 ms) [ok]: Circular BRPOPLPUSH (1 ms) [ok]: Self-referential BRPOPLPUSH (1 ms) [ok]: BRPOPLPUSH inside a transaction (1 ms) [ok]: PUSH resulting from BRPOPLPUSH affect WATCH (1 ms) [ok]: BRPOPLPUSH does not affect WATCH while still blocked (1 ms) [ok]: WAITAOF replica multiple clients unblock - reuse last result (1002 ms) [ok]: WAITAOF on promoted replica (1 ms) [ok]: CLIENT LIST with IPv6 negative filter (0 ms) [ok]: Key TTL expires before field TTL: entire hash should be deleted timeunit: s, (1005 ms) [ok]: CLIENT LIST with NOT-CAPA filter (1 ms) [ok]: CLIENT KILL with NOT-IP filter (0 ms) [ok]: CLIENT KILL with NOT-CAPA filter (0 ms) [ok]: CLIENT KILL with NOT-NAME filter (1 ms) [ok]: CLIENT KILL with NOT-FLAGS filter (0 ms) [ok]: CLIENT KILL with NOT-TYPE filter (1 ms) [ok]: CLIENT KILL with multiple negative filters (1 ms) [ok]: Test latency events logging (3403 ms) [ok]: LATENCY HISTORY output is ok (0 ms) [ok]: LATENCY LATEST output is ok (0 ms) [ok]: LATENCY GRAPH can output the event graph (1 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lfu) (902 ms) [ok]: {cluster} SCAN regression test for issue #4906 (5184 ms) [ok]: {cluster} SCAN MATCH pattern implies cluster slot (17 ms) [31/143 done]: unit/scan (16 seconds) Testing unit/type/set [ok]: Connect a replica to the master instance (807 ms) [ok]: Redis.replicate_commands() can be issued anywhere now (0 ms) [ok]: Redis.set_repl() can be issued before replicate_commands() now (0 ms) [ok]: Redis.set_repl() don't accept invalid values (1 ms) [ok]: Test selective replication of certain commands from Lua (1 ms) [ok]: PRNG is seeded randomly for command replication (1 ms) [ok]: Using side effects is not a problem with command replication (0 ms) [ok]: Server should lazy expire keys (1001 ms) [ok]: BRPOPLPUSH timeout (1018 ms) [ok]: SWAPDB awakes blocked client (1 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - listpack (1 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - hashtable (8 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - intset (1 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 (0 ms) [ok]: SADD against non set (1 ms) [ok]: SADD a non-integer against a small intset (0 ms) [ok]: SADD a non-integer against a large intset (7 ms) [ok]: SADD an integer larger than 64 bits (0 ms) [ok]: SADD an integer larger than 64 bits to a large intset (7 ms) [ok]: Field TTL expires before key TTL: only the specific field should expire: s, (1005 ms) [ok]: SADD overflows the maximum allowed integers in an intset - single (26 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single (6 ms) [ok]: SWAPDB wants to wake blocked client, but the key already expired (132 ms) [ok]: SADD overflows the maximum allowed integers in an intset - multiple (42 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - multiple (1 ms) [ok]: CLIENT KILL with both positive and negative filters including idle time (1002 ms) [ok]: CLIENT LIST with illegal arguments (1 ms) [ok]: client input output and command process statistics (2 ms) [ok]: CLIENT KILL with illegal arguments (1 ms) [ok]: SADD overflows the maximum allowed integers in an intset - single_multiple (42 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single_multiple (1 ms) [ok]: Variadic SADD (0 ms) [ok]: Set encoding after DEBUG RELOAD (91 ms) [ok]: SREM basics - $type (0 ms) [ok]: SREM basics - $type (7 ms) [ok]: SREM basics - intset (1 ms) [ok]: SREM with multiple arguments (0 ms) [ok]: SREM variadic version with more args needed to destroy the key (1 ms) [ok]: SINTERCARD with illegal arguments (1 ms) [ok]: SINTERCARD against non-set should throw error (0 ms) [ok]: SINTERCARD against non-existing key (0 ms) [ok]: Generated sets must be encoded correctly - regular (1 ms) [ok]: SINTER with two sets - regular (0 ms) [ok]: SINTERCARD with two sets - regular (0 ms) [ok]: SINTERSTORE with two sets - regular (0 ms) [ok]: SINTERSTORE with two sets, after a DEBUG RELOAD - regular (4 ms) [ok]: SUNION with two sets - regular (6 ms) [ok]: SUNIONSTORE with two sets - regular (6 ms) [ok]: SINTER against three sets - regular (0 ms) [ok]: SINTERCARD against three sets - regular (0 ms) [ok]: SINTERSTORE with three sets - regular (1 ms) [ok]: SUNION with non existing keys - regular (5 ms) [ok]: SDIFF with two sets - regular (0 ms) [ok]: SDIFF with three sets - regular (1 ms) [ok]: SDIFFSTORE with three sets - regular (0 ms) [ok]: SINTER/SUNION/SDIFF with three same sets - regular (4 ms) [ok]: Generated sets must be encoded correctly - intset (0 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 (3 ms) [ok]: SUNION with two sets - intset (6 ms) [ok]: SUNIONSTORE with two sets - intset (6 ms) [ok]: SINTER against three sets - intset (0 ms) [ok]: SINTERCARD against three sets - intset (1 ms) [ok]: SINTERSTORE with three sets - intset (0 ms) [ok]: SUNION with non existing keys - intset (5 ms) [ok]: SDIFF with two sets - intset (1 ms) [ok]: SDIFF with three sets - intset (0 ms) [ok]: SDIFFSTORE with three sets - intset (0 ms) [ok]: SINTER/SUNION/SDIFF with three same sets - intset (4 ms) [ok]: SINTERSTORE with two listpack sets where result is intset (1 ms) [ok]: MULTI + LPUSH + EXPIRE + DEBUG SLEEP on blocked client, key already expired (301 ms) [ok]: SINTERSTORE with two hashtable sets where result is intset (15 ms) [ok]: SUNION hashtable and listpack (1 ms) [ok]: SDIFF with first set empty (0 ms) [ok]: SDIFF with same set two times (0 ms) [ok]: EXPIRE should not resurrect keys (issue #1026) (1001 ms) [ok]: 5 keys in, 5 keys out (1 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 (0 ms) [ok]: SET with EX with smallest integer should report an error (0 ms) [ok]: GETEX with big integer should report an error (1 ms) [ok]: GETEX with smallest integer should report an error (0 ms) [ok]: EXPIRE with big integer overflows when converted to milliseconds (1 ms) [ok]: PEXPIRE with big integer overflow when basetime is added (0 ms) [ok]: EXPIRE with big negative integer (1 ms) [ok]: PEXPIREAT with big integer works (0 ms) [ok]: PEXPIREAT with big negative integer works (0 ms) [ok]: WAITAOF master that loses a replica and backlog is dropped (2003 ms) [ok]: Key and field TTL expire simultaneously: entire hash should be deleted: s, (1004 ms) [ok]: test RESP2/2 big number protocol parsing (1 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 (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 (1 ms) [ok]: test RESP2/2 true protocol parsing (0 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (0 ms) [ok]: test RESP2/3 malformed big number protocol parsing (0 ms) [ok]: test RESP2/3 map protocol parsing (0 ms) [ok]: test RESP2/3 set protocol parsing (1 ms) [ok]: test RESP2/3 double protocol parsing (0 ms) [ok]: test RESP2/3 null protocol parsing (0 ms) [ok]: test RESP2/3 verbatim protocol parsing (1 ms) [ok]: test RESP2/3 true protocol parsing (0 ms) [ok]: test RESP2/3 false protocol parsing (0 ms) [ok]: test RESP3/2 big number protocol parsing (1 ms) [ok]: test RESP3/2 malformed big number protocol parsing (0 ms) [ok]: test RESP3/2 map protocol parsing (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 (1 ms) [ok]: test resp3 attribute protocol parsing (0 ms) [ok]: Script block the time during execution (11 ms) [ok]: Script delete the expired key (2 ms) [ok]: TIME command using cached time (11 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-lru) (1312 ms) [ok]: Script block the time in some expiration related commands (81 ms) [ok]: RESTORE expired keys with expiration time (11 ms) [ok]: BLPOP unblock but the key is expired and then block again - reprocessing command (1003 ms) [ok]: BLPOP when new key is moved into place (1 ms) [ok]: BLPOP when result key is created by SORT..STORE (1 ms) [ok]: BLMPOP_LEFT when new key is moved into place (0 ms) [ok]: BLMPOP_LEFT when result key is created by SORT..STORE (1 ms) [ok]: BLPOP: timeout value out of range (0 ms) [ok]: BLPOP: with single empty list argument (1 ms) [ok]: BLPOP: with negative timeout (0 ms) [ok]: BLPOP: with non-integer timeout (1 ms) [ok]: BLPOP: with zero timeout should block indefinitely (0 ms) [ok]: BLPOP: with 0.001 timeout should not block indefinitely (21 ms) [ok]: BLPOP: second argument is not a list (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 (0 ms) [ok]: EVAL - Return table with a metatable that call server (1 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (0 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 (1 ms) [ok]: EVAL - Lua error reply -> Redis protocol type conversion (0 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? (0 ms) [ok]: EVAL - Redis integer -> Lua type conversion (0 ms) [ok]: EVAL - Lua number -> Redis integer conversion (0 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (0 ms) [ok]: EVAL - Redis multi bulk -> Lua type conversion (1 ms) [ok]: EVAL - Redis status reply -> Lua type conversion (0 ms) [ok]: EVAL - Redis error reply -> Lua type conversion (0 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]: 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 (0 ms) [ok]: EVAL - Scripts do not block on blmove command (0 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (0 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (1 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (1 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (0 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 (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) [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 (0 ms) [ok]: EVAL - JSON string decoding (0 ms) [ok]: EVAL - JSON smoke test (1 ms) [ok]: EVAL - cmsgpack can pack double? (0 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (242 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (1 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 (0 ms) [ok]: redis.sha1hex() implementation (0 ms) [ok]: LTRIM stress testing - quicklist (5275 ms) [ok]: CLIENT KILL maxAGE will kill old clients (2002 ms) [ok]: CLIENT KILL SKIPME YES/NO will kill all clients (5 ms) [ok]: CLIENT command unhappy path coverage (3 ms) [ok]: CLIENT KILL close the client connection during bgsave (101 ms) [ok]: CLIENT REPLY OFF/ON: disable all commands reply (42 ms) [ok]: CLIENT REPLY SKIP: skip the next command reply (44 ms) [ok]: CLIENT REPLY ON: unset SKIP flag (42 ms) [ok]: MONITOR can log executed commands (1 ms) [ok]: MONITOR properly escapes special characters through sdscatrepr (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]: MONITOR supports redacting command arguments (4 ms) [ok]: MONITOR correctly handles multi-exec cases (2 ms) [ok]: MONITOR correctly records SET EX in MULTI-EXEC (1 ms) [ok]: MONITOR log blocked command only once (3 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 (0 ms) [ok]: CLIENT SETNAME does not accept spaces (0 ms) [ok]: CLIENT SETNAME can assign a name to this connection (1 ms) [ok]: CLIENT SETNAME can change the name of an existing connection (0 ms) [ok]: After CLIENT SETNAME, connection can still be closed (1 ms) [ok]: CLIENT SETINFO can set a library name to this connection (0 ms) [ok]: CLIENT SETINFO invalid args (0 ms) [ok]: RESET does NOT clean library name (1 ms) [ok]: CLIENT SETINFO can clear library name (0 ms) [ok]: CONFIG GET should return sorted output (6 ms) [ok]: BLPOP: timeout (1078 ms) [ok]: BLPOP: arguments are empty (4 ms) [ok]: BRPOP: with single empty list argument (1 ms) [ok]: BRPOP: with negative timeout (1 ms) [ok]: BRPOP: with non-integer timeout (1 ms) [ok]: BRPOP: with zero timeout should block indefinitely (1 ms) [ok]: BRPOP: with 0.001 timeout should not block indefinitely (21 ms) [ok]: BRPOP: second argument is not a list (0 ms) [ok]: Millisecond/Seconds precision (1502 ms) [ok]: Measures elapsed time os.clock() (1002 ms) [ok]: Prohibit dangerous lua methods in sandbox (0 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (2 ms) [ok]: Globals protection reading an undeclared global variable (0 ms) [ok]: Globals protection setting an undeclared global* (1 ms) [ok]: lua bit.tohex bug (0 ms) [ok]: Test an example script DECR_IF_GT (1 ms) [ok]: WAITAOF master without backlog, wait is released when the replica finishes full-sync (2016 ms) [ok]: EVAL does not leak in the Lua stack (365 ms) [ok]: Call Redis command with many args from Lua (issue #1764) (1 ms) [ok]: Number conversion precision test (issue #1118) (2 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 (0 ms) [ok]: CLUSTER RESET can not be invoke from within a script (0 ms) [ok]: Script with RESP3 map (2 ms) [ok]: All time-to-live(TTL) in commands are propagated as absolute timestamp in milliseconds in AOF (2026 ms) [ok]: Script return recursive object (110 ms) [ok]: All TTL in commands are propagated as absolute timestamp in replication stream (56 ms) [ok]: Script check unpack with massive arguments (53 ms) [ok]: Script read key with expiration set (1 ms) [ok]: Script del key with expiration set (0 ms) [ok]: Script ACL check (1 ms) [ok]: Binary code loading failed (1 ms) [ok]: Try trick global protection 1 (0 ms) [ok]: Try trick global protection 2 (0 ms) [ok]: Try trick global protection 3 (0 ms) [ok]: Try trick global protection 4 (0 ms) [ok]: Try trick readonly table on valkey table (0 ms) [ok]: Try trick readonly table on json table (1 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 (1 ms) [ok]: Test dofile are not available (0 ms) [ok]: Test print are not available (0 ms) [ok]: CONFIG save params special case handled properly (899 ms) [ok]: CONFIG sanity (29 ms) [ok]: First server should have role slave after REPLICAOF (1 ms) [ignore]: large memory flag not provided [ok]: Key TTL expires before field TTL: entire hash should be deleted timeunit: ms (1007 ms) [ok]: CONFIG REWRITE sanity (260 ms) [ok]: BRPOP: timeout (1070 ms) [ok]: BRPOP: arguments are empty (2 ms) [ok]: BLMPOP_LEFT: with single empty list argument (1 ms) [ok]: BLMPOP_LEFT: with negative timeout (0 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 (22 ms) [ok]: BLMPOP_LEFT: second argument is not a list (1 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-lfu) (2560 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (403 ms) [ok]: SDIFF fuzzing (3562 ms) [ok]: SDIFF against non-set should throw error (1 ms) [ok]: SDIFF should handle non existing key as empty (0 ms) [ok]: SDIFFSTORE against non-set should throw error (2 ms) [ok]: SDIFFSTORE should handle non existing key as empty (1 ms) [ok]: SINTER against non-set should throw error (1 ms) [ok]: SINTER should handle non existing key as empty (1 ms) [ok]: SINTER with same integer elements but different encoding (1 ms) [ok]: SINTERSTORE against non-set should throw error (2 ms) [ok]: SINTERSTORE against non existing keys should delete dstkey (1 ms) [ok]: SUNION against non-set should throw error (1 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (89 ms) [ok]: SUNION should handle non existing key as empty (1 ms) [ok]: SUNIONSTORE against non-set should throw error (2 ms) [ok]: SUNIONSTORE should handle non existing key as empty (2 ms) [ok]: SUNIONSTORE against non existing keys should delete dstkey (0 ms) [ok]: SPOP basics - listpack (1 ms) [ok]: SPOP with =1 - listpack (1 ms) [ok]: LATENCY GRAPH can output the expire event graph (0 ms) [ok]: LATENCY of expire events are correctly collected (4225 ms) [ok]: LATENCY HISTORY / RESET with wrong event name is fine (1 ms) [ok]: LATENCY DOCTOR produces some output (1 ms) [ok]: LATENCY RESET is able to reset events (0 ms) [ok]: LATENCY HELP should not have unexpected options (0 ms) [ok]: SRANDMEMBER - listpack (9 ms) [ok]: SPOP basics - intset (1 ms) [ok]: SPOP with =1 - intset (1 ms) [ok]: SRANDMEMBER - intset (9 ms) [ok]: SPOP integer from listpack set (3 ms) [ok]: SPOP with - listpack (4 ms) [ok]: SPOP with - intset (4 ms) [ok]: SPOP with - hashtable (4 ms) [ok]: SPOP using integers, testing Knuth's and Floyd's algorithm (3 ms) [ok]: SPOP using integers with Knuth's algorithm (0 ms) [ok]: WAITAOF master isn't configured to do AOF (1003 ms) [ok]: SPOP new implementation: code path #1 intset (2 ms) [ok]: SPOP new implementation: code path #2 intset (2 ms) [ok]: SPOP new implementation: code path #3 intset (3 ms) [ok]: SPOP new implementation: code path #1 listpack (2 ms) [ok]: SPOP new implementation: code path #2 listpack (2 ms) [ok]: SPOP new implementation: code path #3 listpack (2 ms) [ok]: Timedout script does not cause a false dead client (84 ms) [ok]: SPOP new implementation: code path #1 propagate as DEL or UNLINK (78 ms) [ok]: SRANDMEMBER count of 0 is handled correctly (0 ms) [ok]: SRANDMEMBER with against non existing key (0 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 (1 ms) [ok]: WAITAOF replica isn't configured to do AOF (106 ms) [ok]: SRANDMEMBER with - listpack (31 ms) [ok]: SRANDMEMBER with - intset (22 ms) [ok]: Timedout script link is still usable after Lua returns (140 ms) [ok]: SRANDMEMBER with - hashtable (36 ms) [ok]: For all replicated TTL-related commands, absolute expire times are identical on primary and replica (904 ms) [ok]: SRANDMEMBER histogram distribution - listpack (90 ms) [ok]: CONFIG REWRITE handles save and shutdown properly (769 ms) [ok]: CONFIG SET with multiple args (1 ms) [ok]: CONFIG SET rollback on set error (2 ms) [ok]: CONFIG SET rollback on apply error (3 ms) [ok]: CONFIG SET duplicate configs (1 ms) [ok]: CONFIG SET set immutable (0 ms) [ok]: CONFIG GET hidden configs (4 ms) [ok]: CONFIG GET multiple args (0 ms) [ok]: SRANDMEMBER histogram distribution - intset (114 ms) [ok]: valkey-server command line arguments - error cases (76 ms) [ok]: SRANDMEMBER histogram distribution - hashtable (85 ms) [ok]: SMOVE basics - from regular set to intset (3 ms) [ok]: SMOVE basics - from intset to regular set (1 ms) [ok]: SMOVE non existing key (5 ms) [ok]: SMOVE non existing src set (1 ms) [ok]: SMOVE from regular set to non existing destination set (1 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 (1 ms) [ok]: expired key which is created in writeable replicas should be deleted by active expiry (302 ms) [ok]: Field TTL expires before key TTL: only the specific field should expire: ms (1008 ms) [ok]: Timedout scripts and unblocked command (402 ms) [ok]: SET command will remove expire (0 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed (1 ms) [ok]: BLMPOP_LEFT: timeout (1074 ms) [ok]: BLMPOP_LEFT: arguments are empty (2 ms) [ok]: BLMPOP_RIGHT: with single empty list argument (1 ms) [ok]: BLMPOP_RIGHT: with negative timeout (2 ms) [ok]: BLMPOP_RIGHT: with non-integer timeout (1 ms) [ok]: BLMPOP_RIGHT: with zero timeout should block indefinitely (0 ms) [ok]: BLMPOP_RIGHT: with 0.001 timeout should not block indefinitely (21 ms) [ok]: BLMPOP_RIGHT: second argument is not a list (1 ms) [ok]: Timedout scripts that modified data can't be killed by SCRIPT KILL (202 ms) [ok]: SHUTDOWN NOSAVE can kill a timedout script anyway (2 ms) [ok]: tot-net-out for replica client (526 ms) [ok]: CLIENT LIST can filter by LIB-NAME (1 ms) [ok]: CLIENT LIST can filter by LIB-VER (1 ms) [ok]: CLIENT LIST can filter by DB number (1 ms) [ok]: CLIENT KILL can filter by DB (1 ms) [ok]: CLIENT KILL can filter by LIB-NAME (1 ms) [ok]: CLIENT KILL can filter by LIB-VER (1 ms) [ok]: CLIENT LIST can filter by NOT-LIB-NAME (1 ms) [ok]: CLIENT LIST can filter by NOT-LIB-VER (1 ms) [ok]: CLIENT LIST can filter by NOT-DB number (0 ms) [ok]: CLIENT KILL can filter by NOT-DB (1 ms) [ok]: CLIENT KILL can filter by NOT-LIB-NAME (1 ms) [ok]: CLIENT KILL can filter by NOT-LIB-VER (0 ms) [ok]: WAITAOF both local and replica got AOF enabled at runtime (901 ms) [ok]: Before the replica connects we issue two EVAL commands (0 ms) [ok]: Test check paused info during the cluster failover in info clients (63 ms) [ok]: valkey-server command line arguments - allow passing option name and option value in the same arg (220 ms) [32/143 done]: unit/pause (14 seconds) Testing unit/type/list-3 [ok]: Explicit regression for a list bug (3 ms) [ok]: valkey-server command line arguments - wrong usage that we support anyway (221 ms) [ok]: Regression for quicklist #3343 bug (124 ms) [ok]: Check compression with recompress (44 ms) [ok]: Key and field TTL expire simultaneously: entire hash should be deleted: ms (1007 ms) [ok]: valkey-server command line arguments - allow option value to use the `--` prefix (219 ms) [ok]: Crash due to wrongly recompress after lrem (206 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element before it (42 ms) [ok]: BLMPOP_RIGHT: timeout (1073 ms) [ok]: BLMPOP_RIGHT: arguments are empty (2 ms) [ok]: BLPOP inside a transaction (1 ms) [ok]: BLMPOP_LEFT inside a transaction (1 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element after it (41 ms) [ok]: Connect a replica to the master instance (809 ms) [ok]: Replication of script multiple pushes to list with BLPOP (1 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: valkey-server command line arguments - option name and option value in the same arg and `--` prefix (221 ms) [ok]: BLMPOP propagate as pop with count command to replica (196 ms) [ok]: LPUSHX, RPUSHX - generic (1 ms) [ok]: LPUSHX, RPUSHX - quicklist (43 ms) [ok]: LINSERT - quicklist (43 ms) [ok]: LPUSHX, RPUSHX - listpack (1 ms) [ok]: LINSERT - listpack (1 ms) [ok]: LINSERT raise error on bad syntax (0 ms) [ok]: LINSERT against non-list value error (0 ms) [ok]: LINSERT against non existing key (1 ms) [ok]: LINDEX consistency test - listpack (60 ms) [ok]: GEOSEARCH fuzzy test - byradius (17465 ms) [ok]: intsets implementation stress testing (1690 ms) [ok]: LINDEX random access - listpack (42 ms) [ok]: WAITAOF master sends PING after last write (1203 ms) [33/144 done]: unit/type/set (6 seconds) Testing unit/type/incr [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (59 ms) [ok]: INCR against non existing key (0 ms) [ok]: INCR against key created by incr itself (0 ms) [ok]: DECR against key created by incr (1 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 (1 ms) [ok]: INCR fails against key with spaces (left) (0 ms) [ok]: INCR fails against key with spaces (right) (0 ms) [ok]: INCR fails against key with spaces (both) (0 ms) [ok]: DECRBY negation overflow (0 ms) [ok]: INCR fails against a key holding a list (1 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 can modify objects in-place (0 ms) [ok]: INCRBYFLOAT against non existing key (0 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 (0 ms) [ok]: INCRBYFLOAT fails against key with spaces (left) (1 ms) [ok]: INCRBYFLOAT fails against key with spaces (right) (0 ms) [ok]: INCRBYFLOAT fails against key with spaces (both) (1 ms) [ok]: INCRBYFLOAT fails against a key holding a list (0 ms) [ok]: INCRBYFLOAT does not allow NaN or Infinity (1 ms) [ok]: INCRBYFLOAT decrement (0 ms) [ok]: string to double with null terminator (1 ms) [ok]: No negative zero (0 ms) [ok]: INCRBY INCRBYFLOAT DECRBY against unhappy path (1 ms) [ok]: incr operation should update encoding from raw to int (2 ms) [ok]: decr operation should update encoding from raw to int (1 ms) [ok]: incrby operation should update encoding from raw to int (1 ms) [ok]: decrby operation should update encoding from raw to int (1 ms) [ok]: LINDEX consistency test - listpack (107 ms) [34/144 done]: unit/type/incr (0 seconds) Testing unit/type/stream-cgroups [ok]: LINDEX random access - listpack (95 ms) [ok]: XGROUP CREATE: creation and duplicate group name detection (1 ms) [ok]: XGROUP CREATE: with ENTRIESREAD parameter (2 ms) [ok]: XGROUP CREATE: automatic stream creation fails without MKSTREAM (0 ms) [ok]: XGROUP CREATE: automatic stream creation works with MKSTREAM (0 ms) [ok]: XREADGROUP will return only new elements (1 ms) [ok]: XREADGROUP can read the history of the elements we own (1 ms) [ok]: XPENDING is able to return pending items (1 ms) [ok]: XPENDING can return single consumer items (0 ms) [ok]: XPENDING only group (0 ms) [ok]: XPENDING with IDLE (21 ms) [ok]: XPENDING with exclusive range intervals works as expected (0 ms) [ok]: XACK is able to remove items from the consumer/group PEL (0 ms) [ok]: XACK can't remove the same item multiple times (0 ms) [ok]: XACK is able to accept multiple arguments (0 ms) [ok]: XACK should fail if got at least one invalid ID (1 ms) [ok]: PEL NACK reassignment after XGROUP SETID event (1 ms) [ok]: XREADGROUP will not report data on empty history. Bug #5577 (2 ms) [ok]: XREADGROUP history reporting of deleted entries. Bug #5570 (1 ms) [ok]: Blocking XREADGROUP will not reply with an empty array (24 ms) [ok]: Blocking XREADGROUP: key deleted (2 ms) [ok]: Blocking XREADGROUP: key type changed with SET (1 ms) [ok]: Blocking XREADGROUP: key type changed with transaction (2 ms) [ok]: Blocking XREADGROUP: flushed DB (1 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (177 ms) [ok]: Blocking XREADGROUP: swapped DB, key doesn't exist (2 ms) [ok]: Blocking XREADGROUP: swapped DB, key is not a stream (2 ms) [ok]: XREAD and XREADGROUP against wrong parameter (1 ms) [ok]: Blocking XREAD: key deleted (2 ms) [ok]: Blocking XREAD: key type changed with SET (1 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-random) (2970 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed after loadaof (2003 ms) [ok]: GETEX use of PERSIST option should remove TTL (0 ms) [ok]: GETEX use of PERSIST option should remove TTL after loadaof (1 ms) [ok]: LINDEX consistency test - quicklist (46 ms) [ok]: LINDEX random access - quicklist (31 ms) [ok]: GETEX propagate as to replica as PERSIST, UNLINK, or nothing (69 ms) [ok]: EXPIRE with NX option on a key with ttl (1 ms) [ok]: EXPIRE with NX option on a key without ttl (0 ms) [ok]: EXPIRE with XX option on a key with ttl (0 ms) [ok]: EXPIRE with XX option on a key without ttl (1 ms) [ok]: EXPIRE with GT option on a key with lower ttl (0 ms) [ok]: EXPIRE with GT option on a key with higher ttl (0 ms) [ok]: EXPIRE with GT option on a key without ttl (1 ms) [ok]: EXPIRE with LT option on a key with higher ttl (0 ms) [ok]: EXPIRE with LT option on a key with lower ttl (1 ms) [ok]: EXPIRE with LT option on a key without ttl (0 ms) [ok]: EXPIRE with LT and XX option on a key with ttl (0 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 (0 ms) [ok]: EXPIRE with unsupported options (0 ms) [ok]: EXPIRE with negative expiry (0 ms) [ok]: EXPIRE with negative expiry on a non-valitale key (0 ms) [ok]: EXPIRE with non-existed key (1 ms) [ok]: Blocking XREADGROUP for stream that ran dry (issue #5299) (109 ms) [ok]: Blocking XREADGROUP will ignore BLOCK if ID is not > (3 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on list (4 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - avoid endless loop (2 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (74 ms) [ok]: Server should not propagate the read command on lazy expire (87 ms) [ok]: LINDEX consistency test - quicklist (90 ms) [ok]: LINDEX random access - quicklist (55 ms) [ok]: SCAN: Lazy-expire should not be wrapped in MULTI/EXEC (101 ms) [ok]: valkey-server command line arguments - save with empty input (1095 ms) [ok]: RANDOMKEY: Lazy-expire should not be wrapped in MULTI/EXEC (100 ms) [ok]: import-source can be closed when import-mode is off (1 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (110 ms) [ok]: LLEN against non-list value error (0 ms) [ok]: LLEN against non existing key (0 ms) [ok]: LINDEX against non-list value error (0 ms) [ok]: LINDEX against non existing key (0 ms) [ok]: LPUSH against non-list value error (0 ms) [ok]: RPUSH against non-list value error (0 ms) [ok]: Millisecond/Seconds precision (1502 ms) [ok]: Ensure that key-level PERSIST on the key don't affect field TTL (2 ms) [ok]: Verify error when hash expire commands num fields is not provided (1 ms) [ok]: RPOPLPUSH base case - quicklist (43 ms) [ok]: LMOVE left left base case - quicklist (41 ms) [ok]: Import mode should forbid active expiration (112 ms) [ok]: Import mode should forbid lazy expiration (12 ms) [ok]: valkey-server command line arguments - take one bulk string with spaces for MULTI_ARG configs parsing (221 ms) [ok]: LMOVE left right base case - quicklist (43 ms) [ok]: Hash ttl - check command stats (2 ms) [ok]: LMOVE right left base case - quicklist (42 ms) [ok]: LMOVE right right base case - quicklist (42 ms) [ok]: Client can visit expired key in import-source state (112 ms) [ok]: RPOPLPUSH with the same list as src and dst - quicklist (41 ms) [ok]: LMOVE left left with the same list as src and dst - quicklist (43 ms) [ok]: valkey-server command line arguments - dir multiple times (217 ms) [ok]: LMOVE left right with the same list as src and dst - quicklist (44 ms) [ok]: WAITAOF master client didn't send any write command (1202 ms) [ok]: LMOVE right left with the same list as src and dst - quicklist (42 ms) [ok]: LMOVE right right with the same list as src and dst - quicklist (42 ms) [ok]: auth check before command existence check and command arity check (0 ms) [ok]: cannot modify protected configuration - no (1 ms) [ok]: RPOPLPUSH with quicklist source and existing target quicklist (83 ms) [ok]: Active expiration triggers hashtable shrink (159 ms) [ok]: LMOVE left left with quicklist source and existing target quicklist (86 ms) [ok]: LMOVE left right with quicklist source and existing target quicklist (86 ms) [ok]: cannot modify protected configuration - local (4 ms) [ok]: LMOVE right left with quicklist source and existing target quicklist (85 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - reprocessing command (1093 ms) [ok]: XGROUP DESTROY should unblock XREADGROUP with -NOGROUP (3 ms) [ok]: RENAME can unblock XREADGROUP with data (2 ms) [ok]: RENAME can unblock XREADGROUP with -NOGROUP (2 ms) [ok]: LMOVE right right with quicklist source and existing target quicklist (84 ms) [ok]: RPOPLPUSH with quicklist source and existing target listpack (43 ms) [ok]: Connect a replica to the master instance (807 ms) [ok]: Redis.replicate_commands() can be issued anywhere now (0 ms) [ok]: Redis.set_repl() can be issued before replicate_commands() now (0 ms) [ok]: Redis.set_repl() don't accept invalid values (1 ms) [ok]: Test selective replication of certain commands from Lua (2 ms) [ok]: PRNG is seeded randomly for command replication (0 ms) [ok]: Using side effects is not a problem with command replication (0 ms) [ok]: LMOVE left left with quicklist source and existing target listpack (45 ms) [ok]: LMOVE left right with quicklist source and existing target listpack (43 ms) [ok]: LMOVE right left with quicklist source and existing target listpack (41 ms) [ok]: LMOVE right right with quicklist source and existing target listpack (42 ms) [ok]: RPOPLPUSH base case - listpack (1 ms) [ok]: LMOVE left left base case - listpack (1 ms) [ok]: LMOVE left right base case - listpack (1 ms) [ok]: LMOVE right left base case - listpack (1 ms) [ok]: LMOVE right right base case - listpack (1 ms) [ok]: RPOPLPUSH with the same list as src and dst - listpack (0 ms) [ok]: LMOVE left left with the same list as src and dst - listpack (1 ms) [ok]: LMOVE left right with the same list as src and dst - listpack (0 ms) [ok]: LMOVE right left with the same list as src and dst - listpack (1 ms) [ok]: LMOVE right right with the same list as src and dst - listpack (0 ms) [ok]: RPOPLPUSH with listpack source and existing target quicklist (42 ms) [ok]: LMOVE left left with listpack source and existing target quicklist (42 ms) [ok]: LMOVE left right with listpack source and existing target quicklist (41 ms) [ok]: LMOVE right left with listpack source and existing target quicklist (41 ms) [ok]: LMOVE right right with listpack source and existing target quicklist (43 ms) [ok]: RPOPLPUSH with listpack source and existing target listpack (0 ms) [ok]: LMOVE left left with listpack source and existing target listpack (0 ms) [ok]: LMOVE left right with listpack source and existing target listpack (1 ms) [ok]: LMOVE right left with listpack source and existing target listpack (1 ms) [ok]: LMOVE right right with listpack source and existing target listpack (1 ms) [ok]: RPOPLPUSH against non existing key (0 ms) [ok]: RPOPLPUSH against non list src key (1 ms) [ok]: RPOPLPUSH against non list dst key - quicklist (42 ms) [ok]: RPOPLPUSH against non list dst key - listpack (1 ms) [ok]: RPOPLPUSH against non existing src key (0 ms) [ok]: Setup replica and check field expiry after full sync (907 ms) [ok]: HASH TTL - replicated TTL is absolute and consistent on replica (2 ms) [ok]: Basic LPOP/RPOP/LMPOP - quicklist (84 ms) [ok]: XCLAIM can claim PEL items from another consumer (604 ms) [ok]: Basic LPOP/RPOP/LMPOP - listpack (1 ms) [ok]: LPOP/RPOP/LMPOP against empty list (0 ms) [ok]: LPOP/RPOP/LMPOP NON-BLOCK or BLOCK against non list value (1 ms) [ok]: HASH TTL - field expired on master gets deleted on replica (23 ms) [ok]: HASH TTL - replica retains TTL and field before expiration (1 ms) [ok]: HSETEX with expired time is propagated to the replica (1 ms) [ok]: HGETEX with expired time is propagated to the replica (1 ms) [ok]: HEXPIREAT with expired time is propagated to the replica (1 ms) [ok]: Mass RPOP/LPOP - listpack (29 ms) [ok]: LTRIM stress testing - listpack (6736 ms) [35/144 done]: unit/type/list-2 (12 seconds) Testing unit/type/string [ok]: Mass RPOP/LPOP - listpack (55 ms) [ok]: LMPOP with illegal argument (1 ms) [ok]: WAITAOF master client didn't send any command (1202 ms) [ok]: SET and GET an item (0 ms) [ok]: SET and GET an empty item (0 ms) [ok]: LMPOP single existing list - quicklist (127 ms) [ok]: Very big payload in GET/SET (50 ms) [ok]: config during loading (871 ms) [ok]: LMPOP multiple existing lists - quicklist (168 ms) [ok]: LMPOP single existing list - listpack (2 ms) [ok]: LMPOP multiple existing lists - listpack (4 ms) [ok]: XCLAIM without JUSTID increments delivery count (404 ms) [ok]: MIGRATE cached connections are released after some time (15002 ms) [ok]: LMPOP propagate as pop with count command to replica (56 ms) [ok]: LRANGE basics - quicklist (44 ms) [ok]: LRANGE inverted indexes - quicklist (42 ms) [ok]: LRANGE out of range indexes including the full list - quicklist (41 ms) [ok]: XCLAIM same consumer (201 ms) [ok]: LRANGE out of range negative end index - quicklist (42 ms) [ok]: LRANGE basics - listpack (2 ms) [ok]: LRANGE inverted indexes - listpack (1 ms) [ok]: LRANGE out of range indexes including the full list - listpack (1 ms) [ok]: LRANGE out of range negative end index - listpack (1 ms) [ok]: LRANGE against non existing key (1 ms) [ok]: LRANGE with start > end yields an empty array for backward compatibility (0 ms) [ok]: MIGRATE is able to migrate a key between two instances (219 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 (1 ms) [ok]: test RESP2/2 set protocol parsing (0 ms) [ok]: test RESP2/2 double protocol parsing (0 ms) [ok]: test RESP2/2 null protocol parsing (0 ms) [ok]: test RESP2/2 verbatim protocol parsing (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 (0 ms) [ok]: test RESP2/3 map protocol parsing (1 ms) [ok]: test RESP2/3 set protocol parsing (0 ms) [ok]: test RESP2/3 double protocol parsing (0 ms) [ok]: test RESP2/3 null protocol parsing (0 ms) [ok]: test RESP2/3 verbatim protocol parsing (0 ms) [ok]: test RESP2/3 true protocol parsing (0 ms) [ok]: test RESP2/3 false protocol parsing (0 ms) [ok]: test RESP3/2 big number protocol parsing (0 ms) [ok]: test RESP3/2 malformed big number protocol parsing (0 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 (0 ms) [ok]: test RESP3/2 verbatim protocol parsing (0 ms) [ok]: test RESP3/2 true protocol parsing (1 ms) [ok]: test RESP3/2 false protocol parsing (0 ms) [ok]: test RESP3/3 big number protocol parsing (0 ms) [ok]: test RESP3/3 malformed big number protocol parsing (0 ms) [ok]: test RESP3/3 map protocol parsing (1 ms) [ok]: test RESP3/3 set protocol parsing (0 ms) [ok]: test RESP3/3 double protocol parsing (0 ms) [ok]: test RESP3/3 null protocol parsing (0 ms) [ok]: test RESP3/3 verbatim protocol parsing (0 ms) [ok]: test RESP3/3 true protocol parsing (0 ms) [ok]: test RESP3/3 false protocol parsing (0 ms) [ok]: test resp3 attribute protocol parsing (0 ms) [ok]: Script block the time during execution (10 ms) [ok]: Script delete the expired key (4 ms) [ok]: TIME command using cached time (10 ms) [ok]: Script block the time in some expiration related commands (82 ms) [ok]: RESTORE expired keys with expiration time (10 ms) [ok]: MIGRATE is able to copy a key between two instances (223 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-ttl) (2749 ms) [ok]: Script - disallow write on OOM (0 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (1 ms) [ok]: EVAL - Return _G (0 ms) [ok]: EVAL - Return table with a metatable that raise error (3 ms) [ok]: EVAL - Return table with a metatable that call server (0 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (3 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 (0 ms) [ok]: EVAL - Lua table -> Redis protocol type conversion (0 ms) [ok]: EVAL - Are the KEYS and ARGV arrays populated correctly? (1 ms) [ok]: EVAL - is Lua able to call Redis API? (2 ms) [ok]: EVALSHA - Can we call a SHA1 if already defined? (0 ms) [ok]: EVALSHA_RO - Can we call a SHA1 if already defined? (0 ms) [ok]: EVALSHA - Can we call a SHA1 in uppercase? (1 ms) [ok]: EVALSHA - Do we get an error on invalid SHA1? (0 ms) [ok]: EVALSHA - Do we get an error on non defined SHA1? (0 ms) [ok]: EVAL - Redis integer -> Lua type conversion (1 ms) [ok]: EVAL - Lua number -> Redis integer conversion (0 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (0 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 (2 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 (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 (0 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (0 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (1 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (1 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (0 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 (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 (0 ms) [ok]: EVAL - JSON string decoding (0 ms) [ok]: EVAL - JSON smoke test (0 ms) [ok]: EVAL - cmsgpack can pack double? (0 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [ok]: MIGRATE will not overwrite existing keys, unless REPLACE is used (220 ms) [ok]: MEMORY commands during loading (837 ms) [ok]: LTRIM basics - quicklist (505 ms) [ok]: XAUTOCLAIM can claim PEL items from another consumer (604 ms) [ok]: LTRIM out of range negative end index - quicklist (85 ms) [ok]: LSET - quicklist (43 ms) [ok]: LSET out of range index - quicklist (0 ms) [ok]: LTRIM basics - listpack (7 ms) [ok]: LTRIM out of range negative end index - listpack (1 ms) [ok]: LSET - listpack (1 ms) [ok]: LSET out of range index - listpack (0 ms) [ok]: LSET against non existing key (0 ms) [ok]: LSET against non list value (0 ms) [ok]: MIGRATE propagates TTL correctly (220 ms) [ok]: LREM remove all the occurrences - quicklist (41 ms) [ok]: LREM remove the first occurrence - quicklist (0 ms) [ok]: LREM remove non existing element - quicklist (0 ms) [ok]: Replication Primary -> R1 (909 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (263 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (0 ms) [ok]: EVAL - Numerical sanity check from bitop (0 ms) [ok]: EVAL - Verify minimal bitop functionality (0 ms) [ok]: EVAL - Able to parse trailing comments (1 ms) [ok]: EVAL_RO - Successful case (0 ms) [ok]: EVAL_RO - Cannot run write commands (0 ms) [ok]: LREM starting from tail with negative count - quicklist (41 ms) [ok]: LREM starting from tail with negative count (2) - quicklist (0 ms) [ok]: SCRIPTING FLUSH - is able to clear the scripts cache? (30 ms) [ok]: EVAL - Test table unpack with invalid indexes (1 ms) [ok]: Try trick readonly table on basic types metatable (1 ms) [ok]: Dynamic reset of lua engine with insecure API config change (1 ms) [ok]: SCRIPTING FLUSH ASYNC (6 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]: SCRIPT SHOW - is able to dump scripts from the scripting cache (0 ms) [ok]: SCRIPT SHOW - wrong sha1 length or invalid sha1 char return noscript error (0 ms) [ok]: SCRIPT SHOW - script not exist return noscript error (0 ms) [ok]: SORT is normally not alpha re-ordered for the scripting engine (1 ms) [ok]: SORT BY output gets ordered for scripting (0 ms) [ok]: SORT BY with GET gets ordered for scripting (1 ms) [ok]: redis.sha1hex() implementation (0 ms) [ok]: LREM deleting objects that may be int encoded - quicklist (41 ms) [ok]: LREM remove all the occurrences - listpack (1 ms) [ok]: LREM remove the first occurrence - listpack (0 ms) [ok]: LREM remove non existing element - listpack (0 ms) [ok]: LREM starting from tail with negative count - listpack (1 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 (1 ms) [ok]: BLPOP/BLMOVE should increase dirty (1 ms) [ok]: client unblock tests (3 ms) [ok]: client unblock tests (2 ms) [ok]: List listpack -> quicklist encoding conversion (2 ms) [ok]: XAUTOCLAIM as an iterator (205 ms) [ok]: XAUTOCLAIM COUNT must be > 0 (0 ms) [ok]: XCLAIM with XDEL (1 ms) [ok]: XCLAIM with trimming (1 ms) [ok]: XAUTOCLAIM with XDEL (2 ms) [ok]: XAUTOCLAIM with XDEL and count (1 ms) [ok]: XAUTOCLAIM with out of range count (0 ms) [ok]: XCLAIM with trimming (2 ms) [ok]: XINFO FULL output (3 ms) [ok]: CONFIG REWRITE handles rename-command properly (346 ms) [ok]: List listpack -> quicklist encoding conversion (166 ms) [ok]: Consumer seen-time and active-time (205 ms) [ok]: XGROUP CREATECONSUMER: create consumer if does not exist (3 ms) [ok]: XGROUP CREATECONSUMER: group must exist (1 ms) [ok]: XREADGROUP with NOACK creates consumer (7 ms) [ok]: List quicklist -> listpack encoding conversion (211 ms) [ok]: List encoding conversion when RDB loading (8 ms) [ok]: Consumer without PEL is present in AOF after AOFRW (108 ms) [ok]: List invalid list-max-listpack-size config (84 ms) [ok]: Consumer group read counter and lag in empty streams (2 ms) [ok]: List of various encodings (87 ms) [ok]: Consumer group read counter and lag sanity (10 ms) [ok]: List of various encodings - sanitize dump (3 ms) [ok]: Unblock fairness is kept while pipelining (2 ms) [ok]: Unblock fairness is kept during nested unblock (3 ms) [ok]: Blocking command accounted only once in commandstats (2 ms) [ok]: Blocking command accounted only once in commandstats after timeout (2 ms) [ok]: Consumer group lag with XDELs (9 ms) [ok]: Consumer group lag with XTRIM (9 ms) [ok]: Consumer group lag with XADD trimming (7 ms) [ok]: Loading from legacy (Redis <= v6.2.x, rdb_ver < 10) persistence (1 ms) [ok]: Loading from legacy (Redis <= v7.0.x, rdb_ver < 11) persistence (0 ms) [ok]: expire scan should skip dictionaries with lot's of empty buckets (831 ms) [ok]: Command being unblocked cause another command to get unblocked execution order test (77 ms) [ok]: Very big payload random access (1858 ms) [36/144 done]: unit/expire (17 seconds) Testing unit/type/hash [ok]: CONFIG REWRITE handles alias config properly (670 ms) [37/144 done]: unit/introspection (15 seconds) Testing unit/type/stream [ok]: HSET/HLEN - Small hash creation (1 ms) [ok]: Is the small hash encoded with a listpack? (1 ms) [ok]: XADD wrong number of args (1 ms) [ok]: XADD can add entries into a stream that XRANGE can fetch (0 ms) [ok]: XADD IDs are incremental (1 ms) [ok]: HRANDFIELD - listpack (5 ms) [ok]: XADD IDs are incremental when ms is the same as well (0 ms) [ok]: XADD IDs correctly report an error when overflowing (1 ms) [ok]: XADD auto-generated sequence is incremented for last ID (0 ms) [ok]: XADD auto-generated sequence is zero for future timestamp ID (0 ms) [ok]: XADD auto-generated sequence can't be smaller than last ID (0 ms) [ok]: XADD auto-generated sequence can't overflow (1 ms) [ok]: XADD 0-* should succeed (0 ms) [ok]: HRANDFIELD - hashtable (5 ms) [ok]: HRANDFIELD with RESP3 (1 ms) [ok]: HRANDFIELD count of 0 is handled correctly (0 ms) [ok]: HRANDFIELD count overflow (0 ms) [ok]: HRANDFIELD with against non existing key (0 ms) [ok]: HRANDFIELD count of 0 is handled correctly - emptyarray (0 ms) [ok]: HRANDFIELD with against non existing key - emptyarray (0 ms) [ok]: XADD with MAXLEN option (70 ms) [ok]: HRANDFIELD with - hashtable (98 ms) [ok]: Chain Replication (Primary -> R1 -> R2) preserves TTL (918 ms) [ok]: XADD with MAXLEN option and the '=' argument (69 ms) [ok]: Measures elapsed time os.clock() (1003 ms) [ok]: Prohibit dangerous lua methods in sandbox (0 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (0 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 (0 ms) [ok]: random numbers are random now (1 ms) [ok]: Scripting engine PRNG can be seeded correctly (0 ms) [ok]: XADD with MAXLEN option and the '~' argument (57 ms) [ok]: XADD with NOMKSTREAM option (1 ms) [ok]: HRANDFIELD with - listpack (111 ms) [ok]: XADD with MINID option (69 ms) [ok]: XTRIM with MINID option (1 ms) [ok]: XTRIM with MINID option, big delta from master record (0 ms) [ok]: HSET/HLEN - Big hash creation (72 ms) [ok]: Is the big hash encoded with an hash table? (0 ms) [ok]: HGET against the small hash (0 ms) [ok]: HGET against the big hash (53 ms) [ok]: HGET against non existing key (0 ms) [ok]: HSET in update and insert mode (1 ms) [ok]: HSETNX target key missing - small hash (0 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 (0 ms) [ok]: HMSET - small hash (0 ms) [ok]: HMSET - big hash (52 ms) [ok]: HMGET against non existing key and fields (0 ms) [ok]: Hash commands against wrong type (2 ms) [ok]: HMGET - small hash (0 ms) [ok]: HMGET - big hash (51 ms) [ok]: HKEYS - small hash (0 ms) [ok]: HKEYS - big hash (9 ms) [ok]: HVALS - small hash (0 ms) [ok]: HVALS - big hash (2 ms) [ok]: EVAL does not leak in the Lua stack (308 ms) [ok]: HGETALL - small hash (0 ms) [ok]: HGETALL - big hash (21 ms) [ok]: HGETALL against non-existing key (0 ms) [ok]: HDEL and return value (0 ms) [ok]: HDEL - more than a single value (0 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? (0 ms) [ok]: HINCRBY against non existing database key (0 ms) [ok]: HINCRBY HINCRBYFLOAT against non-integer increment value (1 ms) [ok]: HINCRBY against non existing hash key (0 ms) [ok]: HINCRBY against hash key created by hincrby itself (0 ms) [ok]: HINCRBY against hash key originally set with HSET (0 ms) [ok]: HINCRBY over 32bit value (0 ms) [ok]: HINCRBY over 32bit value with over 32bit increment (0 ms) [ok]: HINCRBY fails against hash value with spaces (left) (0 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 (0 ms) [ok]: HINCRBYFLOAT against non existing hash key (1 ms) [ok]: HINCRBYFLOAT against hash key created by hincrby itself (0 ms) [ok]: HINCRBYFLOAT against hash key originally set with HSET (0 ms) [ok]: HINCRBYFLOAT over 32bit value (0 ms) [ok]: HINCRBYFLOAT over 32bit value with over 32bit increment (1 ms) [ok]: HINCRBYFLOAT fails against hash value with spaces (left) (0 ms) [ok]: HINCRBYFLOAT fails against hash value with spaces (right) (0 ms) [ok]: HINCRBYFLOAT fails against hash value that contains a null-terminator in the middle (1 ms) [ok]: HSTRLEN against the small hash (0 ms) [ok]: HSTRLEN against the big hash (49 ms) [ok]: HSTRLEN against non existing field (1 ms) [ok]: HSTRLEN corner cases (1 ms) [ok]: HINCRBYFLOAT over hash-max-listpack-value encoded with a listpack (1 ms) [ok]: Hash ziplist regression test for large keys (0 ms) [ok]: SPOP: We can call scripts rewriting client->argv from Lua (92 ms) [ok]: Hash fuzzing #1 - 10 fields (19 ms) [ok]: Hash fuzzing #2 - 10 fields (14 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]: Consumer group last ID propagation to slave (NOACK=0) (909 ms) [ok]: Blocking timeout following PAUSE should honor the timeout (1004 ms) [ok]: CLIENT NO-TOUCH with BRPOP and RPUSH regression test (3 ms) [38/144 done]: unit/type/list (15 seconds) Testing unit/type/zset [ok]: SET 10000 numeric keys and access all them in reverse order (1092 ms) [ok]: DBSIZE should be 10000 now (0 ms) [ok]: memoryusage of string (6 ms) [ok]: SETNX target key missing (0 ms) [ok]: SETNX target key exists (0 ms) [ok]: SETNX against not-expired volatile key (0 ms) [ok]: Check encoding - listpack (1 ms) [ok]: ZSET basic ZADD and score update - listpack (2 ms) [ok]: ZSET element can't be set to NaN with ZADD - listpack (1 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 (3 ms) [ok]: ZADD XX option without key - listpack (6 ms) [ok]: ZADD XX existing key - listpack (1 ms) [ok]: ZADD XX returns the number of elements actually added - listpack (0 ms) [ok]: ZADD XX updates existing elements score - listpack (0 ms) [ok]: ZADD GT updates existing elements when new scores are greater - listpack (1 ms) [ok]: INCRBYFLOAT: We can call scripts expanding client->argv from Lua (320 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]: Call Redis command with many args from Lua (issue #1764) (1 ms) [ok]: Number conversion precision test (issue #1118) (1 ms) [ok]: ZADD LT XX updates existing elements when new scores are lower and skips new elements - listpack (1 ms) [ok]: String containing number precision test (regression of issue #1118) (0 ms) [ok]: ZADD XX and NX are not compatible - listpack (0 ms) [ok]: Verify negative arg count is error instead of crash (issue #1842) (1 ms) [ok]: ZADD NX with non existing key - listpack (1 ms) [ok]: Scripts can handle commands with incorrect arity (0 ms) [ok]: Correct handling of reused argv (issue #1939) (0 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 (0 ms) [ok]: ZADD NX only add new elements without updating old ones - listpack (2 ms) [ok]: Script with RESP3 map (1 ms) [ok]: ZADD GT and NX are not compatible - listpack (0 ms) [ok]: ZADD LT and NX are not compatible - listpack (1 ms) [ok]: ZADD LT and GT are not compatible - listpack (0 ms) [ok]: ZADD INCR LT/GT replies with nill if score not updated - listpack (1 ms) [ok]: ZADD INCR LT/GT with inf - listpack (3 ms) [ok]: ZADD INCR works like ZINCRBY - listpack (0 ms) [ok]: ZADD INCR works with a single score-element pair - listpack (1 ms) [ok]: ZADD CH option changes return value to all changed elements - listpack (0 ms) [ok]: ZINCRBY calls leading to NaN result in error - listpack (1 ms) [ok]: ZINCRBY against invalid incr value - listpack (1 ms) [ok]: ZADD - Variadic version base case - listpack (0 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 (1 ms) [ok]: ZREM variadic version -- remove elements after key deletion - listpack (1 ms) [ok]: ZRANGE basics - listpack (3 ms) [ok]: ZREVRANGE basics - listpack (3 ms) [ok]: ZRANK/ZREVRANK basics - listpack (2 ms) [ok]: ZRANK - after deletion - listpack (0 ms) [ok]: ZINCRBY - can create a new sorted set - listpack (1 ms) [ok]: ZINCRBY - increment and decrement - listpack (2 ms) [ok]: ZINCRBY return value - listpack (0 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - listpack (6 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - listpack (2 ms) [ok]: ZRANGEBYSCORE with LIMIT - listpack (8 ms) [ok]: ZRANGEBYSCORE with LIMIT and WITHSCORES - listpack (4 ms) [ok]: ZRANGEBYSCORE with non-value min or max - listpack (2 ms) [ok]: ZRANGEBYLEX/ZREVRANGEBYLEX/ZLEXCOUNT basics - listpack (5 ms) [ok]: ZLEXCOUNT advanced - listpack (3 ms) [ok]: ZRANGEBYLEX with LIMIT - listpack (8 ms) [ok]: ZRANGEBYLEX with invalid lex range specifiers - listpack (1 ms) [ok]: ZREMRANGEBYSCORE basics - listpack (13 ms) [ok]: ZREMRANGEBYSCORE with non-value min or max - listpack (0 ms) [ok]: ZREMRANGEBYRANK basics - listpack (7 ms) [ok]: ZREMRANGEBYLEX basics - listpack (16 ms) [ok]: ZUNIONSTORE against non-existing key doesn't set destination - listpack (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF against non-existing key - listpack (1 ms) [ok]: Script return recursive object (107 ms) [ok]: ZUNIONSTORE with empty set - listpack (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with empty set - listpack (2 ms) [ok]: ZUNIONSTORE basics - listpack (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with integer members - listpack (2 ms) [ok]: ZUNIONSTORE with weights - listpack (0 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 (0 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 (1 ms) [ok]: ZINTERSTORE with weights - listpack (0 ms) [ok]: ZINTER with weights - listpack (0 ms) [ok]: ZINTERSTORE with a regular set and weights - listpack (1 ms) [ok]: ZINTERSTORE with AGGREGATE MIN - listpack (0 ms) [ok]: ZINTERSTORE with AGGREGATE MAX - listpack (0 ms) [ok]: ZUNIONSTORE with +inf/-inf scores - listpack (2 ms) [ok]: ZUNIONSTORE with NaN weights - listpack (0 ms) [ok]: ZINTERSTORE with +inf/-inf scores - listpack (1 ms) [ok]: ZINTERSTORE with NaN weights - listpack (1 ms) [ok]: ZDIFFSTORE basics - listpack (0 ms) [ok]: ZDIFF basics - listpack (0 ms) [ok]: ZDIFFSTORE with a regular set - listpack (0 ms) [ok]: ZDIFF subtracting set from itself - listpack (0 ms) [ok]: ZDIFF algorithm 1 - listpack (0 ms) [ok]: ZDIFF algorithm 2 - listpack (1 ms) [ok]: Replica Failover (1013 ms) [ok]: Script check unpack with massive arguments (42 ms) [ok]: Script read key with expiration set (0 ms) [ok]: Script del key with expiration set (0 ms) [ok]: Script ACL check (0 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 (0 ms) [ok]: Try trick readonly table on valkey table (0 ms) [ok]: Try trick readonly table on json table (0 ms) [ok]: Try trick readonly table on cmsgpack table (1 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) [ignore]: large memory flag not provided [ok]: Hash fuzzing #1 - 512 fields (951 ms) [ok]: Consumer group last ID propagation to slave (NOACK=1) (1008 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (402 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (83 ms) [ok]: XADD mass insertion and XLEN (1628 ms) [ok]: XADD with ID 0-0 (1 ms) [ok]: XADD with LIMIT delete entries no more than limit (0 ms) [ok]: XRANGE COUNT works as expected (1 ms) [ok]: XREVRANGE COUNT works as expected (0 ms) [ok]: Timedout script does not cause a false dead client (83 ms) [ok]: Timedout script link is still usable after Lua returns (138 ms) [ok]: AOF rewrite during write load: RDB preamble=no (14835 ms) [ok]: Hash fuzzing #2 - 512 fields (617 ms) [ok]: XRANGE can be used to iterate the whole stream (304 ms) [ok]: WAITAOF when replica switches between masters, fsync: no (4331 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-random) (3566 ms) [ok]: Turning off AOF kills the background writing child if any (105 ms) [ok]: Stress tester for #3343-alike bugs comp: 2 (7377 ms) [ok]: Timedout scripts and unblocked command (394 ms) [ok]: AOF rewrite of list with listpack encoding, string data (106 ms) [ok]: Timedout scripts that modified data can't be killed by SCRIPT KILL (203 ms) [ok]: SHUTDOWN NOSAVE can kill a timedout script anyway (2 ms) [ok]: AOF rewrite of list with quicklist encoding, string data (193 ms) [ok]: AOF rewrite of list with listpack encoding, int data (103 ms) [ok]: Replication tests of XCLAIM with deleted entries (autoclaim=0) (909 ms) [ok]: Replication tests of XCLAIM with deleted entries (autoclaim=1) (2 ms) [ok]: XREADGROUP ACK would propagate entries-read (2 ms) [ok]: Before the replica connects we issue two EVAL commands (0 ms) [ok]: AOF rewrite of list with quicklist encoding, int data (107 ms) [ok]: Stress test the hash ziplist -> hashtable encoding conversion (867 ms) [ok]: AOF rewrite of set with intset encoding, string data (103 ms) [ok]: Hash ziplist of various encodings (85 ms) [ok]: Hash ziplist of various encodings - sanitize dump (3 ms) [ok]: HINCRBYFLOAT does not allow NaN or Infinity (0 ms) [ok]: AOF rewrite of set with hashtable encoding, string data (116 ms) [39/144 done]: unit/type/hash (4 seconds) Testing unit/cluster/update-msg [ok]: Empty stream with no lastid can be rewrite into AOF correctly (104 ms) [ok]: AOF rewrite of set with intset encoding, int data (103 ms) [40/144 done]: unit/type/stream-cgroups (8 seconds) Testing unit/cluster/pubsubshard-slot-migration [ok]: AOF rewrite of set with hashtable encoding, int data (107 ms) [ok]: AOF rewrite of hash with listpack encoding, string data (105 ms) [ok]: Cluster config file latency (6 ms) [ok]: AOF rewrite of hash with hashtable encoding, string data (126 ms) [ok]: SETNX against expired volatile key (2680 ms) [ok]: GETEX EX option (0 ms) [ok]: GETEX PX option (1 ms) [ok]: GETEX EXAT option (0 ms) [ok]: GETEX PXAT option (1 ms) [ok]: GETEX PERSIST option (1 ms) [ok]: GETEX no option (0 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]: AOF rewrite of hash with listpack encoding, int data (53 ms) [ok]: Connect a replica to the master instance (811 ms) [ok]: Now use EVALSHA against the master, with both SHAs (1 ms) [ok]: 'x' should be '4' for EVALSHA being replicated by effects (0 ms) [ok]: Replication of script multiple pushes to list with BLPOP (2 ms) [ok]: GETDEL propagate as DEL command to replica (110 ms) [ok]: EVALSHA replication when first call is readonly (1 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [41/144 done]: unit/latency-monitor (18 seconds) Testing unit/cluster/consistency-check [ok]: XREVRANGE returns the reverse of XRANGE (1597 ms) [ok]: XRANGE exclusive ranges (2 ms) [ok]: XREAD with non empty stream (1 ms) [ok]: Non blocking XREAD with empty streams (0 ms) [ok]: AOF rewrite of hash with hashtable encoding, int data (117 ms) [ok]: GETEX without argument does not propagate to replica (101 ms) [ok]: MGET (1 ms) [ok]: MGET against non existing key (0 ms) [ok]: MGET against non-string key (0 ms) [ok]: GETSET (set new value) (1 ms) [ok]: GETSET (replace old value) (0 ms) [ok]: MSET base case (0 ms) [ok]: MSET/MSETNX wrong number of args (1 ms) [ok]: MSET with already existing - same key twice (0 ms) [ok]: MSETNX with already existent key (0 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 (1 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 (0 ms) [ok]: SETBIT against key with wrong type (1 ms) [ok]: SETBIT with out of range bit offset (0 ms) [ok]: SETBIT with non-bit argument (1 ms) [ok]: AOF rewrite of zset with listpack encoding, string data (106 ms) [ok]: MIGRATE can correctly transfer large values (4969 ms) [ok]: AOF rewrite of zset with skiplist encoding, string data (240 ms) [ok]: Promotion to primary (2940 ms) [ok]: AOF rewrite of zset with listpack encoding, int data (53 ms) [ok]: ZDIFF fuzzing - listpack (2986 ms) [ok]: ZPOPMIN with the count 0 returns an empty array (0 ms) [ok]: ZPOPMIN with negative count (1 ms) [ok]: ZPOPMAX with the count 0 returns an empty array (0 ms) [ok]: ZPOPMAX with negative count (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX with a single key - listpack (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - listpack (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - listpack (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - listpack (1 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - listpack (1 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - listpack (2 ms) [ok]: BZPOPMIN/BZPOPMAX second sorted set has members - listpack (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with a single existing sorted set - listpack (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with multiple existing sorted sets - listpack (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX second sorted set has members - listpack (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX - listpack RESP3 (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - listpack RESP3 (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX - listpack RESP3 (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - listpack RESP3 (1 ms) [ok]: BZPOPMIN/BZPOPMAX - listpack RESP3 (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX - listpack RESP3 (2 ms) [ok]: Check encoding - skiplist (1 ms) [ok]: ZSET basic ZADD and score update - skiplist (0 ms) [ok]: ZSET element can't be set to NaN with ZADD - skiplist (0 ms) [ok]: ZSET element can't be set to NaN with ZINCRBY - skiplist (0 ms) [ok]: ZADD with options syntax error with incomplete pair - skiplist (0 ms) [ok]: ZADD XX option without key - skiplist (0 ms) [ok]: ZADD XX existing key - skiplist (0 ms) [ok]: ZADD XX returns the number of elements actually added - skiplist (1 ms) [ok]: ZADD XX updates existing elements score - skiplist (0 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 (0 ms) [ok]: ZADD GT XX updates existing elements when new scores are greater and skips new elements - skiplist (1 ms) [ok]: ZADD LT XX updates existing elements when new scores are lower and skips new elements - skiplist (0 ms) [ok]: ZADD XX and NX are not compatible - skiplist (0 ms) [ok]: ZADD NX with non existing key - skiplist (1 ms) [ok]: ZADD NX only add new elements without updating old ones - skiplist (0 ms) [ok]: ZADD GT and NX are not compatible - skiplist (0 ms) [ok]: ZADD LT and NX are not compatible - skiplist (1 ms) [ok]: ZADD LT and GT are not compatible - skiplist (0 ms) [ok]: ZADD INCR LT/GT replies with nill if score not updated - skiplist (0 ms) [ok]: ZADD INCR LT/GT with inf - skiplist (1 ms) [ok]: ZADD INCR works like ZINCRBY - skiplist (0 ms) [ok]: ZADD INCR works with a single score-element pair - skiplist (0 ms) [ok]: ZADD CH option changes return value to all changed elements - skiplist (0 ms) [ok]: ZINCRBY calls leading to NaN result in error - skiplist (1 ms) [ok]: SETBIT fuzzing (371 ms) [ok]: ZINCRBY against invalid incr value - skiplist (0 ms) [ok]: GETBIT against non-existing key (0 ms) [ok]: ZADD - Variadic version base case - skiplist (0 ms) [ok]: ZADD - Return value is the number of actually added items - skiplist (0 ms) [ok]: GETBIT against string-encoded key (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]: GETBIT against integer-encoded key (1 ms) [ok]: ZINCRBY does not work variadic even if shares ZADD implementation - skiplist (0 ms) [ok]: ZCARD basics - skiplist (0 ms) [ok]: SETRANGE against non-existing key (1 ms) [ok]: ZREM removes key after last element is removed - skiplist (1 ms) [ok]: ZREM variadic version - skiplist (0 ms) [ok]: ZREM variadic version -- remove elements after key deletion - skiplist (0 ms) [ok]: SETRANGE against string-encoded key (1 ms) [ok]: SETRANGE against integer-encoded key (1 ms) [ok]: ZRANGE basics - skiplist (1 ms) [ok]: SETRANGE against key with wrong type (0 ms) [ok]: SETRANGE with out of range offset (1 ms) [ok]: GETRANGE against non-existing key (0 ms) [ok]: GETRANGE against wrong key type (0 ms) [ok]: ZREVRANGE basics - skiplist (2 ms) [ok]: GETRANGE against string value (1 ms) [ok]: GETRANGE against integer-encoded value (0 ms) [ok]: ZRANK/ZREVRANK basics - skiplist (1 ms) [ok]: ZRANK - after deletion - skiplist (0 ms) [ok]: ZINCRBY - can create a new sorted set - skiplist (1 ms) [ok]: ZINCRBY - increment and decrement - skiplist (0 ms) [ok]: ZINCRBY return value - skiplist (1 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - skiplist (3 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - skiplist (1 ms) [ok]: ZRANGEBYSCORE with LIMIT - skiplist (3 ms) [ok]: ZRANGEBYSCORE with LIMIT and WITHSCORES - skiplist (1 ms) [ok]: ZRANGEBYSCORE with non-value min or max - skiplist (1 ms) [ok]: ZRANGEBYLEX/ZREVRANGEBYLEX/ZLEXCOUNT basics - skiplist (2 ms) [ok]: ZLEXCOUNT advanced - skiplist (1 ms) [ok]: ZRANGEBYLEX with LIMIT - skiplist (4 ms) [ok]: ZRANGEBYLEX with invalid lex range specifiers - skiplist (0 ms) [ok]: MIGRATE can correctly transfer hashes (218 ms) [ok]: ZREMRANGEBYSCORE basics - skiplist (9 ms) [ok]: ZREMRANGEBYSCORE with non-value min or max - skiplist (0 ms) [ok]: ZREMRANGEBYRANK basics - skiplist (3 ms) [ok]: ZREMRANGEBYLEX basics - skiplist (8 ms) [ok]: ZUNIONSTORE against non-existing key doesn't set destination - skiplist (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF against non-existing key - skiplist (0 ms) [ok]: ZUNIONSTORE with empty set - skiplist (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with empty set - skiplist (1 ms) [ok]: ZUNIONSTORE basics - skiplist (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with integer members - skiplist (1 ms) [ok]: ZUNIONSTORE with weights - skiplist (0 ms) [ok]: ZUNION with weights - skiplist (0 ms) [ok]: ZUNIONSTORE with a regular set and weights - skiplist (0 ms) [ok]: ZUNIONSTORE with AGGREGATE MIN - skiplist (0 ms) [ok]: ZUNION/ZINTER with AGGREGATE MIN - skiplist (0 ms) [ok]: ZUNIONSTORE with AGGREGATE MAX - skiplist (0 ms) [ok]: ZUNION/ZINTER with AGGREGATE MAX - skiplist (1 ms) [ok]: ZINTERSTORE basics - skiplist (0 ms) [ok]: ZINTER basics - skiplist (0 ms) [ok]: ZINTERCARD with illegal arguments (1 ms) [ok]: ZINTERCARD basics - skiplist (0 ms) [ok]: ZINTER RESP3 - skiplist (1 ms) [ok]: ZINTERSTORE with weights - skiplist (0 ms) [ok]: ZINTER with weights - skiplist (1 ms) [ok]: ZINTERSTORE with a regular set and weights - skiplist (0 ms) [ok]: ZINTERSTORE with AGGREGATE MIN - skiplist (1 ms) [ok]: ZINTERSTORE with AGGREGATE MAX - skiplist (0 ms) [ok]: ZUNIONSTORE with +inf/-inf scores - skiplist (1 ms) [ok]: ZUNIONSTORE with NaN weights - skiplist (1 ms) [ok]: ZINTERSTORE with +inf/-inf scores - skiplist (1 ms) [ok]: ZINTERSTORE with NaN weights - skiplist (0 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 (0 ms) [ok]: ZDIFF algorithm 1 - skiplist (1 ms) [ok]: ZDIFF algorithm 2 - skiplist (0 ms) [ok]: AOF rewrite of zset with skiplist encoding, int data (122 ms) [ok]: AOF rewrite functions (104 ms) [ok]: BGREWRITEAOF is delayed if BGSAVE is in progress (214 ms) [ok]: BGREWRITEAOF is refused if already in progress (10 ms) [42/144 done]: unit/aofrw (31 seconds) Testing unit/cluster/failure-marking [ok]: XREAD with non empty second stream (927 ms) [ok]: Blocking XREAD waiting new data (1 ms) [ok]: Blocking XREAD waiting old data (0 ms) [ok]: Blocking XREAD will not reply with an empty array (108 ms) [ok]: Blocking XREAD for stream that ran dry (issue #5299) (101 ms) [ok]: XREAD last element from non-empty stream (0 ms) [ok]: XREAD last element from empty stream (1 ms) [ok]: XREAD last element blocking from empty stream (0 ms) [ok]: XREAD last element blocking from non-empty stream (0 ms) [ok]: XREAD last element from multiple streams (1 ms) [ok]: XREAD last element with count > 1 (0 ms) [ok]: XREAD: XADD + DEL should not awake client (1 ms) [ok]: XREAD: XADD + DEL + LPUSH should not awake client (1 ms) [ok]: XREAD with same stream name multiple times should work (0 ms) [ok]: XREAD + multiple XADD inside transaction (2 ms) [ok]: XDEL basic test (0 ms) [ok]: XDEL multiply id test (1 ms) [ok]: GETRANGE fuzzing (736 ms) [ok]: Coverage: SUBSTR (1 ms) [ok]: Extended SET can detect syntax errors (0 ms) [ok]: Extended SET NX option (0 ms) [ok]: Extended SET XX option (1 ms) [ok]: Extended SET GET option (0 ms) [ok]: Extended SET GET option with no previous value (0 ms) [ok]: Extended SET GET option with XX (0 ms) [ok]: Extended SET GET option with XX and no previous value (0 ms) [ok]: Extended SET GET option with NX (0 ms) [ok]: Extended SET GET option with NX and previous value (0 ms) [ok]: Extended SET GET with incorrect type should result in wrong type error (1 ms) [ok]: SET with IFEQ conditional (0 ms) [ok]: SET with IFEQ conditional - non-string current value (0 ms) [ok]: SET with IFEQ conditional - with get (1 ms) [ok]: SET with IFEQ conditional - non string current value with get (0 ms) [ok]: SET with IFEQ conditional - with xx (0 ms) [ok]: SET with IFEQ conditional - with nx (0 ms) [ok]: Extended SET EX option (0 ms) [ok]: Extended SET PX option (1 ms) [ok]: Extended SET EXAT option (0 ms) [ok]: Extended SET PXAT option (0 ms) [ok]: MIGRATE timeout actually works (733 ms) [ok]: SET EXAT / PXAT Expiration time is expired (77 ms) [ok]: Extended SET using multiple options at once (0 ms) [ok]: GETRANGE with huge ranges, Github issue #1844 (0 ms) [ok]: LCS basic (1 ms) [ok]: LCS len (0 ms) [ok]: LCS indexes (1 ms) [ok]: LCS indexes with match len (0 ms) [ok]: LCS indexes with match len and minimum match len (1 ms) [ok]: SETRANGE with huge offset (0 ms) [ok]: APPEND modifies the encoding from int to raw (1 ms) [ok]: DELIFEQ non-existing key (0 ms) [ok]: DELIFEQ existing key, matching value (0 ms) [ok]: DELIFEQ existing key, non-matching value (0 ms) [ok]: DELIFEQ existing key, non-string value (1 ms) [ok]: DELIFEQ propagate as DEL command to replica (94 ms) [ok]: MIGRATE can migrate multiple keys at once (219 ms) [ok]: MIGRATE with multiple keys must have empty key arg (1 ms) [43/144 done]: unit/type/string (8 seconds) Testing unit/cluster/links [ok]: MIGRATE with multiple keys migrate just existing ones (221 ms) [ok]: WAITAOF when replica switches between masters, fsync: everysec (3336 ms) [ok]: MIGRATE with multiple keys: stress command rewriting (225 ms) [ok]: MIGRATE with multiple keys: delete just ack keys (227 ms) [ok]: Connect a replica to the master instance (811 ms) [ok]: Redis.replicate_commands() can be issued anywhere now (1 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 commands from Lua (4 ms) [ok]: PRNG is seeded randomly for command replication (0 ms) [ok]: Using side effects is not a problem with command replication (0 ms) [ok]: MIGRATE AUTH: correct and wrong password cases (225 ms) [44/144 done]: unit/dump (24 seconds) Testing unit/cluster/misc [ok]: XDEL fuzz test (1484 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-lru) (4465 ms) [ok]: Test scripting debug protocol parsing (1 ms) [ok]: Test scripting debug lua stack overflow (1 ms) [ok]: Test scripting debug lua server invocations (2 ms) [ok]: Hash with TTL fields migrates correctly between nodes (12 ms) [ok]: Lua scripts eviction does not generate many scripts (65 ms) [ok]: Lua scripts eviction is plain LRU (34 ms) [ok]: Lua scripts eviction does not affect script load (130 ms) [ok]: Lua scripts promoted from eval to script load (66 ms) [ok]: ZDIFF fuzzing - skiplist (3542 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 (0 ms) [ok]: Basic ZPOPMIN/ZPOPMAX with a single key - skiplist (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - skiplist (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - skiplist (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist (0 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - skiplist (1 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - skiplist (1 ms) [ok]: BZPOPMIN/BZPOPMAX second sorted set has members - skiplist (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with a single existing sorted set - skiplist (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with multiple existing sorted sets - skiplist (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX second sorted set has members - skiplist (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX - skiplist RESP3 (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - skiplist RESP3 (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX - skiplist RESP3 (0 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist RESP3 (1 ms) [ok]: BZPOPMIN/BZPOPMAX - skiplist RESP3 (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX - skiplist RESP3 (1 ms) [ok]: ZPOP/ZMPOP against wrong type (1 ms) [ok]: ZMPOP with illegal argument (1 ms) [ok]: WAITAOF when replica switches between masters, fsync: always (2332 ms) [ok]: ZMPOP propagate as pop with count command to replica (100 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP3 (1 ms) [ok]: test RESP2/2 big number protocol parsing (0 ms) [ok]: test RESP2/2 malformed big number protocol parsing (1 ms) [ok]: test RESP2/2 map protocol parsing (0 ms) [ok]: test RESP2/2 set protocol parsing (0 ms) [ok]: test RESP2/2 double protocol parsing (0 ms) [ok]: test RESP2/2 null protocol parsing (0 ms) [ok]: test RESP2/2 verbatim protocol parsing (1 ms) [ok]: test RESP2/2 true protocol parsing (0 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (0 ms) [ok]: test RESP2/3 malformed big number protocol parsing (0 ms) [ok]: test RESP2/3 map protocol parsing (0 ms) [ok]: test RESP2/3 set protocol parsing (0 ms) [ok]: test RESP2/3 double protocol parsing (0 ms) [ok]: test RESP2/3 null protocol parsing (0 ms) [ok]: test RESP2/3 verbatim protocol parsing (0 ms) [ok]: test RESP2/3 true protocol parsing (0 ms) [ok]: test RESP2/3 false protocol parsing (0 ms) [ok]: test RESP3/2 big number protocol parsing (0 ms) [ok]: test RESP3/2 malformed big number protocol parsing (1 ms) [ok]: test RESP3/2 map protocol parsing (0 ms) [ok]: test RESP3/2 set protocol parsing (0 ms) [ok]: test RESP3/2 double protocol parsing (0 ms) [ok]: test RESP3/2 null protocol parsing (0 ms) [ok]: test RESP3/2 verbatim protocol parsing (0 ms) [ok]: test RESP3/2 true protocol parsing (0 ms) [ok]: test RESP3/2 false protocol parsing (0 ms) [ok]: test RESP3/3 big number protocol parsing (0 ms) [ok]: test RESP3/3 malformed big number protocol parsing (0 ms) [ok]: test RESP3/3 map protocol parsing (1 ms) [ok]: test RESP3/3 set protocol parsing (0 ms) [ok]: test RESP3/3 double protocol parsing (0 ms) [ok]: test RESP3/3 null protocol parsing (0 ms) [ok]: test RESP3/3 verbatim protocol parsing (0 ms) [ok]: test RESP3/3 true protocol parsing (0 ms) [ok]: test RESP3/3 false protocol parsing (0 ms) [ok]: test resp3 attribute protocol parsing (0 ms) [ok]: Script block the time during execution (10 ms) [ok]: Script delete the expired key (3 ms) [ok]: TIME command using cached time (10 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP3 (194 ms) [ok]: ZMPOP readraw in RESP3 (2 ms) [ok]: Script block the time in some expiration related commands (82 ms) [ok]: GEOSEARCH fuzzy test - bybox (12716 ms) [ok]: RESTORE expired keys with expiration time (11 ms) [ok]: GEOSEARCH box edges fuzzy test (27 ms) [45/144 done]: unit/geo (31 seconds) Testing unit/cluster/auto-failover-on-shutdown [ok]: TTL Persistence in AOF aof-use-rdb-preamble yes (554 ms) [ok]: BZMPOP readraw in RESP3 (199 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP2 (1 ms) [ok]: Shebang support for lua engine (0 ms) [ok]: Unknown shebang option (1 ms) [ok]: Unknown shebang flag (0 ms) [ok]: allow-oom shebang flag (1 ms) [ok]: no-writes shebang flag (1 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP2 (199 ms) [ok]: ZMPOP readraw in RESP2 (2 ms) [ok]: BZMPOP readraw in RESP2 (201 ms) [ok]: ZINTERSTORE regression with two sets, intset+hashtable (0 ms) [ok]: ZUNIONSTORE regression, should not create NaN in scores (0 ms) [ok]: ZINTERSTORE #516 regression, mixed sets and ziplist zsets (1 ms) [ok]: ZUNIONSTORE result is sorted (111 ms) [ok]: ZUNIONSTORE/ZINTERSTORE/ZDIFFSTORE error if using WITHSCORES (0 ms) [ok]: ZMSCORE retrieve (1 ms) [ok]: ZMSCORE retrieve from empty set (0 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 (0 ms) [ok]: ZSCORE - listpack (20 ms) [ok]: ZMSCORE - listpack (18 ms) [ok]: ZSCORE after a DEBUG RELOAD - listpack (27 ms) [ok]: ZSET sorting stresser - listpack (28 ms) [ok]: TTL Persistence in AOF aof-use-rdb-preamble no (541 ms) [ok]: setup replication for following tests (809 ms) [ok]: no-writes shebang flag on replica (911 ms) [ok]: not enough good replicas (2 ms) [ok]: not enough good replicas state change during long script (623 ms) [ok]: allow-stale shebang flag (1 ms) [ok]: reject script do not cause a Lua stack leak (4 ms) [ok]: WAIT and WAITAOF replica multiple clients unblock - reuse last result (980 ms) [ok]: Consistent eval error reporting (8 ms) [ok]: LUA redis.error_reply API (1 ms) [ok]: LUA redis.error_reply API with empty string (0 ms) [ok]: LUA redis.status_reply API (0 ms) [ok]: LUA test pcall (0 ms) [ok]: LUA test pcall with error (1 ms) [ok]: LUA test pcall with non string/integer arg (0 ms) [ok]: LUA test trim string as expected (1 ms) [ok]: EVAL - Scripts support NULL byte (0 ms) [ok]: EVAL - explicit error() call handling (0 ms) [46/144 done]: unit/wait (37 seconds) Testing unit/cluster/scripting [ok]: HGETEX EX active expiry with single field (1106 ms) [47/144 done]: unit/scripting (37 seconds) Testing unit/cluster/manual-failover [ok]: Stress tester for #3343-alike bugs comp: 1 (7968 ms) [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 128 element sorted set - listpack (1859 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (167 ms) [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (249 ms) [ok]: ZSETs skiplist implementation backlink consistency test - listpack (22 ms) [ok]: HGETEX EX active expiry with multiple fields (1106 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-lru) (5108 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - listpack (614 ms) [ok]: BZPOPMIN, ZADD + DEL should not awake blocked client (1 ms) [ok]: BZPOPMIN, ZADD + DEL + SET should not awake blocked client (1 ms) [ok]: BZMPOP_MIN, ZADD + DEL should not awake blocked client (1 ms) [ok]: BZMPOP_MIN, ZADD + DEL + SET should not awake blocked client (1 ms) [ok]: Eval scripts with shebangs and functions default to no cross slots (0 ms) [ok]: Cross slot commands are allowed by default for eval scripts and with allow-cross-slot-keys flag (1 ms) [ok]: Cross slot commands are also blocked if they disagree with pre-declared keys (1 ms) [ok]: Cross slot commands are allowed by default if they disagree with pre-declared keys (0 ms) [ok]: Function no-cluster flag (1 ms) [ok]: Script no-cluster flag (0 ms) [ok]: Calling cluster slots in scripts is OK (0 ms) [ok]: Calling cluster shards in scripts is OK (0 ms) [48/144 done]: unit/cluster/scripting (2 seconds) Testing unit/cluster/slave-selection [ok]: HGETEX EX active expiry removes entire key when last field expires (1105 ms) [ok]: HGETEX EX and HPEXPIRE (1 ms) Time: 1002 [ok]: BZPOPMIN unblock but the key is expired and then block again - reprocessing command (1003 ms) [ok]: BZPOPMIN with same key multiple times should work (4 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZPOPMIN (1 ms) [ok]: BZPOPMIN with variadic ZADD (3 ms) [ok]: HGETEX PX active expiry with single field (1107 ms) [ok]: BZPOPMIN with zero timeout should block indefinitely (1001 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZMPOP_MIN (1 ms) [ok]: BZMPOP_MIN with variadic ZADD (1 ms) [ok]: Cluster is up (54 ms) [ok]: Migrate a slot, verify client receives sunsubscribe on primary serving the slot. (10 ms) [ok]: Client subscribes to multiple channels, migrate a slot, verify client receives sunsubscribe on primary serving the slot. (10 ms) [ok]: Migrate a slot, verify client receives sunsubscribe on replica serving the slot. (38 ms) [ok]: Move a replica to another primary, verify client receives sunsubscribe on replica serving the slot. (32 ms) [ok]: Delete a slot, verify sunsubscribe message (2 ms) [ok]: Reset cluster, verify sunsubscribe message (6 ms) [ok]: Cluster is up (92 ms) [ok]: Cluster is writable (80 ms) [ok]: Instance #5 is a slave (0 ms) [ok]: Instance #5 synced with the master (1 ms) [ok]: Killing one master node (9 ms) [ok]: HGETEX PX active expiry with multiple fields (1106 ms) [ok]: BZMPOP_MIN with zero timeout should block indefinitely (1001 ms) [ok]: ZSCORE - skiplist (13 ms) [ok]: ZMSCORE - skiplist (13 ms) [ok]: ZSCORE after a DEBUG RELOAD - skiplist (17 ms) [ok]: ZSET sorting stresser - skiplist (17 ms) [ok]: Cluster should start ok (89 ms) [ok]: Cluster is writable (58 ms) Waiting for process 72044 to exit... [ok]: Broadcast message across a cluster shard while a cluster link is down (103 ms) [ok]: HGETEX PX active expiry removes entire key when last field expires (1106 ms) [ok]: HGETEX PX and HPEXPIRE (1 ms) [49/144 done]: unit/cluster/pubsubshard-slot-migration (12 seconds) Testing unit/cluster/cluster-reliable-meet [ok]: HGETEX EXAT active expiry with single field (203 ms) [ok]: Cluster nodes are reachable (1 ms) [ok]: Before slots allocation, all nodes report cluster failure (17 ms) [ok]: Cluster nodes haven't met each other (1 ms) [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 100 element sorted set - skiplist (1433 ms) [ok]: Allocate slots (115 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (132 ms) [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (188 ms) [ok]: ZSETs skiplist implementation backlink consistency test - skiplist (14 ms) [ok]: XRANGE fuzzing (10351 ms) [ok]: XREVRANGE regression test for issue #5006 (1 ms) [ok]: XREAD streamID edge (no-blocking) (0 ms) [ok]: XREAD streamID edge (blocking) (2 ms) [ok]: XADD streamID edge (0 ms) [ok]: Key lazy expires during key migration (16 ms) [ok]: Coverage: Basic cluster commands (4 ms) [ok]: XTRIM with MAXLEN option basic test (76 ms) [ok]: XADD with LIMIT consecutive calls (6 ms) [ok]: XTRIM with ~ is limited (6 ms) [ok]: XTRIM without ~ is not limited (6 ms) [ok]: XTRIM without ~ and with LIMIT (6 ms) [ok]: XTRIM with LIMIT delete entries no more than limit (0 ms) [ok]: XADD with MAXLEN > xlen can propagate correctly (7 ms) [ok]: HGETEX EXAT active expiry with multiple fields (1005 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-random) (5361 ms) [ok]: XADD with MINID > lastid can propagate correctly (8 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - skiplist (564 ms) [ok]: BZPOPMIN, ZADD + DEL should not awake blocked client (2 ms) [ok]: BZPOPMIN, ZADD + DEL + SET should not awake blocked client (1 ms) [ok]: BZMPOP_MIN, ZADD + DEL should not awake blocked client (1 ms) [ok]: BZMPOP_MIN, ZADD + DEL + SET should not awake blocked client (1 ms) [ok]: XADD with ~ MAXLEN can propagate correctly (7 ms) [ok]: XADD with ~ MAXLEN and LIMIT can propagate correctly (8 ms) [ok]: XADD with ~ MINID can propagate correctly (8 ms) [ok]: Stress tester for #3343-alike bugs comp: 0 (7590 ms) [ok]: HGETEX EXAT active expiry removes entire key when last field expires (1006 ms) [ok]: HGETEX EXAT and HPEXPIRE (0 ms) [ok]: XADD with ~ MINID and LIMIT can propagate correctly (8 ms) [ok]: Wait for failover (3381 ms) [ok]: Verify that single primary marks replica as failed (3197 ms) Time: 1003 [ok]: BZPOPMIN unblock but the key is expired and then block again - reprocessing command (1003 ms) [ok]: BZPOPMIN with same key multiple times should work (1 ms) [ok]: Fuzzing dense/sparse encoding: Server should always detect errors (42627 ms) [ok]: PFADD, PFCOUNT, PFMERGE type checking works (0 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZPOPMIN (0 ms) [ok]: PFMERGE results on the cardinality of union of sets (1 ms) [ok]: PFMERGE on missing source keys will create an empty destkey (0 ms) [ok]: BZPOPMIN with variadic ZADD (0 ms) [ok]: PFMERGE with one empty input key, create an empty destkey (1 ms) [ok]: PFMERGE with one non-empty input key, dest key is actually one of the source keys (0 ms) [ok]: Cluster should eventually be up again (137 ms) [ok]: Slave expired keys is loaded when restarted: appendonly=no (3124 ms) [ok]: XTRIM with ~ MAXLEN can propagate correctly (8 ms) [ok]: Cluster is writable (65 ms) [ok]: Instance #5 is now a master (0 ms) [ok]: Killing the new master #5 (9 ms) [ok]: XADD can CREATE an empty stream (1 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 (0 ms) [ok]: XSETID cannot run with a maximal tombstone but without an offset (0 ms) [ok]: XSETID errors on negative offset (0 ms) [ok]: XSETID cannot set the maximal tombstone with larger ID (1 ms) [ok]: XSETID cannot set the offset to less than the length (0 ms) [ok]: XSETID cannot set smaller ID than current MAXDELETEDID (1 ms) [ok]: XADD advances the entries-added counter and sets the recorded-first-entry-id (1 ms) [ok]: XDEL/TRIM are reflected by recorded first entry (2 ms) [ok]: Maximum XDEL ID behaves correctly (1 ms) [ok]: XADD with artial ID with maximal seq (0 ms) [ok]: Each node has two links with each peer (3 ms) [ok]: Validate cluster links format (1 ms) [ok]: MEET is reliable when target drops the initial MEETs (2577 ms) [ok]: PFMERGE results with simd (764 ms) [ok]: Empty stream can be rewrite into AOF correctly (104 ms) [ok]: HGETEX PXAT active expiry with single field (1108 ms) [ok]: Stream can be rewrite into AOF correctly after XDEL lastid (104 ms) [ok]: BZPOPMIN with zero timeout should block indefinitely (1002 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZMPOP_MIN (1 ms) [ok]: BZMPOP_MIN with variadic ZADD (1 ms) [ok]: XGROUP HELP should not have unexpected options (0 ms) [ok]: XINFO HELP should not have unexpected options (0 ms) [50/144 done]: unit/type/stream (20 seconds) Testing unit/cluster/failover2 [ok]: Failover on shutdown hands over primaryship to a fully sync'd replica - shutdown - shutdown-timeout: 0 (1029 ms) [ok]: BZMPOP_MIN with zero timeout should block indefinitely (1002 ms) [ok]: BZPOP/BZMPOP against wrong type (1 ms) [ok]: BZMPOP with illegal argument (2 ms) [ok]: BZMPOP with multiple blocked clients (3 ms) [ok]: Unable to find a replica to perform an auto failover - shutdown (20 ms) [ok]: HGETEX PXAT active expiry with multiple fields (1105 ms) [ok]: BZMPOP propagate as pop with count command to replica (191 ms) [ok]: BZMPOP should not blocks on non key arguments - #10762 (2 ms) [ok]: ZSET skiplist order consistency when elements are moved (552 ms) [ok]: ZRANGESTORE basic (1 ms) [ok]: ZRANGESTORE RESP3 (0 ms) [ok]: ZRANGESTORE range (0 ms) [ok]: ZRANGESTORE BYLEX (1 ms) [ok]: ZRANGESTORE BYSCORE (0 ms) [ok]: ZRANGESTORE BYSCORE LIMIT (0 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 (0 ms) [ok]: ZRANGESTORE - empty range (0 ms) [ok]: ZRANGESTORE BYLEX - empty range (0 ms) [ok]: ZRANGESTORE BYSCORE - empty range (0 ms) [ok]: ZRANGE BYLEX (1 ms) [ok]: ZRANGESTORE invalid syntax (0 ms) [ok]: ZRANGESTORE with zset-max-listpack-entries 0 #10767 case (0 ms) [ok]: ZRANGESTORE with zset-max-listpack-entries 1 dst key should use skiplist encoding (1 ms) [ok]: ZRANGE invalid syntax (0 ms) [ok]: ZRANDMEMBER - listpack (7 ms) [ok]: ZRANDMEMBER - skiplist (5 ms) [ok]: ZRANDMEMBER with RESP3 (1 ms) [ok]: ZRANDMEMBER count of 0 is handled correctly (0 ms) [ok]: ZRANDMEMBER with against non existing key (0 ms) [ok]: ZRANDMEMBER count overflow (0 ms) [ok]: ZRANDMEMBER count of 0 is handled correctly - emptyarray (0 ms) [ok]: ZRANDMEMBER with against non existing key - emptyarray (0 ms) [ok]: ZRANDMEMBER with - skiplist (168 ms) [ok]: ZRANDMEMBER with - listpack (173 ms) [ok]: zset score double range (1 ms) [ok]: zunionInterDiffGenericCommand acts on SET and ZSET (8 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - single (4 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - multiple (0 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - single_multiple (1 ms) [ok]: Slave expired keys is loaded when restarted: appendonly=yes (3123 ms) [ok]: HGETEX PXAT active expiry removes entire key when last field expires (1106 ms) [ok]: HGETEX PXAT and HPEXPIRE (1 ms) [51/144 done]: unit/type/zset (21 seconds) Testing unit/cluster/transactions-on-replica [ok]: Cluster should be down now (3232 ms) [ok]: Restarting the old master node (1 ms) [ok]: Instance #0 gets converted into a slave (3 ms) [ok]: Restarting the new master node (0 ms) [ok]: HGETEX PERSIST removes expiry and prevents active expiry (201 ms) [ok]: Cluster is up (95 ms) [ok]: HGETEX overwrite existing expiry with active expiry (202 ms) [ok]: Cluster is writable (51 ms) [ok]: Instance #5 is a slave (1 ms) [ok]: Instance #5 synced with the master (1 ms) W[ok]: Cluster is up again (400 ms) WW[ok]: PFCOUNT multiple-keys merge returns cardinality of union #1 (3208 ms) WWW[52/144 done]: unit/cluster/consistency-check (19 seconds) Testing unit/cluster/cluster-multiple-meets W[ok]: HGETEX EX keyspace notifications for active expiry (1106 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-ttl) (5826 ms) W[ok]: Cluster nodes are reachable (0 ms) [ok]: Before slots allocation, all nodes report cluster failure (17 ms) [ok]: Cluster nodes haven't met each other (0 ms) [ok]: Allocate slots (78 ms) WW[ok]: Send CLUSTER FAILOVER to #5, during load (1653 ms) [ok]: Wait for failover (18 ms) [ok]: Cluster should eventually be up again (82 ms) [ok]: Cluster is writable (49 ms) [ok]: Instance #5 is now a master (1 ms) [53/144 done]: unit/cluster/update-msg (20 seconds) Testing unit/cluster/human-announced-nodename [ok]: PFCOUNT multiple-keys merge returns cardinality of union #2 (1733 ms) [ok]: HGETEX PX keyspace notifications for active expiry (1108 ms) [ok]: HGETEX EXAT keyspace notifications for active expiry (103 ms) [ok]: Verify 50000 keys for consistency with logical content (845 ms) [ok]: Instance #0 gets converted into a slave (18 ms) [ok]: PFDEBUG GETREG returns the HyperLogLog raw registers (660 ms) [ok]: PFADD / PFCOUNT cache invalidation works (1 ms) [54/144 done]: unit/hyperloglog (51 seconds) Testing unit/cluster/many-slot-migration [ok]: HGETEX PXAT keyspace notifications for active expiry (1107 ms) [ok]: Cluster is up (123 ms) [ok]: The first master has actually two slaves (0 ms) [ok]: CLUSTER SLAVES and CLUSTER REPLICAS output is consistent (0 ms) [ok]: Slaves of #0 are instance #5 and #10 as expected (1 ms) [ok]: Instance #5 and #10 synced with the master (1 ms) [ok]: Slaves are both able to receive and acknowledge writes (10 ms) [ok]: Multiple MEETs from Node 1 to Node 0 should work (2610 ms) [55/144 done]: unit/cluster/cluster-multiple-meets (3 seconds) Testing unit/cluster/manual-takeover [ok]: Set cluster human announced nodename and let it propagate (107 ms) [ok]: HGETEX keyspace notification when key deleted with active expiry (1107 ms) [ok]: HSETEX EX single field expires leaving other fields intact (1106 ms) [ok]: Cross-slot transaction (1 ms) [ok]: Cluster is up (90 ms) [ok]: Disconnect link when send buffer limit reached (8989 ms) [ok]: Link memory increases with publishes (564 ms) [ok]: HSETEX EX multiple fields expire leaving non-expired fields intact (1107 ms) [56/144 done]: unit/cluster/misc (22 seconds) Testing unit/cluster/half-migrated-slot [ok]: Link memory resets after publish messages flush (555 ms) [57/144 done]: unit/cluster/links (24 seconds) Testing unit/cluster/base [ok]: HSETEX EX hash key deleted when all fields expire (1105 ms) [ok]: HSETEX EX after HSETEX EX (1 ms) [ok]: Human nodenames are visible in log messages (3530 ms) [ok]: ziplist implementation: value encoding and backlink (11882 ms) [ok]: Cluster nodes are reachable (2 ms) [58/144 done]: unit/cluster/human-announced-nodename (7 seconds) Testing unit/cluster/pubsub [ok]: Cluster Join and auto-discovery test (459 ms) [ok]: Before slots allocation, all nodes report cluster failure (47 ms) [ok]: Different nodes have different IDs (1 ms) [ok]: Handshake eventually succeeds after node handshake timeout on both sides with inconsistent view of the cluster (9052 ms) [ok]: It is possible to perform slot allocation (241 ms) [ok]: After the join, every node gets a different config epoch (9 ms) [ok]: HSETEX PX single field expires leaving other fields intact (1106 ms) [ok]: Cluster is up (19 ms) [ok]: Half init migration in 'migrating' is fixable (28 ms) [ok]: Half init migration in 'importing' is fixable (29 ms) [ok]: Set many keys (3267 ms) [ok]: Init migration and move key (67 ms) [ok]: Move key again (5 ms) [ok]: Cluster is up (66 ms) [ok]: Half-finish migration (56 ms) [ok]: Move key back (3 ms) [ok]: Cluster is writable (50 ms) [ok]: Killing one primary node (10 ms) [ok]: Half-finish importing (58 ms) [59/144 done]: unit/cluster/half-migrated-slot (3 seconds) Testing unit/cluster/cluster-slots [ok]: Cluster should start ok (19 ms) [ok]: Can't read from replica without READONLY (2 ms) [ok]: Can't read from replica after READWRITE (0 ms) [ok]: Can read from replica after READONLY (0 ms) [ok]: Can perform HSET primary and HGET from replica (1 ms) [ok]: Can MULTI-EXEC transaction of HGET operations from replica (1 ms) [ok]: MULTI-EXEC with write operations is MOVED (0 ms) [ok]: maxmemory - policy volatile-lru should only remove volatile keys. (8846 ms) [ok]: HSETEX PX multiple fields expire leaving non-expired fields intact (1106 ms) [ok]: Failover on shutdown hands over primaryship to a fully sync'd replica - sigterm - shutdown-timeout: 0 (1026 ms) [ok]: Unable to find a replica to perform an auto failover - sigterm (110 ms) [ok]: HSETEX PX hash key deleted when all fields expire (1106 ms) [ok]: HSETEX PX after HSETEX PX (0 ms) [ok]: HSETEX EXAT single field expires leaving other fields intact (203 ms) [ok]: write command is QUEUED, then EXEC should be MOVED after failover (2009 ms) [ok]: read-only blocking operations from replica (2 ms) [ok]: reply MOVED when eval from replica for update (0 ms) [ok]: HSETEX EXAT multiple fields expire leaving non-expired fields intact (1006 ms) [ok]: Keys are accessible (3340 ms) [ok]: Nodes should report cluster_state is ok now (3979 ms) [ok]: Sanity for CLUSTER COUNTKEYSINSLOT (0 ms) [60/144 done]: unit/cluster/transactions-on-replica (13 seconds) Testing unit/cluster/noaddr [ok]: It is possible to write and read from the cluster (70 ms) [ok]: CLUSTER RESET SOFT test (5 ms) [ok]: Coverage: CLUSTER HELP (0 ms) [ok]: Coverage: ASKING (0 ms) [ok]: CLUSTER SLAVES and CLUSTER REPLICAS with zero replicas (0 ms) [61/144 done]: unit/cluster/base (6 seconds) Testing unit/cluster/cluster-nodes-slots [ok]: HSETEX EXAT hash key deleted when all fields expire (1006 ms) [ok]: HSETEX EXAT after HSETEX EXAT (0 ms) [ok]: Write data while slave #10 is paused and can't receive it (10011 ms) [ok]: Verify that multiple primaries mark replica as failed (6243 ms) [ok]: ziplist implementation: encoding stress testing (5985 ms) [62/144 done]: unit/type/list-3 (41 seconds) Testing unit/cluster/cross-version-cluster [ignore]: Other server path not provided [ignore]: Other server path not provided [63/144 done]: unit/cluster/cross-version-cluster (0 seconds) Testing unit/cluster/no-failover-option [ok]: HSETEX PXAT single field expires leaving other fields intact (1106 ms) [ok]: Cluster is up (110 ms) [ok]: Cluster is writable (67 ms) [ok]: Instance #5 is a slave (1 ms) [ok]: Instance #5 synced with the master (0 ms) [ok]: Make instance #0 unreachable without killing it (1 ms) [ok]: Send CLUSTER FAILOVER to instance #5 (0 ms) [ok]: Cluster is up (108 ms) [ok]: Cluster is writable (54 ms) [ok]: Killing majority of master nodes (34 ms) [ok]: HSETEX PXAT multiple fields expire leaving non-expired fields intact (1107 ms) [ok]: Wait for failover (6210 ms) [ok]: Killing the new primary node (12 ms) [ok]: Init migration of many slots (3071 ms) [ok]: Cluster should eventually be up again (78 ms) [ok]: Instance #5 is still a slave after some time (no failover) (1001 ms) [ok]: HSETEX PXAT hash key deleted when all fields expire (1105 ms) [ok]: HSETEX PXAT after HSETEX PXAT (0 ms) [ok]: HPERSIST cancels HSETEX expiry preventing field deletion (201 ms) [ok]: Wait for instance #0 to return back alive (996 ms) [ok]: HSETEX overwrites existing field expiry with new shorter expiry (201 ms) [ok]: HSETEX EX - keyspace notifications fired on field expiry (1108 ms) [ok]: Cluster should eventually be down (3235 ms) [ok]: Use takeover to bring slaves back (10 ms) [ok]: HSETEX PX - keyspace notifications fired on field expiry (1108 ms) [ok]: Handshake eventually succeeds after node handshake timeout on one side with inconsistent view of the cluster (8643 ms) [64/144 done]: unit/cluster/cluster-reliable-meet (26 seconds) Testing unit/cluster/sharded-pubsub [ok]: Test publishing to master (4 ms) [ok]: Test publishing to slave (3 ms) [ok]: Wait for instance #5 (and not #10) to turn into a master (6343 ms) [ok]: Wait for the node #10 to return alive before ending the test (1 ms) [ok]: Cluster should eventually be up again (225 ms) [ok]: Node #10 should eventually replicate node #5 (2 ms) [ok]: HSETEX EXAT - keyspace notifications fired on field expiry (1007 ms) [ok]: HSETEX PXAT - keyspace notifications fired on field expiry (1107 ms) [ok]: HSETEX - keyspace notifications include del event when hash key removed (202 ms) [ok]: wait for new failover (5913 ms) [ok]: Restarting the previously killed primary nodes (3 ms) [ok]: Make sure there is no failover timeout (1 ms) [ok]: Active expiry deletes entire key when only field expires (203 ms) [ok]: Cluster should eventually be up again (3085 ms) [ok]: Cluster is writable (64 ms) [ok]: Instance #5, #6, #7 are now masters (1 ms) [ok]: Restarting the previously killed master nodes (2 ms) [ok]: Instance #0, #1, #2 gets converted into a slaves (11 ms) [ok]: maxmemory - policy volatile-lfu should only remove volatile keys. (11991 ms) [ok]: Active expiry removes only expired field while preserving others (203 ms) [65/144 done]: unit/cluster/manual-takeover (19 seconds) Testing unit/cluster/pubsubshard [ok]: Test cluster info stats for publish (1 ms) [66/144 done]: unit/cluster/pubsub (15 seconds) Testing unit/cluster/cluster-migrateslots [ok]: Active expiry reclaims memory correctly with large hash containing many fields (1290 ms) [ok]: Cluster should start ok (46 ms) [ok]: Continuous slots distribution (3 ms) [ok]: Discontinuous slots distribution (5 ms) [ok]: NOADDR nodes will be marked as FAIL (416 ms) [ok]: Active expiry handles fields with different TTL values correctly (1107 ms) [67/144 done]: unit/cluster/noaddr (12 seconds) Testing unit/cluster/slot-migration-response [ok]: Active expiry removes only specified fields leaving others intact (201 ms) [ok]: Field TTL is removed when field value is overwritten with HSET (0 ms) [68/144 done]: unit/cluster/cluster-nodes-slots (11 seconds) Testing unit/cluster/multidb [ok]: Field TTL is cleared when field is deleted and recreated (201 ms) [ok]: Cluster is up (70 ms) [ok]: Instance #3 is a replica (1 ms) [ok]: Instance #3 synced with the master (1 ms) [ok]: The nofailover flag is propagated (54 ms) [ok]: Killing one master node (12 ms) [ok]: HEXPIRE active expiry on single field (1106 ms) [ok]: Cluster is up (21 ms) [ok]: HEXPIRE active expiry with multiple fields (1107 ms) [ok]: Set many keys in the cluster (743 ms) [ok]: Test cluster responses during migration of slot x (3 ms) [69/144 done]: unit/cluster/slot-migration-response (3 seconds) Testing unit/cluster/cluster-response-tls [70/144 done]: unit/cluster/cluster-response-tls (0 seconds) Testing unit/cluster/replica-migration [ok]: HEXPIRE active expiry removes entire key when last field expires (1105 ms) [ok]: Cluster should be still down after some time (3123 ms) [ok]: Instance #3 is still a replica (1 ms) [ok]: Restarting the previously killed master node (1 ms) [71/144 done]: unit/cluster/no-failover-option (15 seconds) Testing unit/cluster/slot-stats [ok]: HEXPIRE active expiry with non-existing fields (1502 ms) [ok]: client evicted due to client tracking prefixes (64196 ms) [ok]: client evicted due to output buf (7 ms) [ok]: client no-evict on (30 ms) [ok]: client no-evict off (35 ms) [ok]: Sharded pubsub publish behavior within multi/exec (0 ms) [ok]: Sharded pubsub within multi/exec with cross slot operation (0 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 (0 ms) [ok]: Sharded pubsub publish behavior within multi/exec with write operation on replica (1 ms) [ok]: SSUBSCRIBE client killed during transaction (0 ms) [ok]: Cluster is up (164 ms) [ok]: Cluster is writable (58 ms) [ok]: Instance #5 is a slave (1 ms) [ok]: Instance #5 synced with the master (0 ms) [ok]: Make instance #0 unreachable without killing it (0 ms) [ok]: avoid client eviction when client is freed by output buffer limit (77 ms) [ok]: Send CLUSTER FAILOVER to instance #5 (0 ms) [ok]: Instance #5 is a master after some time (54 ms) [ok]: decrease maxmemory-clients causes client eviction (409 ms) [ok]: HEXPIRE active expiry with mixed existing and non-existing fields (1105 ms) [72/144 done]: unit/cluster/sharded-pubsub (11 seconds) Testing unit/cluster/failover [ok]: evict clients only until below limit (108 ms) [ok]: evict clients in right order (large to small) (112 ms) [ok]: client total memory grows during client no-evict (127 ms) [ok]: client total memory grows during maxmemory-clients disabled (125 ms) [73/144 done]: unit/client-eviction (69 seconds) Testing unit/cluster/replica-redirect [ok]: Wait for instance #0 to return back alive (1946 ms) [ok]: Failover on shutdown hands over primaryship to a fully sync'd replica - shutdown - shutdown-timeout: 10 (10108 ms) [ok]: Unable to find a replica to perform an auto failover - shutdown (20 ms) [ok]: HEXPIRE active expiry with already expired fields (2212 ms) [ok]: CLUSTER SLOT-STATS cpu-usec reset upon CONFIG RESETSTAT. (2656 ms) [ok]: Pub/Sub shard basics (1 ms) [ok]: client can't subscribe to multiple shard channels across different slots in same call (1 ms) [ok]: client can subscribe to multiple shard channels across different slots in separate call (0 ms) [ok]: sunsubscribe without specifying any channel would unsubscribe all shard channels subscribed (1 ms) [ok]: Verify Pub/Sub and Pub/Sub shard no overlap (4 ms) [ok]: PUBSUB channels/shardchannels (2 ms) [ok]: HPEXPIRE active expiry on single field (1106 ms) [ok]: Cluster is up (195 ms) [ok]: The first master has actually 5 slaves (0 ms) [ok]: Slaves of #0 are instance #3, #6, #9, #12 and #15 as expected (0 ms) [ok]: Instance #3, #6, #9, #12 and #15 synced with the master (1 ms) [ok]: General command interface (13 ms) [ok]: CLUSTER MIGRATESLOTS already migrating (318 ms) [ok]: CLUSTER GETSLOTMIGRATIONS command config enforced (202 ms) [74/144 done]: unit/cluster/pubsubshard (12 seconds) Testing unit/cluster/slot-ownership [ok]: Only primary with slots has the right to mark a node as failed (19620 ms) [ok]: Cluster is up (21 ms) [ok]: Key-based commands can be used on multiple databases (1 ms) [ok]: HPEXPIRE active expiry with multiple fields (1106 ms) [ok]: Key-based commands across multiple databases (498 ms) [ok]: Validate slot statistics using cluster countkeysinslot and cluster getkeysinslot (438 ms) [ok]: HPEXPIRE active expiry removes entire key when last field expires (1107 ms) [ok]: Replication: Write to multiple databases and verify replica (717 ms) [ok]: SWAPDB is not supported in cluster mode (502 ms) [ok]: maxmemory - policy volatile-random should only remove volatile keys. (15501 ms) [ok]: HPEXPIRE active expiry with non-existing fields (1502 ms) [ok]: CLUSTER GETSLOTMIGRATIONS command reported fields (3276 ms) [ok]: CLUSTER GETSLOTMIGRATIONS command log removed over max len (107 ms) [ok]: Manual and atomic slot migration are mutually exclusive (117 ms) [ok]: Fix cluster (22665 ms) [ok]: Test CLUSTER CANCELSLOTMIGRATIONS (328 ms) [ok]: HPEXPIRE active expiry with mixed existing and non-existing fields (1105 ms) [ok]: Slot migration won't migrate the functions (447 ms) [ok]: CLUSTER SLOT-STATS cpu-usec reset upon slot migration. (5479 ms) [ok]: Single source import - one shot (281 ms) [ok]: Cross-DB Expiry Handling (2004 ms) [ok]: Slot migration DBSIZE after migration (805 ms) [ok]: Single source import - two phase (389 ms) [ok]: Slot migration seen in client flags (340 ms) [ok]: HPEXPIRE active expiry with already expired fields (2210 ms) [ok]: HEXPIREAT active expiry on single field (203 ms) [ok]: Keys are accessible (3194 ms) [ok]: Primaries will not time out then they are elected in the same epoch (7208 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for non-slot specific commands. (2736 ms) [ok]: Import with hz set to 1 (1185 ms) [ok]: Persistence across restart with multiple databases (2722 ms) [ok]: Copy key to other database (1 ms) [ok]: CLUSTER RESET should fail if databases contain keys (1 ms) [ok]: Move key to other database (0 ms) [ok]: Flushslot with multiple databases (3 ms) [ok]: Cluster is up (21 ms) [ok]: blocked clients behavior during failover (62 ms) [ok]: Cluster is up (98 ms) [ok]: HEXPIREAT active expiry with multiple fields (1005 ms) [ok]: Cluster is writable (52 ms) [ok]: Instance #5 is a slave (1 ms) [ok]: Instance #5 synced with the master (0 ms) [ok]: Killing one master node (10 ms) [75/144 done]: unit/cluster/replica-redirect (11 seconds) Testing unit/cluster/shardid-propagation [76/144 done]: unit/cluster/many-slot-migration (40 seconds) Testing unit/cluster/cli [ok]: Cluster nodes are reachable (1 ms) [ok]: Before slots allocation, all nodes report cluster failure (19 ms) [ok]: Cluster nodes haven't met each other (1 ms) [ok]: Allocate slots (30 ms) [ok]: Restart of node in cluster mode doesn't cause nodes.conf corruption due to shard id mismatch (258 ms) [77/145 done]: unit/cluster/multidb (18 seconds) Testing unit/cluster/faildet [ok]: Single source import - Incremental Command Coverage (1203 ms) [ok]: HEXPIREAT active expiry removes entire key when last field expires (1005 ms) [ok]: Importing key containment (slot 0 from node 0 to 2) - start migration (162 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - DBSIZE command excludes importing keys (1 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - KEYS command excludes importing keys (1 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - SCAN command excludes importing keys (0 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - RANDOMKEY command excludes importing keys (1 ms) [ok]: Replica importing key containment (slot 0 from node 0 to 2) - DBSIZE command excludes importing keys (0 ms) [ok]: Replica importing key containment (slot 0 from node 0 to 2) - KEYS command excludes importing keys (0 ms) [ok]: Replica importing key containment (slot 0 from node 0 to 2) - SCAN command excludes importing keys (1 ms) [ok]: Replica importing key containment (slot 0 from node 0 to 2) - RANDOMKEY command excludes importing keys (0 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - allkeys-random eviction excludes importing keys (140 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - allkeys-lru eviction excludes importing keys (180 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - allkeys-lfu eviction excludes importing keys (180 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - volatile-random eviction excludes importing keys (267 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - volatile-lru eviction excludes importing keys (312 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for slot specific commands. (2759 ms) [ok]: Create 1 node cluster (1921 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - volatile-lfu eviction excludes importing keys (311 ms) [ok]: HEXPIREAT active expiry with non-existing fields (1502 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - volatile-ttl eviction excludes importing keys (400 ms) [ok]: HEXPIREAT active expiry with mixed existing and non-existing fields (504 ms) [ok]: Verify that slot ownership transfer through gossip propagates deletes to replicas (167 ms) [ok]: Create 2 node cluster (1016 ms) [ok]: Wait for failover (3422 ms) [ok]: Cluster should eventually be up again (106 ms) [ok]: Cluster is writable (47 ms) [ok]: Instance #5 is now a master (0 ms) [ok]: Restarting the previously killed master node (2 ms) [ok]: Instance #0 gets converted into a slave (71 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - active expiration excludes importing keys (948 ms) [ok]: Importing key containment (slot 16383 from node 2 to 0) - start migration (164 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - DBSIZE command excludes importing keys (1 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - KEYS command excludes importing keys (0 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - SCAN command excludes importing keys (1 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - RANDOMKEY command excludes importing keys (0 ms) [ok]: Replica importing key containment (slot 16383 from node 2 to 0) - DBSIZE command excludes importing keys (1 ms) [ok]: Replica importing key containment (slot 16383 from node 2 to 0) - KEYS command excludes importing keys (0 ms) [ok]: Replica importing key containment (slot 16383 from node 2 to 0) - SCAN command excludes importing keys (1 ms) [ok]: Replica importing key containment (slot 16383 from node 2 to 0) - RANDOMKEY command excludes importing keys (0 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - allkeys-random eviction excludes importing keys (132 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - allkeys-lru eviction excludes importing keys (177 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - allkeys-lfu eviction excludes importing keys (177 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - volatile-random eviction excludes importing keys (266 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - volatile-lru eviction excludes importing keys (310 ms) [ok]: HEXPIREAT active expiry with already expired fields (2014 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - volatile-lfu eviction excludes importing keys (310 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - volatile-ttl eviction excludes importing keys (400 ms) [ok]: Create 3 node cluster (1923 ms) [ok]: Run blocking command on cluster node3 (1 ms) [ok]: Perform a Resharding (10 ms) [ok]: Verify command got unblocked after resharding (33 ms) [ok]: Wait for cluster to be stable (12 ms) [ok]: use previous hostip in "cluster-preferred-endpoint-type unknown-endpoint" mode (4 ms) [ok]: Sanity test push cmd after resharding (1 ms) [ok]: Run blocking command again on cluster node1 (0 ms) [ok]: HPEXPIREAT active expiry on single field (1005 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - active expiration excludes importing keys (845 ms) [ok]: HPEXPIREAT active expiry with multiple fields (1005 ms) [ok]: Simultaneous imports (545 ms) [ok]: Manual failover vote is not limited by two times the node timeout - drop the auth ack (5189 ms) [ok]: Kill a cluster node and wait for fail state (1371 ms) [ok]: Verify command got unblocked after cluster failure (70 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for blocking commands, unblocked on keyspace update. (5347 ms) [ok]: Simultaneous exports (520 ms) [ok]: Multiple slot ranges from same source (419 ms) [ok]: HPEXPIREAT active expiry removes entire key when last field expires (1107 ms) [ok]: Import slot range with multiple slots (285 ms) [ok]: Import multiple slot ranges with multiple slots (285 ms) [ok]: Export all slots from node (182 ms) [ok]: Import slots to node with no slots (223 ms) [ok]: Partial data removed on cancel (200 ms) [ok]: OOM on target aborts migration (220 ms) [ok]: Primaries do not add failure-report after replica is already marked FAIL (6199 ms) [ok]: HPEXPIREAT active expiry with non-existing fields (1503 ms) [ok]: Partial data in replica removed on failover (320 ms) [ok]: Slot export failed on failover (297 ms) [ok]: New Master down consecutively (18323 ms) [78/145 done]: unit/cluster/failure-marking (70 seconds) Testing unit/cluster/diskless-load-swapdb [ok]: Slots split across shards during import (418 ms) [ok]: HPEXPIREAT active expiry with mixed existing and non-existing fields (1105 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for blocking commands, unblocked on timeout. (3295 ms) [ok]: Functions are added to new node on valkey-cli cluster add-node (3004 ms) [ok]: The replica will have a new shard_id after cluster reset soft (106 ms) [ok]: maxmemory - policy volatile-ttl should only remove volatile keys. (16385 ms) [79/145 done]: unit/cluster/slave-selection (63 seconds) Testing unit/cluster/cluster-flush-slot [80/145 done]: unit/cluster/shardid-propagation (11 seconds) Testing unit/cluster/divergent-cluster-shardid-conf [ok]: Failover on shutdown hands over primaryship to a fully sync'd replica - sigterm - shutdown-timeout: 10 (10214 ms) [ok]: Unable to find a replica to perform an auto failover - sigterm (66 ms) [ok]: Cluster should start ok (88 ms) [ok]: Killing two slave nodes (18 ms) [ok]: Cluster should be still up (87 ms) [ok]: Killing one master node (9 ms) [ok]: Cluster should be down now (89 ms) [ok]: Restarting master node (9 ms) [ok]: Cluster should be up again (88 ms) [ok]: divergent cluster shardid conflict (865 ms) [81/145 done]: unit/cluster/divergent-cluster-shardid-conf (1 seconds) Testing unit/cluster/multi-slot-operations [82/145 done]: unit/cluster/auto-failover-on-shutdown (68 seconds) Testing unit/cluster/hostnames [ok]: Export unpauses itself even if slot failover doesn't occur (2209 ms) [ok]: Export unpauses when cancelled (168 ms) [ok]: HPEXPIREAT active expiry with already expired fields (2213 ms) [ok]: Blocked clients are sent MOVED after export completion (402 ms) [ok]: CLUSTER SYNCSLOTS invalid state machine traversal (9 ms) Waiting for process 2265 to exit... [ok]: CLUSTER SYNCSLOTS ESTABLISH command interface (160 ms) [ok]: FLUSH on target during import (674 ms) [ok]: CLIENT PAUSE WRITE blocks hash field active expiry until pause ends (1305 ms) Waiting for process 2265 to exit... [ok]: Migrated replica reports zero repl offset and rank, and fails to win election - shutdown (18018 ms) [ok]: FLUSH on source during export (808 ms) [ok]: Continuous slots distribution (9 ms) [ok]: ADDSLOTS command with several boundary conditions test suite (1 ms) [ok]: ADDSLOTSRANGE command with several boundary conditions test suite (1 ms) [ok]: DELSLOTSRANGE command with several boundary conditions test suite (4 ms) [83/145 done]: unit/cluster/multi-slot-operations (3 seconds) Testing unit/cluster/replica-detach Waiting for process 2265 to exit... [ok]: CLUSTER SLOT-STATS cpu-usec for transactions. (5285 ms) [ok]: Cluster is up (80 ms) [ok]: Cluster is writable (51 ms) [ok]: Killing the first primary node (10 ms) [ok]: HEXPIRE active expiry works correctly after RENAME operation (2212 ms) Waiting for process 2265 to exit... Waiting for process 2265 to exit... [ok]: Import cancelled when source hangs (3171 ms) [ok]: Primary lost a slot during the shutdown waiting (4236 ms) [ok]: HEXPIRE active expiry works correctly after COPY operation (2213 ms) Waiting for process 2265 to exit... [ok]: CLUSTER SLOT-STATS cpu-usec for lua-scripts, without cross-slot keys. (2683 ms) [ok]: Wait for failover (3471 ms) [ok]: Cluster should eventually be up again (79 ms) [ok]: Restarting the previously killed primary node (3 ms) [ok]: Instance #0 gets converted into a replica (15 ms) [ok]: Make sure the replicas always get the different ranks (1 ms) Waiting for process 2265 to exit... [84/145 done]: unit/cluster/failover (32 seconds) Testing unit/cluster/announced-endpoints [ok]: Cluster should start ok (17 ms) [ok]: Cluster is writable (53 ms) Waiting for process 2265 to exit... [ok]: HEXPIRE active expiry works correctly after RESTORE operation (2215 ms) [ok]: Export cancelled when target hangs (2951 ms) [ok]: Import with AUTH on (293 ms) [ok]: Import AUTH with WRONGPASS (43 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for lua-scripts, with cross-slot keys. (2616 ms) [ok]: Connection drop during import causes failure (208 ms) Waiting for process 2265 to exit... [ok]: Manual failover vote is not limited by two times the node timeout - mixed failover (3341 ms) [ok]: SYNC Flush slot command (92 ms) [ok]: ASYNC Flush slot command (62 ms) Port 23690 was already busy, trying another port... [ok]: Export client buffer enforcement (902 ms) [ok]: Migrate the last slot away from a node using valkey-cli (11161 ms) [ok]: HEXPIRE active expiry works correctly after MOVE operation (2212 ms) [ok]: Slot importing with some non-importing data (638 ms) Waiting for process 2240 to exit... [ok]: Set cluster hostnames and verify they are propagated (118 ms) [ok]: Update hostnames and make sure they are all eventually propagated (218 ms) [ok]: Export client buffer excluded from maxmemory (799 ms) [ok]: Remove hostnames and make sure they are all eventually propagated (217 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for functions, without cross-slot keys. (2709 ms) [ok]: Migration not cancelled when snapshot takes more time than repl-timeout (254 ms) [ok]: Verify cluster-preferred-endpoint-type behavior for redirects and info (172 ms) Waiting for process 2240 to exit... [ok]: Verify the nodes configured with prefer hostname only show hostname for new nodes (824 ms) [ok]: valkey-cli -4 --cluster create using 127.0.0.1 with cluster-port (1923 ms) [ok]: Test restart will keep hostname information (227 ms) [ok]: Test hostname validation (1 ms) [ok]: HPEXPIRE active expiry works correctly after RENAME operation (2210 ms) Waiting for process 2240 to exit... [85/145 done]: unit/cluster/hostnames (13 seconds) Testing unit/cluster/info Port 27150 was already busy, trying another port... [ok]: valkey-cli -4 --cluster add-node using 127.0.0.1 with cluster-port (1124 ms) [ok]: Replica can update the config epoch when trigger the failover - automatic (15681 ms) [ok]: Cluster should start ok (52 ms) [ok]: CLUSTER REPLICATE NO ONE should turn node into empty primary (8 ms) Waiting for process 2240 to exit... [ok]: CLUSTER SLOT-STATS cpu-usec for functions, with cross-slot keys. (2663 ms) [86/145 done]: unit/cluster/replica-detach (12 seconds) Testing unit/cluster/cluster-shards [ok]: HPEXPIRE active expiry works correctly after COPY operation (2210 ms) Waiting for process 2240 to exit... [ok]: Cluster should start ok (16 ms) [ok]: errorstats: rejected call due to MOVED Redirection (1 ms) Port 27152 was already busy, trying another port... [ok]: Restart target primary during migration (without save) causes failure (4437 ms) Waiting for process 2240 to exit... [ok]: valkey-cli -4 --cluster create using localhost with cluster-port (1923 ms) [ok]: Primary lost a slot during the manual failover pausing (79 ms) [ok]: HPEXPIRE active expiry works correctly after RESTORE operation (2210 ms) Waiting for process 2240 to exit... [ok]: valkey-cli -4 --cluster add-node using localhost with cluster-port (1125 ms) Waiting for process 2240 to exit... [ok]: Test change cluster-announce-port and cluster-announce-tls-port at runtime (106 ms) [ok]: Test change cluster-announce-bus-port at runtime (203 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, multi bulk buffer processing. (2604 ms) [ok]: Test change port and tls-port on runtime (205 ms) [ok]: Restart target primary during migration (with save) causes failure (3321 ms) [ok]: HPEXPIRE active expiry works correctly after MOVE operation (2212 ms) [87/145 done]: unit/cluster/announced-endpoints (12 seconds) Testing unit/cluster/shutdown Waiting for process 2240 to exit... [ok]: Create 3 node cluster (2019 ms) [88/145 done]: unit/cluster/faildet (33 seconds) Testing unit/cluster/announce-client-ports [ok]: Multi-database fill slot 0 (21 ms) [ok]: Perform a Multi-database Resharding (41 ms) [ok]: Verify multi-database slot migrate (21 ms) Port 26650 was already busy, trying another port... [89/145 done]: unit/cluster/cli (33 seconds) Testing unit/cluster/replica-in-sync [ok]: Migrated replica reports zero repl offset and rank, and fails to win election - sigstop (7655 ms) [ok]: Flush slot command propagated to replica (154 ms) [ok]: HEXPIREAT active expiry works correctly after RENAME operation (2010 ms) [ok]: fail reason changed (3425 ms) [ok]: CONFIG RESETSTAT resets cluster related stats (33 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, in-line buffer processing. (2719 ms) Port 27156 was already busy, trying another port... [90/145 done]: unit/cluster/cluster-flush-slot (23 seconds) Testing unit/cluster/slave-stop-cond [ok]: HEXPIREAT active expiry works correctly after COPY operation (2011 ms) [ok]: Restart source primary during migration (without save) causes failure (4368 ms) [ok]: Automatic failover vote is not limited by two times the node timeout - mixed failover (3354 ms) [ok]: Test shutdown safe is working (3271 ms) [91/145 done]: unit/cluster/shutdown (5 seconds) Testing unit/cluster/announce-client-ip Port 23698 was already busy, trying another port... [ok]: count - node partial failure (1011 ms) [ok]: Cluster should start ok (51 ms) [ok]: Cluster shards response is ok for shard 0 (1 ms) [ok]: HEXPIREAT active expiry works correctly after RESTORE operation (2012 ms) [ok]: Kill a node and tell the replica to immediately takeover (10 ms) [ok]: count - node complete failure (1007 ms) [92/145 done]: unit/cluster/info (14 seconds) Testing unit/cluster/slot-migration Port 27160 was already busy, trying another port... [ok]: CLUSTER SLOT-STATS network-bytes-in, blocking command. (5356 ms) [ok]: Restart source primary during migration (with save) causes failure (3327 ms) [ok]: HEXPIREAT active expiry works correctly after MOVE operation (2011 ms) [ok]: Primary lost a slot during the client pause command (57 ms) [ok]: Verify health as fail for killed node (3155 ms) [ok]: CLUSTER SHARDS slot response is non-empty when primary node fails (1 ms) [ok]: Restart target replica during migration (without save) causes success (1631 ms) [93/145 done]: unit/cluster/slot-ownership (49 seconds) Testing integration/rdb [94/145 done]: unit/cluster/cluster-shards (14 seconds) Testing integration/valkey-benchmark [ok]: test old version rdb file (1 ms) [ok]: benchmark: set,get (5 ms) [ok]: benchmark: connecting using URI set,get (4 ms) [ok]: benchmark: connecting using URI with authentication set,get (4 ms) [ok]: benchmark: full test suite (73 ms) [ok]: Restart target replica during migration (with save) causes success (636 ms) [ok]: RDB encoding loading test (4 ms) [ok]: HPEXPIREAT active expiry works correctly after RENAME operation (2211 ms) [ok]: RDB future version loading, strict version check (0 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, multi-exec transaction. (2708 ms) [ok]: RDB future version loading, relaxed version check (4 ms) [ok]: benchmark: multi-thread set,get (507 ms) [ok]: benchmark: pipelined full set,get (97 ms) [ok]: benchmark: arbitrary command (6 ms) [ok]: benchmark: arbitrary command sequence (5 ms) value:VXKeHogKgJ=[5V9_X^b?48OKF2jGA