>>> valkey: Building main/valkey 9.0.0-r0 (using abuild 3.16.0_rc4-r0) started Mon, 17 Nov 2025 14:18:44 +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/9) Installing linux-headers (6.16.12-r0) (2/9) Installing openssl-dev (3.5.4-r0) (3/9) Installing tzdata (2025b-r0) (4/9) Installing tcl (8.6.17-r0) (5/9) Installing skalibs-libs (2.14.4.0-r0) (6/9) Installing utmps-libs (0.1.3.1-r0) (7/9) Installing libproc2 (4.0.4-r3) (8/9) Installing procps-ng (4.0.4-r3) (9/9) Installing .makedepends-valkey (20251117.141844) busybox-1.37.0-r25.trigger: Executing script... OK: 447 MiB in 118 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 /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 -Wl,-z,pack-relative-relocs >> .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 -Wl,-z,pack-relative-relocs -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 -Wl,-z,pack-relative-relocs" > .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 -Wl,-z,pack-relative-relocs" AR="ar rc" MAKE hdr_histogram cd hdr_histogram && make MAKE fpconv make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/libvalkey' cd fpconv && make 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 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 make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/hdr_histogram' cc -std=c99 -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -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 lcode.o lcode.c make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-9.0.0/deps/fpconv' 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 -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 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 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 -Wl,-z,pack-relative-relocs lua.o liblua.a -lm cc -o luac -Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs luac.o print.o liblua.a -lm ar rcs 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 io_threads.o CC networking.o CC util.o CC object.o CC db.o CC replication.o CC rdb.o CC t_string.o CC t_list.o CC t_set.o CC t_zset.o CC t_hash.o CC config.o CC aof.o CC pubsub.o CC multi.o CC debug.o CC sort.o CC intset.o CC syncio.o CC cluster.o CC cluster_legacy.o CC 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 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 LINK valkey-benchmark LINK valkey-server LINK valkey-cli 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 INSTALL valkey-check-aof INSTALL valkey-check-rdb Cleanup: may take some time... OK Starting test server at port 21079 [ready]: 45395 Testing unit/introspection-2 [ready]: 45399 Testing unit/aofrw [ready]: 45398 Testing unit/protocol [ready]: 45394 Testing unit/obuf-limits [ready]: 45396 Testing unit/scan [ready]: 45400 Testing unit/scripting [ready]: 45397 Testing unit/hyperloglog [ready]: 45401 Testing unit/functions [ready]: 45402 Testing unit/wait [ready]: 45403 Testing unit/commandlog [ready]: 45404 Testing unit/other [ready]: 45405 Testing unit/replybufsize [ready]: 45406 Testing unit/keyspace [ready]: 45407 Testing unit/oom-score-adj [ready]: 45408 Testing unit/memefficiency [ready]: 45409 Testing unit/pubsub [ok]: The microsecond part of the TIME command will not overflow (0 ms) [ignore]: CVE-2025-32023: Sparse HLL XZERO overflow triggers crash: large memory flag not provided [ok]: FUNCTION - Basic usage (0 ms) [ok]: FUNCTION - Load with unknown argument (1 ms) [ok]: COMMANDLOG - check that it starts with an empty log (1 ms) [ok]: FUNCTION - Create an already exiting library raise error (0 ms) [ok]: FUNCTION - Create an already exiting library raise error (case insensitive) (0 ms) [ok]: FUNCTION - Create a library with wrong name format (0 ms) [ok]: FUNCTION - Create library with unexisting engine (0 ms) [ok]: FUNCTION - Test uncompiled script (0 ms) [ok]: FUNCTION - test replace argument (1 ms) [ok]: FUNCTION - test function case insensitive (0 ms) [ok]: FUNCTION - test replace argument with failure keeps old libraries (0 ms) [ok]: FUNCTION - test function delete (0 ms) [ok]: FUNCTION - test fcall bad arguments (0 ms) [ok]: FUNCTION - test fcall bad number of keys arguments (0 ms) [ok]: DEL against a single item (1 ms) [ok]: FUNCTION - test fcall negative number of keys (0 ms) [ok]: FUNCTION - test delete on not exiting library (0 ms) [ok]: FUNCTION - test function kill when function is not running (0 ms) [ok]: Vararg DEL (0 ms) [ok]: FUNCTION - test wrong subcommand (0 ms) [ok]: CONFIG SET client-output-buffer-limit (2 ms) [ok]: Untagged multi-key commands (0 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (0 ms) [ok]: EVAL - Return _G (1 ms) [ok]: KEYS with pattern (1 ms) [ok]: EVAL - Return table with a metatable that raise error (0 ms) [ok]: KEYS to get all keys (0 ms) [ok]: DBSIZE (0 ms) [ok]: EVAL - Return table with a metatable that call server (0 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (0 ms) [ok]: Coverage: HELP commands (2 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (0 ms) [ok]: KEYS with hashtag (0 ms) [ok]: FUNCTION - test loading from rdb (2 ms) [ok]: EVAL - Lua true boolean -> Redis protocol type conversion (1 ms) [ok]: EVAL - Lua false boolean -> Redis protocol type conversion (0 ms) [ok]: Coverage: MEMORY MALLOC-STATS (1 ms) [ok]: EVAL - Lua status code reply -> Redis protocol type conversion (0 ms) [ok]: Coverage: MEMORY PURGE (0 ms) [ok]: EVAL - Lua error reply -> Redis protocol type conversion (0 ms) [ok]: Coverage: ECHO (0 ms) [ok]: DEL all keys (0 ms) [ok]: KEYS with empty DB (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? (0 ms) [ok]: EVAL - Redis integer -> Lua type conversion (0 ms) [ok]: EVAL - Lua number -> Redis integer conversion (0 ms) [ok]: FUNCTION - test debug reload different options (2 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (0 ms) [ok]: SAVE - make sure there are all the types as values (2 ms) [ok]: EVAL - Redis multi bulk -> Lua type conversion (0 ms) [ok]: Pub/Sub PING on RESP2 (0 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]: FUNCTION - test debug reload with nosave and noflush (1 ms) [ok]: EVAL - SELECT inside Lua should not affect the caller (1 ms) [ok]: EVAL - Scripts do not block on blpop command (0 ms) [ok]: FUNCTION - test flushall and flushdb do not clean functions (1 ms) [ok]: EVAL - Scripts do not block on brpop command (0 ms) [ok]: Pub/Sub PING on RESP3 (1 ms) [ok]: EVAL - Scripts do not block on brpoplpush command (1 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 (0 ms) [ok]: FUNCTION - test function dump and restore with flush argument (0 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (1 ms) [ok]: CONFIG SET oom-score-adj works as expected (10 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (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]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (1 ms) [ok]: PUBLISH/SUBSCRIBE basics (2 ms) [ok]: CONFIG SET oom-score-adj handles configuration failures (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 (0 ms) [ok]: CONFIG SET oom-score-adj-values doesn't touch proc when disabled (0 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option -- non empty stream (1 ms) [ok]: CONFIG SET oom score restored on disable (1 ms) [ok]: FUNCTION - test function restore with bad payload do not drop existing functions (1 ms) [ok]: FUNCTION - test function restore with wrong number of arguments (0 ms) [ok]: EVAL - Scripts can run non-deterministic commands (0 ms) [ok]: CONFIG SET oom score relative and absolute (0 ms) [ok]: EVAL - No arguments to redis.call/pcall is considered an error (0 ms) [ok]: FUNCTION - test fcall_ro with write command (0 ms) [ok]: CONFIG SET out-of-range oom score (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: FUNCTION - test fcall_ro with read only commands (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (1 ms) [ok]: FUNCTION - test keys and argv (1 ms) [ok]: FUNCTION - test command get keys on fcall (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]: FUNCTION - test command get keys on fcall_ro (0 ms) [ok]: PUBLISH/SUBSCRIBE with two clients (2 ms) [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]: PUBLISH/SUBSCRIBE after UNSUBSCRIBE without arguments (2 ms) [ok]: SUBSCRIBE to one channel more than once (1 ms) [ok]: UNSUBSCRIBE from non-subscribed channels (1 ms) [ok]: PUBLISH/PSUBSCRIBE basics (1 ms) [ok]: PUBLISH/PSUBSCRIBE with two clients (0 ms) [ok]: PUBLISH/PSUBSCRIBE after PUNSUBSCRIBE without arguments (1 ms) [ok]: Handle an empty query (42 ms) [ok]: Handle an empty query in pipeline (0 ms) [ok]: {standalone} SCAN basic (49 ms) [ok]: Negative multibulk length (41 ms) [ok]: Negative multibulk length in pipeline (0 ms) [ok]: Out of range multibulk length (0 ms) [ok]: Wrong multibulk payload header (1 ms) [ok]: Negative multibulk payload length (0 ms) [ok]: Out of range multibulk payload length (0 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]: {standalone} SCAN COUNT (51 ms) [1/140 done]: unit/oom-score-adj (0 seconds) Testing unit/querybuf [ok]: PubSub messages with CLIENT REPLY OFF (83 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) [ok]: Protocol desync regression test #1 (41 ms) [ok]: Protocol desync regression test #2 (0 ms) [ok]: {standalone} SCAN MATCH (43 ms) [ok]: Keyspace notifications: we receive keyspace notifications (41 ms) [ok]: Protocol desync regression test #3 (42 ms) [ok]: Keyspace notifications: we receive keyevent notifications (41 ms) [ok]: Keyspace notifications: we can receive both kind of events (0 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (173 ms) [ok]: Keyspace notifications: we are able to mask events (1 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (0 ms) [ok]: Keyspace notifications: general events test (1 ms) [ok]: Keyspace notifications: list events test (1 ms) [ok]: EVAL - Numerical sanity check from bitop (2 ms) [ok]: EVAL - Verify minimal bitop functionality (0 ms) [ok]: EVAL - Able to parse trailing comments (0 ms) [ok]: Keyspace notifications: set events test (0 ms) [ok]: EVAL_RO - Successful case (0 ms) [ok]: EVAL_RO - Cannot run write commands (0 ms) [ok]: Keyspace notifications: zset events test (1 ms) [ok]: redis.sha1hex() implementation (0 ms) [ok]: Keyspace notifications: hash events test (1 ms) [ok]: Keyspace notifications: stream events test (1 ms) [ok]: COMMANDLOG - only logs commands exceeding the threshold (201 ms) [ok]: {standalone} SCAN TYPE (64 ms) [ok]: COMMANDLOG - zero max length is correctly handled (6 ms) [ok]: Protocol desync regression test #4 (42 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 (1 ms) [ok]: test bool parsing (0 ms) [ok]: test verbatim str parsing (0 ms) [ok]: COMMANDLOG - max entries is correctly handled (6 ms) [ok]: COMMANDLOG - GET optional argument to limit output len works (5 ms) [ok]: COMMANDLOG - RESET subcommand works (0 ms) [ok]: test large number of args (25 ms) [ok]: test argument rewriting - issue 9598 (0 ms) [ok]: {standalone} SCAN unknown type (40 ms) [ok]: {standalone} SCAN with expired keys (50 ms) [ok]: HyperLogLog self test passes (306 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]: Memory efficiency with values in range 32 (326 ms) [ok]: {standalone} SCAN with expired keys with TYPE filter (51 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 (400 ms) [ok]: FUNCTION - test function kill (403 ms) [ok]: COMMANDLOG - logged entry sanity check (202 ms) [ok]: HELLO without protover (1 ms) [ok]: HELLO and availability-zone (1 ms) [ok]: {standalone} HSCAN with encoding hashtable (69 ms) [ok]: COMMANDLOG slow - Certain commands are omitted that contain sensitive information (2 ms) [ok]: COMMANDLOG slow - Some commands can redact sensitive fields (0 ms) [ok]: {standalone} ZSCAN with encoding listpack (2 ms) [ok]: COMMANDLOG slow - Rewritten commands are logged as their original command (4 ms) [ok]: COMMANDLOG slow - commands with too many arguments are trimmed (0 ms) [ok]: COMMANDLOG slow - too long arguments are trimmed (0 ms) [ok]: {standalone} ZSCAN with encoding skiplist (69 ms) [ok]: Keyspace notifications: expired events (background expire) (104 ms) [ok]: Keyspace notification: expired event (Expiration time is already expired) (1 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} 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 (0 ms) [ok]: {standalone} HSCAN with NOVALUES (1 ms) [ok]: {standalone} ZSCAN with PATTERN (0 ms) [ok]: {standalone} ZSCAN with NOSCORES (0 ms) [ok]: {standalone} ZSCAN scores: regression test for issue #2175 (49 ms) [ok]: HyperLogLogs are promote from sparse to dense (298 ms) [ok]: Change hll-sparse-max-bytes (1 ms) [2/140 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]: Hyperloglog promote to dense well in different hll-sparse-max-bytes (34 ms) [ok]: verify reply buffer limits (647 ms) [ok]: Memory efficiency with values in range 64 (329 ms) [3/140 done]: unit/replybufsize (1 seconds) Testing unit/info-command [ok]: SPUBLISH/SSUBSCRIBE basics (1 ms) [ok]: SPUBLISH/SSUBSCRIBE with two clients (0 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 (1 ms) [ok]: SPUBLISH/SSUBSCRIBE with PUBLISH/SUBSCRIBE (1 ms) [4/140 done]: unit/protocol (1 seconds) Testing unit/networking [ok]: PubSubShard with CLIENT REPLY OFF (82 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 (201 ms) [ok]: FUZZ stresser with data model alpha (424 ms) [5/140 done]: unit/info-command (0 seconds) Testing unit/sort [ok]: CONFIG SET port number (214 ms) [ok]: Memory efficiency with values in range 128 (334 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 (1 ms) [ok]: Listpack: SORT BY key (0 ms) [ok]: Listpack: SORT BY key with limit (1 ms) [ok]: Listpack: SORT BY hash field (0 ms) [ok]: DEL against expired key (1101 ms) [ok]: EXISTS (0 ms) [ok]: Zero length value in key. SET/GET/EXISTS (1 ms) [ok]: Commands pipelining (0 ms) [ok]: Non existing command (0 ms) [ok]: RENAME basic usage (0 ms) [ok]: RENAME source key should no longer exist (0 ms) [ok]: RENAME against already existing key (1 ms) [ok]: RENAMENX basic usage (0 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 (1 ms) [ok]: RENAME where source and dest key are the same (existing) (0 ms) [ok]: RENAMENX where source and dest key are the same (existing) (0 ms) [ok]: RENAME where source and dest key are the same (non existing) (0 ms) [ok]: RENAME with volatile key, should move the TTL as well (1 ms) [ok]: RENAME with volatile key, should not inherit TTL of target key (0 ms) [ok]: DEL all keys again (DB 0) (0 ms) [ok]: DEL all keys again (DB 1) (1 ms) [ok]: COPY basic usage for string (0 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 (0 ms) [ok]: CONFIG SET bind address (215 ms) [ok]: COPY basic usage for $type set (10 ms) [ok]: COPY basic usage for listpack sorted set (0 ms) [ok]: COPY basic usage for skiplist sorted set (7 ms) [ok]: COPY basic usage for listpack hash (0 ms) [ok]: COPY basic usage for hashtable hash (8 ms) [ok]: Quicklist: SORT BY key (8 ms) [ok]: Quicklist: SORT BY key with limit (1 ms) [ok]: Measures elapsed time os.clock() (1004 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 (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 (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 (1 ms) [ok]: FUZZ stresser with data model compr (397 ms) [ok]: COMMANDLOG slow - can be disabled (401 ms) [ok]: COMMANDLOG slow - count must be >= -1 (0 ms) [ok]: COMMANDLOG slow - get all slow logs (1 ms) [ok]: COMMANDLOG slow - blocking command is reported only after unblocked (3 ms) [ok]: COMMANDLOG slow - the commands in script are recorded normally - is_eval: 0 (0 ms) [ok]: FUNCTION - test function flush will re-create the lua engine (12 ms) [ok]: COMMANDLOG slow - the commands in script are recorded normally - is_eval: 1 (1 ms) [ok]: HyperLogLog sparse encoding stress test (609 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Additional at tail (0 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Broken magic (1 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Invalid encoding (0 ms) [ok]: Corrupted dense HyperLogLogs are detected: Wrong length (0 ms) [ok]: COPY basic usage for stream (68 ms) [ok]: COPY basic usage for stream-cgroups (5 ms) [ok]: MOVE basic usage (0 ms) [ok]: MOVE against key existing in the target DB (0 ms) [ok]: MOVE against non-integer DB (#1428) (0 ms) [ok]: MOVE can move key expire metadata as well (0 ms) [ok]: MOVE does not create an expire if it does not exist (1 ms) [ok]: SET/GET keys in different DBs (0 ms) [ok]: RANDOMKEY (5 ms) [ok]: RANDOMKEY against empty DB (0 ms) [ok]: RANDOMKEY regression 1 (1 ms) [ok]: KEYS * two times with long key, Github issue #1208 (0 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) [ok]: FLUSHALL should not reset the dirty counter if we disable save (1 ms) [6/140 done]: unit/commandlog (2 seconds) Testing unit/tls [ok]: FLUSHALL should reset the dirty counter to 0 if we enable save (2 ms) [ok]: Regression for pattern matching very long nested loops (83 ms) [ok]: Client output buffer hard limit is enforced (1355 ms) [ok]: Memory efficiency with values in range 1024 (371 ms) [ok]: BGSAVE (53 ms) [ok]: SELECT an out of range DB (0 ms) [7/140 done]: unit/tls (0 seconds) Testing unit/tracking [ok]: setup replication for following tests (806 ms) [ok]: publish message to master and receive on replica (1 ms) [ok]: EVAL does not leak in the Lua stack (700 ms) [ok]: Call Redis command with many args from Lua (issue #1764) (1 ms) [ok]: Number conversion precision test (issue #1118) (1 ms) [ok]: String containing number precision test (regression of issue #1118) (0 ms) [ok]: Verify negative arg count is error instead of crash (issue #1842) (0 ms) [ok]: Scripts can handle commands with incorrect arity (1 ms) [ok]: Correct handling of reused argv (issue #1939) (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]: Script with RESP3 map (1 ms) [ok]: Check consistency of different data types after a reload (465 ms) [ok]: Script return recursive object (105 ms) [ok]: Script check unpack with massive arguments (27 ms) [ok]: Script read key with expiration set (0 ms) [ok]: Script del key with expiration set (1 ms) [ok]: Script ACL check (0 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 (1 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 (1 ms) [ok]: WAIT should not acknowledge 2 additional copies of the data (1076 ms) [ignore]: large memory flag not provided [ok]: Same dataset digest if saving/reloading as AOF? (181 ms) [ok]: EXPIRES after a reload (snapshot + append only file rewrite) (56 ms) [ok]: Client tracking prefixes memory overhead (620 ms) [ok]: Clients are able to enable tracking and redirect it (0 ms) [ok]: The other connection is able to get invalidations (0 ms) [ok]: The client is now able to disable tracking (0 ms) [ok]: Clients can enable the BCAST mode with the empty prefix (0 ms) [ok]: The connection gets invalidation messages about all the keys (0 ms) [ok]: Clients can enable the BCAST mode with prefixes (1 ms) [ok]: Adding prefixes to BCAST mode works (0 ms) [ok]: Tracking NOLOOP mode in standard mode works (1 ms) [ok]: Tracking NOLOOP mode in BCAST mode works (0 ms) [ok]: Memory efficiency with values in range 16384 (974 ms) [8/141 done]: unit/memefficiency (3 seconds) Testing unit/multi [ok]: CONFIG SET bind-source-addr (1323 ms) [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 (0 ms) [ok]: WATCH inside MULTI is not allowed (1 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]: Timedout read-only scripts can be killed by SCRIPT KILL (402 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 (2 ms) [ok]: FLUSHDB while watching stale keys should not fail EXEC (3 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 (0 ms) [ok]: FLUSHDB is able to touch the watched keys (1 ms) [ok]: FLUSHDB does not touch non affected keys (0 ms) [ok]: SWAPDB is able to touch the watched keys that exist (0 ms) [ok]: SWAPDB is able to touch the watched keys that do not exist (1 ms) [ok]: SWAPDB does not touch watched stale keys (3 ms) [ok]: SWAPDB does not touch non-existing key replaced with stale key (2 ms) [ok]: SWAPDB does not touch stale key replaced with another stale key (3 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]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (78 ms) [ok]: Timedout script does not cause a false dead client (80 ms) [ok]: Default bind address configuration handling (209 ms) [ok]: Protected mode works as expected (3 ms) [ok]: Timedout script link is still usable after Lua returns (128 ms) [9/141 done]: unit/pubsubshard (2 seconds) Testing unit/acl [ok]: TTL, TYPE and EXISTS do not alter the last access time of a key (3002 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 (1 ms) [ok]: Enabling the user allows the login (0 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 (1 ms) [ok]: Test password hashes validate input (0 ms) [ok]: ACL GETUSER returns the password hash instead of the actual password (0 ms) [ok]: Test hashed passwords removal (0 ms) [ok]: By default users are not able to access any command (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 (0 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 (0 ms) [ok]: It's possible to allow subscribing to a subset of shard channels (1 ms) [ok]: It's possible to allow subscribing to a subset of channel patterns (0 ms) [ok]: Subscribers are killed when revoked of channel permission (0 ms) [ok]: Subscribers are killed when revoked of channel permission (1 ms) [ok]: Subscribers are killed when revoked of pattern permission (1 ms) [ok]: Subscribers are killed when revoked of allchannels permission (0 ms) [ok]: Subscribers are pardoned if literal permissions are retained and/or gaining allchannels (1 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 (0 ms) [ok]: ACLs can include or exclude whole classes of commands (1 ms) [ok]: ACLs can include single subcommands (0 ms) [ok]: ACLs can exclude single subcommands, case 1 (1 ms) [ok]: ACLs can exclude single subcommands, case 2 (0 ms) [ok]: ACLs cannot include a subcommand with a specific arg (1 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 (0 ms) [ok]: ACLs including of a type includes also subcommands (1 ms) [ok]: ACLs can block SELECT of all but a specific DB (0 ms) [ok]: ACLs can block all DEBUG subcommands except one (1 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 (0 ms) [ok]: ACL GETUSER is able to translate back command permissions (1 ms) [ok]: ACL GETUSER provides reasonable results (9 ms) [ok]: ACL GETUSER provides correct results (3 ms) [ok]: ACL CAT with illegal arguments (0 ms) [ok]: ACL CAT without category - list all categories (1 ms) [ok]: ACL CAT category - list all commands/subcommands that belong to category (0 ms) [ok]: ACL requires explicit permission for scripting for EVAL_RO, EVALSHA_RO and FCALL_RO (1 ms) [ok]: ACL #5998 regression: memory leaks adding / removing subcommands (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 (0 ms) [ok]: ACL LOG shows failed subcommand executions at toplevel (1 ms) [ok]: ACL LOG is able to test similar events (1 ms) [ok]: ACL LOG is able to log keys access violations and key name (0 ms) [ok]: ACL LOG is able to log channel access violations and channel name (1 ms) [ok]: ACL LOG RESET is able to flush the entries in the log (0 ms) [ok]: ACL LOG can distinguish the transaction context (1) (1 ms) [ok]: ACL LOG can distinguish the transaction context (2) (1 ms) [ok]: ACL can log errors in the context of Lua scripting (0 ms) [ok]: ACL LOG can accept a numerical argument to show less entries (1 ms) [ok]: ACL LOG can log failed auth attempts (0 ms) [ok]: ACLLOG - zero max length is correctly handled (1 ms) [ok]: ACL LOG entries are limited to a maximum amount (2 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 (1 ms) [ok]: ACL HELP should not have unexpected options (0 ms) [ok]: Delete a user that the client doesn't use (0 ms) [ok]: Delete a user that the client is using (0 ms) [ok]: ACL GENPASS command failed test (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) [10/141 done]: unit/networking (2 seconds) Testing unit/bitops [ok]: query buffer resized correctly (2937 ms) [ok]: WAIT should not acknowledge 1 additional copy if slave is blocked (1103 ms) [ok]: Timedout scripts and unblocked command (308 ms) [ok]: query buffer resized correctly when not idle (67 ms) [ok]: FUNCTION - test loading function during the flush async (1986 ms) [ok]: FUNCTION - test function wrong argument (0 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 (0 ms) [ok]: BITCOUNT against test vector #1 (0 ms) [ok]: BITCOUNT against test vector #2 (0 ms) [ok]: BITCOUNT against test vector #3 (0 ms) [ok]: BITCOUNT against test vector #4 (0 ms) [ok]: BITCOUNT against test vector #5 (1 ms) [ok]: Big Quicklist: SORT BY key (600 ms) [ok]: Big Quicklist: SORT BY key with limit (10 ms) [ok]: default: load from include file, can access any channels (1 ms) [ok]: default: with config acl-pubsub-default allchannels after reset, can access any channels (0 ms) [ok]: default: with config acl-pubsub-default resetchannels after reset, can not access any channels (1 ms) [ok]: Alice: can execute all command (0 ms) [ok]: Bob: just execute @set and acl command (1 ms) [ok]: ACL LOAD only disconnects affected clients (1 ms) [ok]: ACL LOAD disconnects clients of deleted users (1 ms) [ok]: ACL load and save (2 ms) [ok]: ACL load and save with restricted channels (1 ms) [ok]: Tracking gets notification of expired keys (1001 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 (0 ms) [ok]: KEYS with empty slot in cluster mode (0 ms) [ok]: BITCOUNT fuzzing without start/end (213 ms) [ok]: Tracking gets notification of lazy expired keys (201 ms) [ok]: HELLO 3 reply is correct (1 ms) [ok]: RESP3 based basic invalidation (0 ms) [ok]: RESP3 tracking redirection (1 ms) [ok]: Invalidations of previous keys can be redirected after switching to RESP3 (1 ms) [ok]: Invalidations of new keys can be redirected after switching to RESP3 (0 ms) [ok]: Default user has access to all channels irrespective of flag (1 ms) [ok]: Invalid keys should not be tracked for scripts in NOLOOP mode (1 ms) [ok]: Update acl-pubsub-default, existing users shouldn't get affected (1 ms) [ok]: Tracking only occurs for scripts when a command calls a read-only command (2 ms) [ok]: Single channel is valid (1 ms) [ok]: Single channel is not valid with allchannels (0 ms) [ok]: RESP3 Client gets tracking-redir-broken push message after cached key changed when rediretion client is terminated (2 ms) [ok]: Different clients can redirect to the same connection (1 ms) [ok]: Different clients using different protocols can track the same key (0 ms) [ok]: No invalidation message when using OPTIN option (1 ms) [ok]: Invalidation message sent when using OPTIN option with CLIENT CACHING yes (1 ms) [ok]: Invalidation message sent when using OPTOUT option (0 ms) [ok]: No invalidation message when using OPTOUT option with CLIENT CACHING no (0 ms) [ok]: Able to redirect to a RESP3 client (0 ms) [ok]: After switching from normal tracking to BCAST mode, no invalidation message is produced for pre-BCAST keys (1 ms) [ok]: BCAST with prefix collisions throw errors (1 ms) [ok]: hdel deliver invalidate message after response in the same connection (0 ms) [11/141 done]: unit/keyspace (4 seconds) Testing unit/auth [ok]: Tracking invalidation message is not interleaved with multiple keys response (111 ms) [ok]: Tracking invalidation message is not interleaved with transaction response (0 ms) [ok]: Tracking invalidation message of eviction keys should be before response (2 ms) [ok]: Unblocked BLMOVE gets notification after response (0 ms) [ok]: AUTH fails if there is no password configured server side (0 ms) [ok]: Arity check for auth command (0 ms) [ok]: Before the replica connects we issue two EVAL commands (1 ms) [ok]: Tracking gets notification on tracking table key eviction (72 ms) [ok]: Invalidation message received for flushall (2 ms) [ok]: Invalidation message received for flushdb (1 ms) [ok]: Test ASYNC flushall (1 ms) [ok]: flushdb tracking invalidation message is not interleaved with transaction response (1 ms) [ok]: Only default user has access to all channels irrespective of flag (0 ms) [ok]: WATCH will consider touched expired keys (1105 ms) [ok]: DISCARD should clear the WATCH dirty flag on the client (0 ms) [ok]: DISCARD should UNWATCH all the keys (0 ms) [ok]: MULTI / EXEC is not propagated (single write command) (64 ms) [ok]: BITCOUNT fuzzing with start/end (389 ms) [ok]: BITCOUNT with just start (1 ms) [ok]: BITCOUNT with start, end (1 ms) [ok]: BITCOUNT with illegal arguments (0 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) (1 ms) [ok]: BITOP where dest and target are the same key (0 ms) [ok]: BITOP AND|OR|XOR don't change the string with single input key (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 a wrong password is given (1 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 (0 ms) [ok]: For unauthenticated clients multibulk and bulk length are limited (1 ms) [ok]: For unauthenticated clients output buffer is limited (0 ms) [ok]: For once authenticated clients output buffer is NOT limited (1 ms) [ok]: Unauthenticated multibulk limit works in pipeline after AUTH (0 ms) [ok]: Big Quicklist: SORT BY hash field (597 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) [ok]: Server is able to evacuate enough keys when num of keys surpasses limit by more than defined initial effort (200 ms) [ok]: Tracking info is correct (2 ms) [ok]: CLIENT GETREDIR provides correct client id (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking off (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking on (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking on with options (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking optin (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking optout (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking bcast mode (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking redir broken (2 ms) [ok]: Regression test for #11715 (1 ms) [ok]: RESP3 based basic invalidation with client reply off (1 ms) [ok]: MULTI / EXEC is propagated correctly (multiple commands) (101 ms) [ok]: default: load from config file, without channel permission default user can't access any channels (0 ms) [ok]: RESP2 based basic invalidation with client reply off (42 ms) [ok]: RESP3 based basic redirect invalidation with client reply off (1 ms) [ok]: RESP3 based basic tracking-redir-broken with client reply off (2 ms) [ok]: MULTI / EXEC is propagated correctly (multiple commands with SELECT) (100 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]: AUTH fails when binary password is wrong (0 ms) [ok]: AUTH succeeds when binary password is correct (0 ms) [ok]: BITOP and fuzzing (242 ms) [ok]: CLIENT TRACKINGINFO when start (0 ms) [ok]: Coverage: Basic CLIENT CACHING (1 ms) [ok]: Coverage: Basic CLIENT REPLY (0 ms) [ok]: Coverage: Basic CLIENT TRACKINGINFO (0 ms) [ok]: Coverage: Basic CLIENT GETREDIR (0 ms) [ok]: MULTI / EXEC is propagated correctly (empty transaction) (100 ms) [ok]: default: load from config file with all channels permissions (1 ms) [12/141 done]: unit/tracking (3 seconds) Testing unit/geo [ok]: MULTI / EXEC is propagated correctly (read-only commands) (100 ms) [ok]: BITOP or fuzzing (184 ms) [ok]: WAIT implicitly blocks on client pause since ACKs aren't sent (1103 ms) [ok]: EXPIRES after AOF reload (without rewrite) (2107 ms) [ok]: WAIT replica multiple clients unblock - reuse last result (10 ms) [ok]: MULTI / EXEC is propagated correctly (write command, no effect) (101 ms) [ok]: GEO with wrong type src key (2 ms) [ok]: GEO with non existing src key (0 ms) [ok]: GEO BYLONLAT with empty search (1 ms) [ok]: GEO BYMEMBER with non existing member (0 ms) [ok]: GEOADD create (0 ms) [ok]: GEOADD update (0 ms) [ok]: GEOADD update with CH option (0 ms) [ok]: GEOADD update with NX option (0 ms) [ok]: GEOADD update with XX option (0 ms) [ok]: GEOADD update with CH NX option (0 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 (0 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 (1 ms) [ok]: GEOSEARCH FROMLONLAT and FROMMEMBER one must exist (0 ms) [ok]: GEOSEARCH BYRADIUS and BYBOX cannot exist at the same time (0 ms) [ok]: GEOSEARCH BYRADIUS and BYBOX one must exist (0 ms) [ok]: GEOSEARCH with STOREDIST option (0 ms) [ok]: GEORADIUS withdist (sorted) (1 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 (1 ms) [ok]: GEORADIUS HUGE, issue #2767 (0 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 (1 ms) [ok]: GEOSEARCH FROMMEMBER member does not exist (0 ms) [ok]: GEOSEARCH FROMMEMBER simple (sorted) (0 ms) [ok]: GEOSEARCH vs GEORADIUS (1 ms) [ok]: Connect a replica to the master instance (806 ms) [ok]: GEOSEARCH non square, long and narrow (0 ms) [ok]: FUNCTION - creation is replicated to replica (1 ms) [ok]: FUNCTION - call on replica (0 ms) [ok]: GEOSEARCH corner point test (0 ms) [ok]: GEORADIUSBYMEMBER withdist (sorted) (0 ms) [ok]: GEOHASH is able to return geohash strings (0 ms) [ok]: FUNCTION - restore is replicated to replica (1 ms) [ok]: FUNCTION - delete is replicated to replica (0 ms) [ok]: GEOHASH with only key as argument (0 ms) [ok]: GEOPOS simple (0 ms) [ok]: FUNCTION - flush is replicated to replica (1 ms) [ok]: GEOPOS missing element (1 ms) [ok]: GEOPOS with only key as argument (0 ms) [ok]: GEODIST simple & unit (0 ms) [ok]: GEODIST missing elements (0 ms) [ok]: GEORADIUS STORE option: syntax error (0 ms) [ok]: GEOSEARCHSTORE STORE option: syntax error (0 ms) [ok]: GEORANGE STORE option: incompatible options (0 ms) [ok]: GEORANGE STORE option: plain usage (1 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 (1 ms) [ok]: GEOSEARCH the box spans -180° or 180° (0 ms) [ok]: GEOSEARCH with small distance (1 ms) [ok]: GEOSEARCH BYPOLYGON standard operations (1 ms) [ok]: GEOSEARCH BYPOLYGON across hemispheres (2 ms) [ok]: GEOSEARCH BYPOLYGON overlapping edges (1 ms) [ok]: GEOSEARCH with exact zero distances (1 ms) [ok]: Test loading an ACL file with duplicate users (6 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 / EXEC with REPLICAOF (101 ms) [ok]: DISCARD should not fail during OOM (0 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 (0 ms) [ok]: BITOP xor fuzzing (203 ms) [ok]: BITOP NOT fuzzing (22 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 (1 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 (2 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]: BITPOS bit=1 fuzzy testing using SETBIT (145 ms) [ok]: ACL from config file and config rewrite (204 ms) [ok]: MULTI and script timeout (403 ms) [ok]: BITPOS bit=0 fuzzy testing using SETBIT (187 ms) [ok]: PIPELINING stresser (also a regression for the old epoll bug) (567 ms) [ok]: APPEND basics (1 ms) [ok]: APPEND basics, integer encoded values (0 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]: BITPOS/BITCOUNT fuzzy testing using SETBIT (157 ms) [ok]: APPEND fuzzing (170 ms) [ok]: FLUSHDB (1 ms) [ok]: Perform a final SAVE to leave a clean DB on disk (1 ms) [ok]: RESET clears client state (0 ms) [ok]: RESET clears MONITOR state (1 ms) [ok]: RESET clears and discards MULTI state (0 ms) [ok]: RESET clears Pub/Sub state (1 ms) [ok]: RESET clears authenticated state (0 ms) [ok]: Subcommand syntax error crash (issue #10070) (0 ms) [ok]: Extended Redis Compatibility config (3 ms) [13/142 done]: unit/bitops (2 seconds) Testing unit/maxmemory [ok]: Test ACL LOAD works on primary (2 ms) [ok]: Client output buffer soft limit is enforced if time is overreached (3858 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: false (36 ms) [ok]: EXEC and script timeout (403 ms) [ok]: Setup a new replica (912 ms) [ok]: Disconnecting the replica from master instance (1009 ms) [ok]: FUNCTION - test replication to replica on rdb phase (0 ms) [ok]: FUNCTION - test replication to replica on rdb phase info command (0 ms) [ok]: FUNCTION - create on read only replica (0 ms) [ok]: FUNCTION - delete on read only replica (0 ms) [ok]: FUNCTION - function effect is replicated to replica (1 ms) [ok]: FUNCTION - modify key space of read only replica (0 ms) [ok]: Don't rehash if server has child process (344 ms) [ok]: MULTI-EXEC body and script timeout (402 ms) [ok]: Process title set as expected (1 ms) [ok]: TOUCH alters the last access time of a key (3002 ms) [ok]: just EXEC and script timeout (402 ms) [ok]: exec with write commands and state change (1 ms) [ok]: exec with read commands and stale replica state change (2 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]: primaryauth test with binary password dualchannel = yes (1912 ms) [ok]: MULTI propagation of PUBLISH (96 ms) [ok]: query buffer resized correctly with fat argv (2937 ms) [ok]: Big Hash table: SORT BY key (600 ms) [14/142 done]: unit/querybuf (7 seconds) Testing unit/bitfield [ok]: Big Hash table: SORT BY key with limit (12 ms) [ok]: Test ACL LOAD works on replica (907 ms) [ok]: MULTI propagation of SCRIPT LOAD (101 ms) [ok]: BITFIELD signed SET and GET basics (0 ms) [ok]: BITFIELD unsigned SET and GET basics (0 ms) [ok]: BITFIELD signed SET and GET together (1 ms) [ok]: BITFIELD unsigned with SET, GET and INCRBY arguments (0 ms) [ok]: BITFIELD with only key as argument (0 ms) [ok]: BITFIELD # form (0 ms) [ok]: BITFIELD basic INCRBY form (1 ms) [ok]: BITFIELD chaining of multiple commands (0 ms) [ok]: BITFIELD unsigned overflow wrap (0 ms) [ok]: BITFIELD unsigned overflow sat (1 ms) [ok]: BITFIELD signed overflow wrap (0 ms) [ok]: BITFIELD signed overflow sat (1 ms) [ok]: MULTI propagation of EVAL (100 ms) [ok]: WAIT in script will work (1011 ms) [15/142 done]: unit/acl (4 seconds) Testing unit/pause [ok]: AUTH fails when binary password is wrong (0 ms) [ok]: AUTH succeeds when binary password is correct (0 ms) [ok]: {standalone} SCAN regression test for issue #4906 (5889 ms) [ok]: BITFIELD overflow detection fuzzing (159 ms) [ok]: MULTI propagation of SCRIPT FLUSH (101 ms) [ok]: {standalone} SCAN MATCH pattern implies cluster slot (16 ms) [ok]: MULTI propagation of XREADGROUP (101 ms) [ok]: MULTI with SAVE (1 ms) [ok]: MULTI with SHUTDOWN (0 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 (0 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 (1 ms) [ok]: BITFIELD overflow wrap fuzzing (215 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 (0 ms) [ok]: WAITAOF local copy before fsync (96 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 (1 ms) [ok]: WAITAOF local on server with aof disabled (0 ms) [ok]: MULTI with BGREWRITEAOF (203 ms) [ok]: FUNCTION can processes create, delete and flush commands in AOF when doing "debug loadaof" in read-only slaves (319 ms) [ok]: Big Hash table: SORT BY hash field (616 ms) [ok]: SORT GET # (1 ms) [ok]: SORT GET (0 ms) [ok]: SORT_RO GET (0 ms) [ok]: SORT GET (key and hash) with sanity check (2 ms) [ok]: SORT BY key STORE (1 ms) [ok]: SORT BY hash field STORE (1 ms) [ok]: SORT extracts STORE correctly (0 ms) [ok]: SORT_RO get keys (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 (1 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) (1 ms) [ok]: SORT with STORE removes key if result is empty (github issue 227) (0 ms) [ok]: SORT with BY and STORE should still order output (1 ms) [ok]: SORT will complain with numerical sorting and bad doubles (1) (0 ms) [ok]: SORT will complain with numerical sorting and bad doubles (2) (0 ms) [ok]: SORT BY sub-sorts lexicographically if score is the same (1 ms) [ok]: SORT GET with pattern ending with just -> does not get hash field (0 ms) [ok]: SORT by nosort retains native order for lists (0 ms) [ok]: SORT by nosort plus store retains native order for lists (1 ms) [ok]: SORT by nosort with limit returns based on original list order (0 ms) [ok]: SORT_RO - Successful case (0 ms) [ok]: SORT_RO - Cannot run with STORE arg (0 ms) [ok]: SORT speed, 100 element list BY key, 100 times (18 ms) [ok]: SORT speed, 100 element list BY hash field, 100 times (20 ms) [ok]: SORT speed, 100 element list directly, 100 times (12 ms) [ok]: SORT speed, 100 element list BY , 100 times (11 ms) [ok]: SETRANGE with huge offset (2 ms) [ok]: LIBRARIES - test shared function can access default globals (0 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 (1 ms) [ok]: LIBRARIES - test registration with only name (0 ms) [ok]: LIBRARIES - test registration with to many arguments (0 ms) [ok]: LIBRARIES - test registration with no string name (0 ms) [ok]: LIBRARIES - test registration with wrong name format (0 ms) [ok]: LIBRARIES - test registration with empty name (0 ms) [ok]: LIBRARIES - math.random from function load (1 ms) [ok]: LIBRARIES - redis.call from function load (0 ms) [ok]: LIBRARIES - redis.setresp from function load (0 ms) [ok]: LIBRARIES - redis.set_repl from function load (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]: SORT STORE quicklist with the right options (50 ms) [ok]: MULTI with config set appendonly (203 ms) [ok]: MULTI with config error (1 ms) [ok]: Flushall while watching several keys by one client (0 ms) [ok]: MULTI is rejected when CLIENT REPLY is ON/OFF/SKIP (1 ms) [ok]: WAITAOF local if AOFRW was postponed (300 ms) [ok]: CLIENT REPLY OFF/SKIP: multi command (83 ms) [ok]: AUTH errored inside MULTI will add the reply (0 ms) [ok]: WAITAOF on demoted master gets unblocked with an error (1 ms) [ok]: MULTI with FLUSHALL and AOF (2 ms) [ok]: LIBRARIES - load timeout (501 ms) [ok]: LIBRARIES - verify global protection on the load run (1 ms) [ok]: LIBRARIES - named arguments (0 ms) [ok]: LIBRARIES - named arguments, bad function name (0 ms) [ok]: LIBRARIES - named arguments, bad callback type (0 ms) [ok]: LIBRARIES - named arguments, bad description (1 ms) [ok]: LIBRARIES - named arguments, unknown argument (0 ms) [ok]: LIBRARIES - named arguments, missing function name (0 ms) [ok]: LIBRARIES - named arguments, missing callback (0 ms) [ok]: FUNCTION - test function restore with function name collision (2 ms) [ok]: FUNCTION - test function list with code (1 ms) [ok]: FUNCTION - test function list with pattern (0 ms) [ok]: FUNCTION - test function list wrong argument (0 ms) [ok]: FUNCTION - test function list with bad argument to library name (0 ms) [ok]: FUNCTION - test function list withcode multiple times (0 ms) [ok]: FUNCTION - test function list libraryname multiple times (0 ms) [ok]: FUNCTION - verify OOM on function load and function restore (2 ms) [ok]: FUNCTION - verify allow-omm allows running any command (0 ms) [ok]: FUNCTION - wrong flags type named arguments (0 ms) [ok]: FUNCTION - wrong flag type (1 ms) [ok]: FUNCTION - unknown flag (0 ms) [ok]: FUNCTION - write script on fcall_ro (0 ms) [ok]: FUNCTION - write script with no-writes flag (0 ms) [ok]: FUNCTION - deny oom (1 ms) [ok]: FUNCTION - deny oom on no-writes function (0 ms) [ok]: FUNCTION - allow stale (1 ms) [ok]: FUNCTION - valkey version api (0 ms) [ok]: FUNCTION - function stats (0 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 (1 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 (0 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) [16/142 done]: unit/functions (8 seconds) Testing unit/lazyfree [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 (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 (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 (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 (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 (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 (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]: BITFIELD: setup slave (906 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 (1 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) [17/142 done]: unit/bitfield (1 seconds) Testing unit/limits [ok]: UNLINK can reclaim memory in background (226 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (0 ms) [ok]: WAITAOF replica copy before fsync (78 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 (0 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (1 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? (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 (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 (1 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (0 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (1 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (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 (1 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option -- non empty stream (0 ms) [ok]: EVAL - Scripts can run non-deterministic commands (1 ms) [ok]: EVAL - No arguments to redis.call/pcall is considered an error (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (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 (0 ms) [ok]: EVAL - cmsgpack can pack double? (1 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [ok]: FLUSHDB ASYNC can reclaim memory in background (226 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (183 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 (1 ms) [ok]: EVAL_RO - Cannot run write commands (0 ms) [ok]: redis.sha1hex() implementation (1 ms) [ok]: primaryauth test with binary password dualchannel = no (1912 ms) [ok]: lazy free a stream with all types of metadata (159 ms) [ok]: lazy free a stream with deleted cgroup (1 ms) [ok]: eviction due to input buffer of a dead client, client eviction: false (3247 ms) [18/142 done]: unit/lazyfree (1 seconds) Testing unit/slowlog [ok]: Test check paused info in info clients (2100 ms) [ok]: Test read commands are not blocked by client pause (1 ms) [ok]: {cluster} SCAN basic (49 ms) [19/142 done]: unit/auth (5 seconds) Testing unit/dump [ok]: {cluster} SCAN COUNT (56 ms) [ok]: SLOWLOG - check that it starts with an empty log (0 ms) [ok]: {cluster} SCAN MATCH (44 ms) [ok]: DUMP / RESTORE are able to serialize / unserialize a simple key (1 ms) [ok]: RESTORE can set an arbitrary expire to the materialized key (0 ms) [ok]: RESTORE can set an expire that overflows a 32 bit integer (1 ms) [ok]: RESTORE can set an absolute expire (0 ms) [ok]: RESTORE with ABSTTL in the past (1 ms) [ok]: RESTORE can set LRU (0 ms) [ok]: RESTORE can set LFU (1 ms) [ok]: RESTORE returns an error of the key already exists (0 ms) [ok]: RESTORE can overwrite an existing key with REPLACE (1 ms) [ok]: RESTORE can detect a syntax error for unrecognized options (0 ms) [ok]: {cluster} SCAN TYPE (66 ms) [ok]: {cluster} SCAN unknown type (39 ms) [ok]: RESTORE should not store key that are already expired, with REPLACE will propagate it as DEL or UNLINK (92 ms) [ok]: RESTORE key with future RDB version, strict version check (0 ms) [ok]: RESTORE key with future RDB version, relaxed version check (0 ms) [ok]: DUMP of non existing key returns nil (0 ms) [ok]: {cluster} SCAN with expired keys (52 ms) [ok]: SLOWLOG - only logs commands taking more time than specified (200 ms) [ok]: SLOWLOG - zero max length is correctly handled (4 ms) [ok]: SLOWLOG - max entries is correctly handled (5 ms) [ok]: SLOWLOG - GET optional argument to limit output len works (1 ms) [ok]: SLOWLOG - RESET subcommand works (0 ms) [ok]: {cluster} SCAN with expired keys with TYPE filter (52 ms) [ok]: {cluster} SSCAN with encoding intset (1 ms) [ok]: {cluster} SSCAN with encoding listpack (1 ms) [ok]: {cluster} SSCAN with encoding hashtable (2 ms) [ok]: {cluster} HSCAN with encoding listpack (1 ms) [ok]: Test old pause-all takes precedence over new pause-write (less restrictive) (349 ms) [ok]: {cluster} HSCAN with encoding hashtable (69 ms) [ok]: {cluster} ZSCAN with encoding listpack (1 ms) [ok]: TOUCH alters the last access time of a key in no-touch mode (3002 ms) [ok]: Test new pause time is smaller than old one, then old time preserved (101 ms) [ok]: Test write commands are paused by RO (0 ms) [ok]: Test special commands are paused by RO (2 ms) [ok]: Test read/admin multi-execs are not blocked by pause RO (1 ms) [ok]: Test write multi-execs are blocked by pause RO (0 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]: Check if maxclients works refusing connections (905 ms) [ok]: Test may-replicate commands are rejected in RO scripts (1 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]: MIGRATE is caching connections (225 ms) [ok]: {cluster} ZSCAN with encoding skiplist (70 ms) [ok]: {cluster} SCAN guarantees check under write load (14 ms) [ok]: WAITAOF replica copy everysec (922 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]: sort by in cluster mode (1 ms) [ok]: sort get in cluster mode (0 ms) [ok]: sort_ro by in cluster mode (0 ms) [ok]: sort_ro get in cluster mode (0 ms) [ok]: SLOWLOG - logged entry sanity check (201 ms) [ok]: SLOWLOG - Certain commands are omitted that contain sensitive information (2 ms) [ok]: SLOWLOG - Some commands can redact sensitive fields (0 ms) [ok]: SLOWLOG - Rewritten commands are logged as their original command (2 ms) [ok]: SLOWLOG - commands with too many arguments are trimmed (1 ms) [ok]: SLOWLOG - too long arguments are trimmed (0 ms) [ok]: {cluster} ZSCAN scores: regression test for issue #2175 (49 ms) [20/142 done]: unit/limits (1 seconds) Testing unit/info [ok]: Test both active and passive expires are skipped during client pause (101 ms) [ok]: Test that client pause starts at the end of a transaction (1 ms) [21/142 done]: unit/sort (9 seconds) Testing unit/expire [ok]: eviction due to output buffers of pubsub, client eviction: false (757 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: true (49 ms) [ok]: EXPIRE - set timeouts multiple times (0 ms) [ok]: EXPIRE - It should be still possible to read 'x' (0 ms) [ok]: SLOWLOG - EXEC is not logged, just executed commands (201 ms) [ok]: Regression test for multi-exec with RANDOMKEY accessing the wrong per-slot dictionary (1 ms) [ok]: Measures elapsed time os.clock() (1002 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]: latencystats: disable/enable (1 ms) [ok]: latencystats: configure percentiles (2 ms) [ok]: latencystats: bad configure percentiles (5 ms) [ok]: latencystats: blocking commands (2 ms) [ok]: latencystats: subcommands (1 ms) [22/142 done]: unit/multi (7 seconds) Testing unit/shutdown [ok]: latencystats: measure latency (53 ms) [ok]: errorstats: failed call authentication error (2 ms) [ok]: errorstats: failed call within MULTI/EXEC (5 ms) [ok]: errorstats: failed call within LUA (2 ms) [ok]: errorstats: failed call NOSCRIPT error (4 ms) [ok]: errorstats: failed call NOGROUP error (1 ms) [ok]: errorstats: rejected call unknown command (1 ms) [ok]: errorstats: rejected call within MULTI/EXEC (4 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 (2 ms) [ok]: SLOWLOG - can clean older entries (201 ms) [ok]: Server can trigger resizing (1647 ms) [ok]: errorstats: limit errors will not increase indefinitely (87 ms) [ok]: Temp rdb will be deleted if we use bg_unlink when shutdown (112 ms) [ok]: stats: eventloop metrics (112 ms) [ok]: SHUTDOWN ABORT can cancel SIGTERM (11 ms) [ok]: Temp rdb will be deleted in signal handle (93 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 (1 ms) [ok]: RDB save will be failed in shutdown (2 ms) [23/142 done]: unit/slowlog (1 seconds) Testing unit/quit [ok]: EVAL does not leak in the Lua stack (689 ms) [ok]: Call Redis command with many args from Lua (issue #1764) (0 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) (0 ms) [ok]: Functions in the Redis namespace are able to report errors (1 ms) [ok]: CLUSTER RESET can not be invoke from within a script (0 ms) [ok]: Script with RESP3 map (1 ms) [ok]: WAITAOF replica copy everysec with AOFRW (1004 ms) [ok]: SHUTDOWN will abort if rdb save failed on signal (96 ms) [ok]: SHUTDOWN will abort if rdb save failed on shutdown command (1 ms) [ok]: SHUTDOWN can proceed if shutdown command was with nosave (2 ms) [ok]: Clean up rdb same named folder (0 ms) [ok]: Operations in no-touch mode do not alter the last access time of a key (1101 ms) [ok]: TOUCH returns the number of existing keys specified (0 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 (1 ms) [ok]: command stats for scripts (2 ms) [ok]: COMMAND COUNT get total number of commands (0 ms) [ok]: COMMAND GETKEYS GET (0 ms) [ok]: COMMAND GETKEYSANDFLAGS (1 ms) [ok]: COMMAND GETKEYS MEMORY USAGE (0 ms) [ok]: COMMAND GETKEYS XGROUP (0 ms) [ok]: COMMAND GETKEYS EVAL with keys (0 ms) [ok]: COMMAND GETKEYS EVAL without keys (0 ms) [ok]: COMMAND GETKEYS LCS (0 ms) [ok]: COMMAND GETKEYS MORE THAN 256 KEYS (3 ms) [ok]: COMMAND LIST syntax error (0 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 (1 ms) [ok]: COMMAND LIST FILTERBY PATTERN - list all commands/subcommands (1 ms) [ok]: COMMAND LIST FILTERBY MODULE against non existing module (0 ms) [ok]: COMMAND INFO of invalid subcommands (0 ms) [ok]: SET command will not be marked with movablekeys (1 ms) [ok]: GET command will not be marked with movablekeys (0 ms) [ok]: MSET command will not be marked with movablekeys (1 ms) [ok]: BITFIELD command will not be marked with movablekeys (0 ms) [ok]: LMOVE command will not be marked with movablekeys (1 ms) [ok]: LPOP command will not be marked with movablekeys (0 ms) [ok]: BLPOP command will not be marked with movablekeys (0 ms) [ok]: PING command will not be marked with movablekeys (0 ms) [ok]: MEMORY command will not be marked with movablekeys (1 ms) [ok]: MEMORY|USAGE command will not be marked with movablekeys (0 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]: ZUNIONSTORE command is marked with movablekeys (1 ms) [ok]: XREAD command is marked with movablekeys (0 ms) [ok]: EVAL command is marked with movablekeys (0 ms) [ok]: SORT command is marked with movablekeys (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]: QUIT returns OK (1 ms) [ok]: Pipelined commands after QUIT must not be executed (0 ms) [ok]: Pipelined commands after QUIT that exceed read buffer size (1 ms) [ok]: Script return recursive object (106 ms) [ok]: Test when replica paused, offset would not grow (2 ms) [ok]: Test replica offset would grow after unpause (1 ms) [ok]: Script check unpack with massive arguments (27 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 (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 (1 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 (0 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (0 ms) [ok]: Test dofile are not available (0 ms) [ok]: Test print are not available (0 ms) [ok]: Server can rewind and trigger smaller slot resizing (659 ms) [ok]: CLUSTER FORGET with invalid node ID (1 ms) [24/142 done]: unit/introspection-2 (11 seconds) Testing unit/hashexpire [25/142 done]: unit/quit (1 seconds) Testing unit/acl-v2 [ok]: Client output buffer soft limit is not enforced too early and is enforced when no traffic (5027 ms) [ok]: Test the randomkey command will not cause the server to get into an infinite loop during the client pause write (6 ms) [ok]: CLIENT UNBLOCK is not allow to unblock client blocked by CLIENT PAUSE (1 ms) [ignore]: large memory flag not provided [ok]: SHUTDOWN SIGTERM will abort if there's an initial AOFRW - default (98 ms) [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 (1 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 (1 ms) [ok]: HGETEX PX with mix of existing and non-existing fields (0 ms) [ok]: HGETEX PX on more then 1 field (1 ms) [ok]: HGETEX PX -> PERSIST (0 ms) [ok]: HGETEX PX on non-exist field (0 ms) [ok]: HGETEX PX on non-exist key (1 ms) [ok]: HGETEX PX with duplicate field names (0 ms) [ok]: HGETEX PX overwrites existing field TTL with bigger value (0 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 (0 ms) [ok]: HGETEX EXAT on more then 1 field (0 ms) [ok]: HGETEX EXAT -> PERSIST (0 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 (0 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]: Test basic multiple selectors (1 ms) [ok]: No response for single command if client output buffer hard limit is enforced (114 ms) [ok]: HGETEX PXAT overwrites existing field TTL with smaller value (0 ms) [ok]: Test ACL selectors by default have no permissions (0 ms) [ok]: HGETEX EX overwrites existing field TTL with bigger value (1 ms) [ok]: Test deleting selectors (1 ms) [ok]: HGETEX EX overwrites existing field TTL with smaller value (0 ms) [ok]: Test selector syntax error reports the error in the selector context (0 ms) [ok]: HGETEX PX overwrites existing field TTL with bigger value (0 ms) [ok]: HGETEX PX overwrites existing field TTL with smaller value (0 ms) [ok]: HGETEX EXAT overwrites existing field TTL with bigger value (0 ms) [ok]: Test flexible selector definition (1 ms) [ok]: HGETEX EXAT overwrites existing field TTL with smaller value (1 ms) [ok]: Test separate read permission (1 ms) [ok]: HGETEX PXAT overwrites existing field TTL with bigger value (0 ms) [ok]: HGETEX PXAT overwrites existing field TTL with smaller value (0 ms) [ok]: Test separate write permission (0 ms) [ok]: HGETEX - verify no change when field does not exist (1 ms) [ok]: Test separate read and write permissions (1 ms) [ok]: Validate read and write permissions format (0 ms) [ok]: HGETEX EX- multiple options used (EX + PX) (0 ms) [ok]: HGETEX EXAT- multiple options used (EXAT + PXAT) (0 ms) [ok]: HGETEX EX- missing TTL value (0 ms) [ok]: Validate key permissions format - empty and omitted pattern (1 ms) [ok]: HGETEX EX- negative TTL (0 ms) [ok]: HGETEX EX- non-integer TTL (0 ms) [ok]: HGETEX EX- missing FIELDS keyword (0 ms) [ok]: Test separate read and write permissions on different selectors are not additive (0 ms) [ok]: HGETEX EX- wrong numfields count (too few fields) (1 ms) [ok]: HGETEX EX- wrong numfields count (too many fields) (0 ms) [ok]: Test SET with separate read permission (1 ms) [ok]: HGETEX EX- key is wrong type (string instead of hash) (0 ms) [ok]: HGETEX EX with FIELDS 0 (0 ms) [ok]: HGETEX EX with negative numfields (1 ms) [ok]: Test SET with separate write permission (1 ms) [ok]: HGETEX EX with missing key (0 ms) [ok]: HGETEX PX- missing TTL value (0 ms) [ok]: HGETEX PX- negative TTL (0 ms) [ok]: Test SET with read and write permissions (1 ms) [ok]: HGETEX PX- non-integer TTL (1 ms) [ok]: HGETEX PX- missing FIELDS keyword (0 ms) [ok]: HGETEX PX- wrong numfields count (too few fields) (0 ms) [ok]: Test BITFIELD with separate read permission (0 ms) [ok]: HGETEX PX- wrong numfields count (too many fields) (0 ms) [ok]: HGETEX PX- key is wrong type (string instead of hash) (1 ms) [ok]: Test BITFIELD with separate write permission (1 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]: Test BITFIELD with read and write permissions (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]: Test ACL log correctly identifies the relevant item when selectors are used (1 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]: Test ACL GETUSER response information (1 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]: Test ACL list idempotency (1 ms) [ok]: Test R+W is the same as all permissions (0 ms) [ok]: HGETEX PXAT- negative TTL (0 ms) [ok]: HGETEX PXAT- non-integer TTL (0 ms) [ok]: Test basic dry run functionality (0 ms) [ok]: HGETEX PXAT- missing FIELDS keyword (0 ms) [ok]: Test various commands for command permissions (0 ms) [ok]: HGETEX PXAT- wrong numfields count (too few fields) (1 ms) [ok]: HGETEX PXAT- wrong numfields count (too many fields) (0 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]: Test various odd commands for key permissions (2 ms) [ok]: Existence test commands are not marked as access (0 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]: Test DRYRUN with wrong number of arguments (0 ms) [26/142 done]: unit/shutdown (1 seconds) Testing unit/client-eviction [ok]: Server can resize empty dict (215 ms) [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]: 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 (1 ms) [ok]: HGETEX EXAT generates hexpire keyspace notification (1 ms) [ok]: Test behavior of loading ACLs (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 (1 ms) [ok]: HGETEX PXAT on non-existent field generates no notification (1 ms) [ok]: HGETEX PERSIST generates hpersist keyspace notification (1 ms) [ok]: HGETEX EX 0/past time works correctly with 1 field (2 ms) [ok]: HGETEX PX 0/past time works correctly with 1 field (2 ms) [ok]: HGETEX EXAT 0/past time works correctly with 1 field (1 ms) [ok]: HGETEX PXAT 0/past time works correctly with 1 field (2 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]: client evicted due to large argv (72 ms) [ok]: client evicted due to large query buf (24 ms) [ok]: client evicted due to percentage of maxmemory (7 ms) [27/142 done]: unit/acl-v2 (0 seconds) Testing unit/introspection [ok]: client evicted due to large multi buf (46 ms) [ok]: PING (0 ms) [ok]: CLIENT LIST (0 ms) [ok]: CLIENT LIST with IDs (0 ms) [ok]: CLIENT INFO (0 ms) [ok]: CLIENT LIST with ADDR filter (0 ms) [ok]: CLIENT LIST with LADDR filter (1 ms) [ok]: CLIENT LIST with MAXAGE filter (0 ms) [ok]: CLIENT LIST with TYPE filter (0 ms) [ok]: CLIENT LIST with USER filter (1 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 (0 ms) [ok]: CLIENT LIST with FLAGS filter (1 ms) [ok]: CLIENT LIST with TYPE filter (0 ms) [ok]: CLIENT LIST with multiple filters (0 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (402 ms) [ok]: test io-threads are runtime modifiable (67 ms) [ok]: client evicted due to watched key list (168 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (77 ms) [ok]: Timedout script does not cause a false dead client (76 ms) [ok]: test unixsocket options are set correctly (0 ms) [28/142 done]: unit/other (11 seconds) Testing unit/violations [ok]: Timedout script link is still usable after Lua returns (126 ms) [ok]: SORT adds integer field to list (1 ms) [29/143 done]: unit/violations (1 seconds) Testing unit/latency-monitor [ok]: Timedout scripts and unblocked command (308 ms) [ok]: No response for multi commands in pipeline if client output buffer limit is enforced (1044 ms) [ok]: EXPIRE - After 2.1 seconds the key should no longer be here (2100 ms) [ok]: LATENCY HISTOGRAM with empty histogram (0 ms) [ok]: EXPIRE - write on expire should work (1 ms) [ok]: LATENCY HISTOGRAM all commands (1 ms) [ok]: EXPIREAT - Check for EXPIRE alike behavior (0 ms) [ok]: SETEX - Set + Expire combo operation. Check for TTL (0 ms) [ok]: SETEX - Check value (0 ms) [ok]: LATENCY HISTOGRAM sub commands (0 ms) [ok]: SETEX - Overwrite old key (1 ms) [ok]: LATENCY HISTOGRAM with a subset of commands (1 ms) [ok]: LATENCY HISTOGRAM command (1 ms) [ok]: LATENCY HISTOGRAM with wrong command name skips the invalid one (1 ms) [ok]: Execute transactions completely even if client output buffer limit is enforced (14 ms) [ok]: Obuf limit, HRANDFIELD with huge count stopped mid-run (15 ms) [ok]: Obuf limit, KEYS stopped mid-run (72 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) [30/143 done]: unit/obuf-limits (12 seconds) Testing unit/type/list-2 [ok]: stats: instantaneous metrics (2002 ms) [ok]: HSETEX EX - test mix of expiring and persistent fields (1100 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 (1 ms) [ok]: HSETEX PX - overwrite field resets TTL (0 ms) [ok]: HSETEX PX - test zero ttl expires immediately (10 ms) [ok]: HSETEX PX - test mix of expiring and persistent fields (20 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 (1 ms) [ok]: HSETEX EX FXX - set only if all fields exist (0 ms) [ok]: HSETEX PX FNX - partial conflict returns 0 (1 ms) [ok]: HSETEX PX FXX - one field missing returns 0 (0 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 (1 ms) [ok]: HEXPIRE - set TTL on existing field (0 ms) [ok]: HEXPIRE - TTL 0 deletes field (0 ms) [ok]: HEXPIRE - negative TTL returns error (0 ms) [ok]: HEXPIRE - wrong type key returns error (1 ms) [ok]: HEXPIRE NX - only set when field has no TTL (0 ms) [ok]: HEXPIRE XX - only set when field has TTL (0 ms) [ok]: HEXPIRE GT - only set if new TTL > existing TTL (11 ms) [ok]: HEXPIRE LT - only set if new TTL < existing TTL (0 ms) [ok]: stats: debug metrics (112 ms) [ok]: CLIENT LIST with multiple filters (1003 ms) [ok]: CLIENT LIST with IP filter (1 ms) [ok]: stats: client input and output buffer limit disconnections (25 ms) [ok]: clients: pubsub clients (1 ms) [ok]: clients: watching clients (6 ms) [ok]: Before the replica connects we issue two EVAL commands (1 ms) [ok]: CLIENT LIST with IPv6 filter (1 ms) [ok]: CLIENT LIST with CAPA filter (1 ms) [ok]: CLIENT KILL with IP filter (1 ms) [ok]: memory: database and pubsub overhead and rehashing dict count (3 ms) [ok]: WAITAOF replica copy everysec with slow AOFRW (2014 ms) [ok]: CLIENT LIST with IPv6 filter (1 ms) [ok]: client evicted due to pubsub subscriptions (1295 ms) [31/143 done]: unit/info (4 seconds) Testing unit/type/list [ok]: WAITAOF replica copy everysec->always with AOFRW (108 ms) [ok]: WAITAOF replica copy appendfsync always (1 ms) [ok]: client evicted due to tracking redirection (71 ms) [ok]: CLIENT KILL with CAPA filter (1 ms) [ok]: CLIENT KILL with NAME filter (0 ms) [ok]: CLIENT KILL with FLAGS filter (0 ms) [ok]: CLIENT KILL with TYPE filter (1 ms) [ok]: CLIENT KILL with multiple filters (1 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 (0 ms) [ok]: HEXPIRE returns -2 on non-existing key (0 ms) [ok]: HEXPIRE - GT condition fails when field has no TTL (1 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 (2 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 (0 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 (0 ms) [ok]: HEXPIREAT - no fields after FIELDS (0 ms) [ok]: HEXPIREAT - non-integer timestamp (1 ms) [ok]: HEXPIREAT - non-existing key returns -2 (0 ms) [ok]: HEXPIRETIME - returns expiry timestamp for single field with TTL (0 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 (1 ms) [ok]: HEXPIRETIME - multiple fields mixed cases (0 ms) [ok]: HEXPIRETIME - no FIELDS keyword (0 ms) [ok]: HEXPIRETIME - FIELDS 0 (1 ms) [ok]: HEXPIRETIME - wrong FIELDS count (0 ms) [ok]: HEXPIRETIME - wrong type key (1 ms) [ok]: HPEXPIREAT - set absolute expiry with ms precision (0 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 (1 ms) [ok]: HPEXPIREAT - invalid inputs (0 ms) [ok]: HPEXPIRETIME - check with multiple fields (0 ms) [ok]: HPERSIST - field does not exist (0 ms) [ok]: HPERSIST - key does not exist (1 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]: packed node check compression with insert and pop (2 ms) [ok]: packed node check compression combined with trim (0 ms) [ok]: packed node check compression with lset (1 ms) [ok]: HRANDFIELD - CASE 1: negative count (105 ms) [ok]: HRANDFIELD - CASE 2: The number of requested elements is greater than the number of elements inside the hash (104 ms) [ok]: SETEX - Wait for the key to expire (1100 ms) [ok]: SETEX - Wrong time parameter (0 ms) [ok]: PERSIST can undo an EXPIRE (1 ms) [ok]: PERSIST returns 0 against non existing or non volatile keys (0 ms) [ok]: eviction due to input buffer of a dead client, client eviction: true (3244 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 insert and pop (292 ms) [ok]: Connect a replica to the master instance (805 ms) [ok]: Replication of script multiple pushes to list with BLPOP (0 ms) [ok]: Lua scripts using SELECT are replicated correctly (0 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 (0 ms) [ok]: plain node check compression combined with trim (125 ms) [ok]: Hash Encoding Transitions with TTL - Create New Fields with TTL (101 ms) [ok]: HGETALL skips expired fields (10 ms) [ok]: HSCAN skips expired fields (11 ms) [ok]: MOVE preserves field TTLs (1 ms) [ok]: plain node check compression with lset (167 ms) [ok]: HSET - overwrite expired field without TTL clears expiration (101 ms) [ok]: HINCRBY - on expired field (101 ms) [ok]: Test LPUSH and LPOP on plain nodes (3 ms) [ok]: Test LINDEX and LINSERT on plain nodes (1 ms) [ok]: Test LTRIM on plain nodes (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]: WAITAOF replica copy if replica is blocked (899 ms) [ok]: eviction due to output buffers of pubsub, client eviction: true (593 ms) [ok]: HINCRBYFLOAT - on expired field (102 ms) [ok]: HSET - overwrite unexpired field removes TTL (0 ms) [ok]: HDEL - expired field is removed without triggering expiry logic (20 ms) [ok]: HDEL on field with TTL, then re-add and check TTL is gone (0 ms) [ok]: Test LSET with packed / plain combinations (169 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 (4 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 (1 ms) [ok]: CLIENT LIST with multiple id filters (1 ms) [ok]: CLIENT KILL with multiple id filters (0 ms) [ok]: expired_fields metric increments by one when single hash field expires (101 ms) [ok]: AOF rewrite during write load: RDB preamble=yes (13231 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-random) (76 ms) [ok]: Test LSET with packed consist only one item (169 ms) [ok]: Crash due to delete entry from a compress quicklist node (1 ms) [ok]: Crash due to split quicklist node wrongly (1 ms) [ok]: Test LPUSH and LPOP on plain nodes (2 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]: expired_fields metric tracks multiple field expirations with keyspace notifications (204 ms) [ok]: Test LSET with packed / plain combinations (167 ms) [ok]: Test LSET with packed is split in the middle (2 ms) [ok]: EXPIRE precision is now the millisecond (1105 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lru) (298 ms) [ok]: PSETEX can set sub-second expires (101 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]: PEXPIRE can set sub-second expires (102 ms) [ok]: LPOS basic usage - quicklist (42 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 (0 ms) [ok]: LPOS MAXLEN (1 ms) [ok]: LPOS when RANK is greater than matches (0 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - quicklist (85 ms) [ok]: LPOP/RPOP with wrong number of arguments (0 ms) [ok]: PEXPIREAT can set sub-second expires (203 ms) [ok]: EXPIRE / EXPIREAT / PEXPIRE / PEXPIREAT Expiration time is already expired (5 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 (1 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 (1 ms) [ok]: RPOP/LPOP with the optional count argument - quicklist (43 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 (0 ms) [ok]: LPOS MAXLEN (0 ms) [ok]: LPOS when RANK is greater than matches (0 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - listpack (2 ms) [ok]: LPOP/RPOP with wrong number of arguments (1 ms) [ok]: RPOP/LPOP with the optional count argument - listpack (0 ms) [ok]: LPOP/RPOP with the count 0 returns an empty array in RESP3 (0 ms) [ok]: LPOP/RPOP against non existing key in RESP3 (0 ms) [ok]: LPOP/RPOP with against non existing key in RESP3 (1 ms) [ok]: LPOP/RPOP with the count 0 returns an empty array in RESP2 (0 ms) [ok]: LPOP/RPOP against non existing key in RESP2 (0 ms) [ok]: LPOP/RPOP with against non existing key in RESP2 (2 ms) [ok]: Variadic RPUSH/LPUSH (1 ms) [ok]: DEL a list (0 ms) [ok]: BLPOP: single existing list - quicklist (43 ms) [ok]: WAITAOF replica multiple clients unblock - reuse last result (1003 ms) [ok]: WAITAOF on promoted replica (0 ms) [ok]: BLPOP: multiple existing lists - quicklist (87 ms) [ok]: BLPOP: second list has an entry - quicklist (41 ms) [ok]: CLIENT LIST with multiple negative filters (1002 ms) [ok]: CLIENT LIST with NOT-IP filter (1 ms) [ok]: BLMPOP_LEFT: single existing list - quicklist (42 ms) [ok]: BLMPOP_LEFT: multiple existing lists - quicklist (85 ms) [ok]: CLIENT LIST with IPv6 negative filter (0 ms) [ok]: BLMPOP_LEFT: second list has an entry - quicklist (43 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lfu) (761 ms) [ok]: BRPOPLPUSH - quicklist (43 ms) [ok]: Key TTL expires before field TTL: entire hash should be deleted timeunit: s, (1006 ms) [ok]: BLMOVE left left - quicklist (43 ms) [ok]: CLIENT LIST with NOT-CAPA filter (1 ms) [ok]: CLIENT KILL with NOT-IP filter (1 ms) [ok]: CLIENT KILL with NOT-CAPA filter (1 ms) [ok]: CLIENT KILL with NOT-NAME filter (1 ms) [ok]: CLIENT KILL with NOT-FLAGS filter (1 ms) [ok]: CLIENT KILL with NOT-TYPE filter (1 ms) [ok]: CLIENT KILL with multiple negative filters (1 ms) [ok]: BLMOVE left right - quicklist (43 ms) [ok]: {cluster} SCAN regression test for issue #4906 (5398 ms) [ok]: {cluster} SCAN MATCH pattern implies cluster slot (29 ms) [ok]: BLMOVE right left - quicklist (44 ms) [32/144 done]: unit/scan (15 seconds) Testing unit/type/set [ok]: BLMOVE right right - quicklist (43 ms) [ok]: BLPOP: single existing list - listpack (3 ms) [ok]: BLPOP: multiple existing lists - listpack (4 ms) [ok]: BLPOP: second list has an entry - listpack (1 ms) [ok]: BLMPOP_LEFT: single existing list - listpack (2 ms) [ok]: BLMPOP_LEFT: multiple existing lists - listpack (3 ms) [ok]: BLMPOP_LEFT: second list has an entry - listpack (1 ms) [ok]: BRPOPLPUSH - listpack (2 ms) [ok]: BLMOVE left left - listpack (1 ms) [ok]: BLMOVE left right - listpack (2 ms) [ok]: BLMOVE right left - listpack (1 ms) [ok]: BLMOVE right right - listpack (3 ms) [ok]: Server should actively expire keys incrementally (607 ms) [ok]: BLPOP, LPUSH + DEL should not awake blocked client (1 ms) [ok]: BLPOP, LPUSH + DEL + SET should not awake blocked client (2 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) (3 ms) [ok]: MULTI/EXEC is isolated from the point of view of BLPOP (2 ms) [ok]: BLPOP with variadic LPUSH (1 ms) [ok]: MULTI/EXEC is isolated from the point of view of BLMPOP_LEFT (1 ms) [ok]: BLMPOP_LEFT with variadic LPUSH (3 ms) [ok]: BRPOPLPUSH with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE left left with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE left right with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE right left with zero timeout should block indefinitely (2 ms) [ok]: BLMOVE right right with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE (left, left) with a client BLPOPing the target list (2 ms) [ok]: BLMOVE (left, right) with a client BLPOPing the target list (1 ms) [ok]: BLMOVE (right, left) with a client BLPOPing the target list (2 ms) [ok]: BLMOVE (right, right) with a client BLPOPing the target list (1 ms) [ok]: BRPOPLPUSH with wrong source type (2 ms) [ok]: BRPOPLPUSH with wrong destination type (3 ms) [ok]: BRPOPLPUSH maintains order of elements after failure (1 ms) [ok]: BRPOPLPUSH with multiple blocked clients (2 ms) [ok]: BLMPOP with multiple blocked clients (4 ms) [ok]: Linked LMOVEs (3 ms) [ok]: Circular BRPOPLPUSH (2 ms) [ok]: Self-referential BRPOPLPUSH (1 ms) [ok]: BRPOPLPUSH inside a transaction (1 ms) [ok]: PUSH resulting from BRPOPLPUSH affect WATCH (3 ms) [ok]: BRPOPLPUSH does not affect WATCH while still blocked (2 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - listpack (2 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - hashtable (14 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - intset (3 ms) [ok]: SMISMEMBER SMEMBERS SCARD against non set (0 ms) [ok]: SMISMEMBER SMEMBERS SCARD against non existing key (1 ms) [ok]: SMISMEMBER requires one or more members (0 ms) [ok]: SADD against non set (0 ms) [ok]: SADD a non-integer against a small intset (1 ms) [ok]: SADD a non-integer against a large intset (11 ms) [ok]: SADD an integer larger than 64 bits (2 ms) [ok]: SADD an integer larger than 64 bits to a large intset (13 ms) [ok]: Connect a replica to the master instance (809 ms) [ok]: Redis.replicate_commands() can be issued anywhere now (0 ms) [ok]: Redis.set_repl() can be issued before replicate_commands() now (1 ms) [ok]: Redis.set_repl() don't accept invalid values (0 ms) [ok]: Test selective replication of certain commands from Lua (2 ms) [ok]: PRNG is seeded randomly for command replication (1 ms) [ok]: Using side effects is not a problem with command replication (1 ms) [ok]: SADD overflows the maximum allowed integers in an intset - single (46 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single (12 ms) [ok]: Test latency events logging (3403 ms) [ok]: LATENCY HISTORY output is ok (1 ms) [ok]: LATENCY LATEST output is ok (0 ms) [ok]: LATENCY GRAPH can output the event graph (1 ms) [ok]: SADD overflows the maximum allowed integers in an intset - multiple (43 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - multiple (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 (2 ms) [ok]: Variadic SADD (0 ms) [ok]: Set encoding after DEBUG RELOAD (157 ms) [ok]: SREM basics - $type (1 ms) [ok]: SREM basics - $type (13 ms) [ok]: SREM basics - intset (1 ms) [ok]: SREM with multiple arguments (1 ms) [ok]: SREM variadic version with more args needed to destroy the key (0 ms) [ok]: SINTERCARD with illegal arguments (2 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 (1 ms) [ok]: SINTERSTORE with two sets - regular (0 ms) [ok]: SINTERSTORE with two sets, after a DEBUG RELOAD - regular (6 ms) [ok]: SUNION with two sets - regular (8 ms) [ok]: SUNIONSTORE with two sets - regular (7 ms) [ok]: SINTER against three sets - regular (0 ms) [ok]: SINTERCARD against three sets - regular (1 ms) [ok]: SINTERSTORE with three sets - regular (0 ms) [ok]: SUNION with non existing keys - regular (6 ms) [ok]: SDIFF with two sets - regular (0 ms) [ok]: SDIFF with three sets - regular (0 ms) [ok]: SDIFFSTORE with three sets - regular (0 ms) [ok]: SINTER/SUNION/SDIFF with three same sets - regular (6 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 (7 ms) [ok]: SUNION with two sets - intset (6 ms) [ok]: SUNIONSTORE with two sets - intset (8 ms) [ok]: SINTER against three sets - intset (0 ms) [ok]: SINTERCARD against three sets - intset (0 ms) [ok]: SINTERSTORE with three sets - intset (0 ms) [ok]: SUNION with non existing keys - intset (6 ms) [ok]: SDIFF with two sets - intset (3 ms) [ok]: SDIFF with three sets - intset (0 ms) [ok]: SDIFFSTORE with three sets - intset (1 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]: SINTERSTORE with two hashtable sets where result is intset (27 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]: maxmemory - is the memory limit honoured? (policy volatile-lru) (979 ms) [ok]: Field TTL expires before key TTL: only the specific field should expire: s, (1008 ms) [ok]: CLIENT KILL with both positive and negative filters including idle time (1004 ms) [ok]: CLIENT LIST with illegal arguments (2 ms) [ok]: client input output and command process statistics (3 ms) [ok]: CLIENT KILL with illegal arguments (2 ms) [ok]: Server should lazy expire keys (1002 ms) [ok]: BRPOPLPUSH timeout (1021 ms) [ok]: SWAPDB awakes blocked client (3 ms) [ok]: SWAPDB wants to wake blocked client, but the key already expired (149 ms) [ok]: test RESP2/2 big number protocol parsing (5 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 (1 ms) [ok]: test RESP2/3 map protocol parsing (0 ms) [ok]: test RESP2/3 set protocol parsing (0 ms) [ok]: test RESP2/3 double protocol parsing (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 (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 (3 ms) [ok]: test RESP3/3 set protocol parsing (2 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 (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 (3 ms) [ok]: TIME command using cached time (11 ms) [ok]: WAITAOF master that loses a replica and backlog is dropped (2003 ms) [ok]: Script block the time in some expiration related commands (83 ms) [ok]: RESTORE expired keys with expiration time (11 ms) [ok]: MULTI + LPUSH + EXPIRE + DEBUG SLEEP on blocked client, key already expired (298 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 (0 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (1 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua true boolean -> Redis protocol type conversion (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 (2 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 (1 ms) [ok]: EVAL - Is the Lua client using the currently selected DB? (1 ms) [ok]: EVAL - SELECT inside Lua should not affect the caller (1 ms) [ok]: EVAL - Scripts do not block on blpop command (0 ms) [ok]: EVAL - Scripts do not block on brpop command (1 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 (1 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 (1 ms) [ok]: EVAL - No arguments to redis.call/pcall is considered an error (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (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? (1 ms) [ok]: Key and field TTL expire simultaneously: entire hash should be deleted: s, (1009 ms) [ok]: EXPIRE should not resurrect keys (issue #1026) (1002 ms) [ok]: 5 keys in, 5 keys out (1 ms) [ok]: EXPIRE with empty string as TTL should report an error (0 ms) [ok]: SET with EX with big integer should report an error (1 ms) [ok]: SET with EX with smallest integer should report an error (0 ms) [ok]: GETEX with big integer should report an error (0 ms) [ok]: GETEX with smallest integer should report an error (1 ms) [ok]: EXPIRE with big integer overflows when converted to milliseconds (1 ms) [ok]: PEXPIRE with big integer overflow when basetime is added (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]: EVAL - cmsgpack pack/unpack smoke test (333 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (1 ms) [ok]: EVAL - Numerical sanity check from bitop (2 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 (2 ms) [ok]: redis.sha1hex() implementation (1 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-lfu) (1702 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 (2 ms) [ok]: BLPOP when result key is created by SORT..STORE (1 ms) [ok]: BLMPOP_LEFT when new key is moved into place (2 ms) [ok]: BLMPOP_LEFT when result key is created by SORT..STORE (1 ms) [ok]: BLPOP: timeout value out of range (1 ms) [ok]: BLPOP: with single empty list argument (1 ms) [ok]: BLPOP: with negative timeout (1 ms) [ok]: BLPOP: with non-integer timeout (1 ms) [ok]: BLPOP: with zero timeout should block indefinitely (1 ms) [ok]: BLPOP: with 0.001 timeout should not block indefinitely (22 ms) [ok]: BLPOP: second argument is not a list (1 ms) [ok]: CLIENT KILL maxAGE will kill old clients (2004 ms) [ok]: CLIENT KILL SKIPME YES/NO will kill all clients (3 ms) [ok]: CLIENT command unhappy path coverage (3 ms) [ok]: CLIENT KILL close the client connection during bgsave (99 ms) [ok]: CLIENT REPLY OFF/ON: disable all commands reply (41 ms) [ok]: LTRIM stress testing - quicklist (5933 ms) [ok]: CLIENT REPLY SKIP: skip the next command reply (43 ms) [ok]: CLIENT REPLY ON: unset SKIP flag (43 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 (1 ms) [ok]: MONITOR supports redacting command arguments (2 ms) [ok]: MONITOR correctly handles multi-exec cases (1 ms) [ok]: MONITOR correctly records SET EX in MULTI-EXEC (1 ms) [ok]: Measures elapsed time os.clock() (1027 ms) [ok]: MONITOR log blocked command only once (2 ms) [ok]: CLIENT GETNAME should return NIL if name is not assigned (1 ms) [ok]: Prohibit dangerous lua methods in sandbox (1 ms) [ok]: CLIENT GETNAME check if name set correctly (0 ms) [ok]: CLIENT LIST shows empty fields for unassigned names (0 ms) [ok]: CLIENT SETNAME does not accept spaces (0 ms) [ok]: CLIENT SETNAME can assign a name to this connection (0 ms) [ok]: CLIENT SETNAME can change the name of an existing connection (1 ms) [ok]: After CLIENT SETNAME, connection can still be closed (0 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (3 ms) [ok]: CLIENT SETINFO can set a library name to this connection (0 ms) [ok]: Globals protection reading an undeclared global variable (0 ms) [ok]: Globals protection setting an undeclared global* (0 ms) [ok]: lua bit.tohex bug (1 ms) [ok]: CLIENT SETINFO invalid args (1 ms) [ok]: RESET does NOT clean library name (0 ms) [ok]: CLIENT SETINFO can clear library name (0 ms) [ok]: Test an example script DECR_IF_GT (1 ms) [ok]: CONFIG GET should return sorted output (4 ms) [ok]: Millisecond/Seconds precision (1502 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 (389 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) (1 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) (0 ms) [ok]: Functions in the Redis namespace are able to report errors (1 ms) [ok]: CLUSTER RESET can not be invoke from within a script (0 ms) [ok]: Script with RESP3 map (1 ms) [ok]: Script return recursive object (106 ms) [ok]: BLPOP: timeout (1065 ms) [ok]: BLPOP: arguments are empty (2 ms) [ok]: BRPOP: with single empty list argument (1 ms) [ok]: BRPOP: with negative timeout (0 ms) [ok]: BRPOP: with non-integer timeout (1 ms) [ok]: BRPOP: with zero timeout should block indefinitely (1 ms) [ok]: Script check unpack with massive arguments (28 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 (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 (0 ms) [ok]: Try trick readonly table on cmsgpack table (0 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (0 ms) [ok]: Test dofile are not available (0 ms) [ok]: Test print are not available (0 ms) [ok]: BRPOP: with 0.001 timeout should not block indefinitely (22 ms) [ok]: BRPOP: second argument is not a list (1 ms) [ok]: LATENCY GRAPH can output the expire event graph (1 ms) [ok]: LATENCY of expire events are correctly collected (3514 ms) [ok]: LATENCY HISTORY / RESET with wrong event name is fine (0 ms) [ok]: LATENCY DOCTOR produces some output (1 ms) [ok]: LATENCY RESET is able to reset events (0 ms) [ok]: LATENCY HELP should not have unexpected options (0 ms) [ignore]: large memory flag not provided [ok]: CONFIG save params special case handled properly (882 ms) [ok]: CONFIG sanity (26 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-random) (1591 ms) [ok]: SDIFF fuzzing (3478 ms) [ok]: SDIFF against non-set should throw error (1 ms) [ok]: SDIFF should handle non existing key as empty (1 ms) [ok]: SDIFFSTORE against non-set should throw error (1 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 (0 ms) [ok]: SINTER with same integer elements but different encoding (1 ms) [ok]: SINTERSTORE against non-set should throw error (1 ms) [ok]: SINTERSTORE against non existing keys should delete dstkey (0 ms) [ok]: SUNION against non-set should throw error (1 ms) [ok]: SUNION should handle non existing key as empty (1 ms) [ok]: SUNIONSTORE against non-set should throw error (1 ms) [ok]: SUNIONSTORE should handle non existing key as empty (1 ms) [ok]: SUNIONSTORE against non existing keys should delete dstkey (1 ms) [ok]: SPOP basics - listpack (1 ms) [ok]: SPOP with =1 - listpack (0 ms) [ok]: SRANDMEMBER - listpack (7 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 (1 ms) [ok]: SPOP with - listpack (5 ms) [ok]: SPOP with - intset (5 ms) [ok]: All time-to-live(TTL) in commands are propagated as absolute timestamp in milliseconds in AOF (2039 ms) [ok]: SPOP with - hashtable (4 ms) [ok]: SPOP using integers, testing Knuth's and Floyd's algorithm (4 ms) [ok]: SPOP using integers with Knuth's algorithm (0 ms) [ok]: SPOP new implementation: code path #1 intset (2 ms) [ok]: SPOP new implementation: code path #2 intset (3 ms) [ok]: SPOP new implementation: code path #3 intset (3 ms) [ok]: SPOP new implementation: code path #1 listpack (3 ms) [ok]: SPOP new implementation: code path #2 listpack (2 ms) [ok]: SPOP new implementation: code path #3 listpack (2 ms) [ok]: CONFIG REWRITE sanity (178 ms) [ok]: SPOP new implementation: code path #1 propagate as DEL or UNLINK (71 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 (0 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (402 ms) [ok]: SRANDMEMBER with - listpack (23 ms) [ok]: All TTL in commands are propagated as absolute timestamp in replication stream (48 ms) [ok]: SRANDMEMBER with - intset (20 ms) [ok]: SRANDMEMBER with - hashtable (25 ms) [ok]: Key TTL expires before field TTL: entire hash should be deleted timeunit: ms (1007 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (94 ms) [ok]: SRANDMEMBER histogram distribution - listpack (61 ms) [ok]: First server should have role slave after REPLICAOF (1 ms) [ok]: SRANDMEMBER histogram distribution - intset (54 ms) [ok]: Timedout script does not cause a false dead client (77 ms) [ok]: WAITAOF master isn't configured to do AOF (1003 ms) [ok]: SRANDMEMBER histogram distribution - hashtable (55 ms) [ok]: SMOVE basics - from regular set to intset (2 ms) [ok]: SMOVE basics - from intset to regular set (1 ms) [ok]: SMOVE non existing key (0 ms) [ok]: SMOVE non existing src set (0 ms) [ok]: SMOVE from regular set to non existing destination set (1 ms) [ok]: SMOVE from intset to non existing destination set (1 ms) [ok]: SMOVE wrong src key type (0 ms) [ok]: SMOVE wrong dst key type (1 ms) [ok]: SMOVE with identical source and destination (0 ms) [ok]: SMOVE only notify dstset when the addition is successful (1 ms) [ok]: Timedout script link is still usable after Lua returns (129 ms) [ok]: WAITAOF replica isn't configured to do AOF (108 ms) [ok]: BRPOP: timeout (1075 ms) [ok]: BRPOP: arguments are empty (2 ms) [ok]: BLMPOP_LEFT: with single empty list argument (1 ms) [ok]: BLMPOP_LEFT: with negative timeout (1 ms) [ok]: BLMPOP_LEFT: with non-integer timeout (0 ms) [ok]: BLMPOP_LEFT: with zero timeout should block indefinitely (1 ms) [ok]: BLMPOP_LEFT: with 0.001 timeout should not block indefinitely (21 ms) [ok]: BLMPOP_LEFT: second argument is not a list (0 ms) [ok]: CONFIG REWRITE handles save and shutdown properly (656 ms) [ok]: CONFIG SET with multiple args (1 ms) [ok]: CONFIG SET rollback on set error (1 ms) [ok]: CONFIG SET rollback on apply error (3 ms) [ok]: CONFIG SET duplicate configs (0 ms) [ok]: CONFIG SET set immutable (0 ms) [ok]: CONFIG GET hidden configs (4 ms) [ok]: CONFIG GET multiple args (0 ms) [ok]: Timedout scripts and unblocked command (309 ms) [ok]: valkey-server command line arguments - error cases (66 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]: For all replicated TTL-related commands, absolute expire times are identical on primary and replica (901 ms) [ok]: Before the replica connects we issue two EVAL commands (0 ms) [ok]: Field TTL expires before key TTL: only the specific field should expire: ms (1010 ms) [ok]: tot-net-out for replica client (528 ms) [ok]: CLIENT LIST can filter by LIB-NAME (2 ms) [ok]: CLIENT LIST can filter by LIB-VER (0 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 (2 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 (0 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 (897 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-ttl) (1484 ms) [ok]: expired key which is created in writeable replicas should be deleted by active expiry (306 ms) [ok]: valkey-server command line arguments - allow passing option name and option value in the same arg (217 ms) [ok]: intsets implementation stress testing (1218 ms) [ok]: SET command will remove expire (1 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed (0 ms) [33/145 done]: unit/type/set (6 seconds) Testing unit/type/list-3 [ok]: BLMPOP_LEFT: timeout (1076 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 (1 ms) [ok]: BLMPOP_RIGHT: with non-integer timeout (1 ms) [ok]: BLMPOP_RIGHT: with zero timeout should block indefinitely (1 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]: Explicit regression for a list bug (0 ms) [ok]: valkey-server command line arguments - wrong usage that we support anyway (219 ms) [ok]: Regression for quicklist #3343 bug (125 ms) [ok]: Test check paused info during the cluster failover in info clients (57 ms) [ok]: Check compression with recompress (44 ms) [ok]: Connect a replica to the master instance (808 ms) [ok]: valkey-server command line arguments - allow option value to use the `--` prefix (216 ms) [ok]: Replication of script multiple pushes to list with BLPOP (0 ms) [ok]: Lua scripts using SELECT are replicated correctly (0 ms) [34/145 done]: unit/pause (14 seconds) Testing unit/type/incr [ok]: Crash due to wrongly recompress after lrem (208 ms) [ok]: INCR against non existing key (1 ms) [ok]: INCR against key created by incr itself (0 ms) [ok]: DECR against key created by incr (0 ms) [ok]: DECR against key is not exist and incr (0 ms) [ok]: INCR against key originally set with SET (0 ms) [ok]: INCR over 32bit value (0 ms) [ok]: INCRBY over 32bit value with over 32bit increment (0 ms) [ok]: INCR fails against key with spaces (left) (0 ms) [ok]: INCR fails against key with spaces (right) (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 (0 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 (1 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) (0 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 (0 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 (0 ms) [ok]: decr operation should update encoding from raw to int (1 ms) [ok]: incrby operation should update encoding from raw to int (0 ms) [ok]: decrby operation should update encoding from raw to int (1 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element before it (42 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element after it (43 ms) [35/145 done]: unit/type/incr (0 seconds) Testing unit/type/stream-cgroups [ok]: valkey-server command line arguments - option name and option value in the same arg and `--` prefix (226 ms) [ok]: Key and field TTL expire simultaneously: entire hash should be deleted: ms (1006 ms) [ok]: XGROUP CREATE: creation and duplicate group name detection (1 ms) [ok]: XGROUP CREATE: with ENTRIESREAD parameter (1 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 (0 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 (1 ms) [ok]: XACK can't remove the same item multiple times (0 ms) [ok]: XACK is able to accept multiple arguments (0 ms) [ok]: XACK should fail if got at least one invalid ID (1 ms) [ok]: PEL NACK reassignment after XGROUP SETID event (1 ms) [ok]: XREADGROUP will not report data on empty history. Bug #5577 (1 ms) [ok]: XREADGROUP history reporting of deleted entries. Bug #5570 (0 ms) [ok]: Blocking XREADGROUP will not reply with an empty array (22 ms) [ok]: Blocking XREADGROUP: key deleted (1 ms) [ok]: Blocking XREADGROUP: key type changed with SET (1 ms) [ok]: Blocking XREADGROUP: key type changed with transaction (1 ms) [ok]: Blocking XREADGROUP: flushed DB (1 ms) [ok]: Blocking XREADGROUP: swapped DB, key doesn't exist (1 ms) [ok]: Blocking XREADGROUP: swapped DB, key is not a stream (1 ms) [ok]: XREAD and XREADGROUP against wrong parameter (1 ms) [ok]: Blocking XREAD: key deleted (0 ms) [ok]: Blocking XREAD: key type changed with SET (0 ms) [ok]: Blocking XREADGROUP for stream that ran dry (issue #5299) (35 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 (3 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - avoid endless loop (1 ms) [ok]: WAITAOF master sends PING after last write (1203 ms) [ok]: BLMPOP_RIGHT: timeout (1075 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]: BLMPOP propagate as pop with count command to replica (197 ms) [ok]: LPUSHX, RPUSHX - generic (1 ms) [ok]: LPUSHX, RPUSHX - quicklist (41 ms) [ok]: LINSERT - quicklist (42 ms) [ok]: LPUSHX, RPUSHX - listpack (1 ms) [ok]: LINSERT - listpack (2 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 (0 ms) [ok]: LINDEX consistency test - listpack (50 ms) [ok]: LINDEX random access - listpack (34 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (55 ms) [ok]: valkey-server command line arguments - save with empty input (1080 ms) [ok]: LINDEX consistency test - listpack (77 ms) [ok]: LINDEX random access - listpack (54 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (106 ms) [ok]: LINDEX consistency test - quicklist (38 ms) [ok]: valkey-server command line arguments - take one bulk string with spaces for MULTI_ARG configs parsing (219 ms) [ok]: LINDEX random access - quicklist (27 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - reprocessing command (1094 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 (1 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (53 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed after loadaof (2005 ms) [ok]: GETEX use of PERSIST option should remove TTL (1 ms) [ok]: GETEX use of PERSIST option should remove TTL after loadaof (1 ms) [ok]: GETEX propagate as to replica as PERSIST, UNLINK, or nothing (59 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]: LINDEX consistency test - quicklist (75 ms) [ok]: EXPIRE with XX option on a key with ttl (1 ms) [ok]: EXPIRE with XX option on a key without ttl (1 ms) [ok]: EXPIRE with GT option on a key with lower ttl (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 (0 ms) [ok]: EXPIRE with LT option on a key with higher ttl (0 ms) [ok]: EXPIRE with LT option on a key with lower ttl (0 ms) [ok]: EXPIRE with LT option on a key without ttl (0 ms) [ok]: EXPIRE with LT and XX option on a key with ttl (1 ms) [ok]: EXPIRE with LT and XX option on a key without ttl (0 ms) [ok]: EXPIRE with conflicting options: LT GT (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]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-random) (2319 ms) [ok]: LINDEX random access - quicklist (54 ms) [ok]: Millisecond/Seconds precision (1502 ms) [ok]: Ensure that key-level PERSIST on the key don't affect field TTL (1 ms) [ok]: Verify error when hash expire commands num fields is not provided (0 ms) [ok]: valkey-server command line arguments - dir multiple times (220 ms) [ok]: WAITAOF master client didn't send any write command (1201 ms) [ok]: Server should not propagate the read command on lazy expire (94 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (105 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]: SCAN: Lazy-expire should not be wrapped in MULTI/EXEC (100 ms) [ok]: RPOPLPUSH base case - quicklist (41 ms) [ok]: LMOVE left left base case - quicklist (42 ms) [ok]: auth check before command existence check and command arity check (1 ms) [ok]: cannot modify protected configuration - no (1 ms) [ok]: LMOVE left right base case - quicklist (42 ms) [ok]: Hash ttl - check command stats (2 ms) [ok]: RANDOMKEY: Lazy-expire should not be wrapped in MULTI/EXEC (101 ms) [ok]: import-source can be closed when import-mode is off (1 ms) [ok]: LMOVE right left base case - quicklist (42 ms) [ok]: LMOVE right right base case - quicklist (42 ms) [ok]: LTRIM stress testing - listpack (5146 ms) [36/145 done]: unit/type/list-2 (11 seconds) Testing unit/type/string [ok]: RPOPLPUSH with the same list as src and dst - quicklist (42 ms) [ok]: Import mode should forbid active expiration (111 ms) [ok]: Import mode should forbid lazy expiration (11 ms) [ok]: LMOVE left left with the same list as src and dst - quicklist (42 ms) [ok]: Connect a replica to the master instance (808 ms) [ok]: Redis.replicate_commands() can be issued anywhere now (0 ms) [ok]: Redis.set_repl() can be issued before replicate_commands() now (1 ms) [ok]: Redis.set_repl() don't accept invalid values (0 ms) [ok]: Test selective replication of certain commands from Lua (1 ms) [ok]: PRNG is seeded randomly for command replication (0 ms) [ok]: Using side effects is not a problem with command replication (1 ms) [ok]: cannot modify protected configuration - local (3 ms) [ok]: XCLAIM can claim PEL items from another consumer (604 ms) [ok]: LMOVE left right with the same list as src and dst - quicklist (42 ms) [ok]: SET and GET an item (1 ms) [ok]: SET and GET an empty item (0 ms) [ok]: LMOVE right left with the same list as src and dst - quicklist (42 ms) [ok]: Client can visit expired key in import-source state (117 ms) [ok]: Very big payload in GET/SET (36 ms) [ok]: LMOVE right right with the same list as src and dst - quicklist (41 ms) [ok]: GEOSEARCH fuzzy test - byradius (18663 ms) [ok]: RPOPLPUSH with quicklist source and existing target quicklist (84 ms) [ok]: LMOVE left left with quicklist source and existing target quicklist (84 ms) [ok]: LMOVE left right with quicklist source and existing target quicklist (83 ms) [ok]: XCLAIM without JUSTID increments delivery count (403 ms) [ok]: Active expiration triggers hashtable shrink (158 ms) [ok]: LMOVE right left with quicklist source and existing target quicklist (84 ms) [ok]: LMOVE right right with quicklist source and existing target quicklist (83 ms) [ok]: RPOPLPUSH with quicklist source and existing target listpack (42 ms) [ok]: LMOVE left left with quicklist source and existing target listpack (42 ms) [ok]: XCLAIM same consumer (201 ms) [ok]: LMOVE left right with quicklist source and existing target listpack (42 ms) [ok]: LMOVE right left with quicklist source and existing target listpack (42 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 (0 ms) [ok]: LMOVE right left base case - listpack (0 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 (41 ms) [ok]: WAITAOF master client didn't send any command (1202 ms) [ok]: LMOVE left right with listpack source and existing target quicklist (42 ms) [ok]: config during loading (774 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 (41 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 (3 ms) [ok]: Basic LPOP/RPOP/LMPOP - quicklist (85 ms) [ok]: Basic LPOP/RPOP/LMPOP - listpack (1 ms) [ok]: LPOP/RPOP/LMPOP against empty list (1 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 (22 ms) [ok]: HASH TTL - replica retains TTL and field before expiration (1 ms) [ok]: HSETEX with expired time is propagated to the replica (2 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 (26 ms) [ok]: MIGRATE cached connections are released after some time (15001 ms) [ok]: Mass RPOP/LPOP - listpack (51 ms) [ok]: LMPOP with illegal argument (1 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 (1 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 (1 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 (1 ms) [ok]: test RESP2/3 false protocol parsing (0 ms) [ok]: test RESP3/2 big number protocol parsing (1 ms) [ok]: test RESP3/2 malformed big number protocol parsing (0 ms) [ok]: test RESP3/2 map protocol parsing (1 ms) [ok]: test RESP3/2 set protocol parsing (0 ms) [ok]: test RESP3/2 double protocol parsing (1 ms) [ok]: XAUTOCLAIM can claim PEL items from another consumer (603 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 (1 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 (11 ms) [ok]: LMPOP single existing list - quicklist (128 ms) [ok]: Script block the time in some expiration related commands (81 ms) [ok]: RESTORE expired keys with expiration time (11 ms) [ok]: MIGRATE is able to migrate a key between two instances (223 ms) [ok]: XAUTOCLAIM as an iterator (203 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 (1 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]: LMPOP multiple existing lists - quicklist (167 ms) [ok]: LMPOP single existing list - listpack (2 ms) [ok]: LMPOP multiple existing lists - listpack (4 ms) [ok]: Script - disallow write on OOM (0 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 (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 (0 ms) [ok]: EVAL - Lua false boolean -> Redis protocol type conversion (1 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]: EVALSHA - Can we call a SHA1 if already defined? (0 ms) [ok]: EVALSHA_RO - Can we call a SHA1 if already defined? (0 ms) [ok]: EVALSHA - Can we call a SHA1 in uppercase? (0 ms) [ok]: EVALSHA - Do we get an error on invalid SHA1? (0 ms) [ok]: EVALSHA - Do we get an error on non defined SHA1? (0 ms) [ok]: EVAL - 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? (1 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 (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 (0 ms) [ok]: EVAL - Scripts can run non-deterministic commands (0 ms) [ok]: EVAL - No arguments to redis.call/pcall is considered an error (1 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (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]: LMPOP propagate as pop with count command to replica (113 ms) [ok]: MIGRATE is able to copy a key between two instances (219 ms) [ok]: LRANGE basics - quicklist (42 ms) [ok]: MEMORY commands during loading (749 ms) [ok]: Consumer seen-time and active-time (203 ms) [ok]: XGROUP CREATECONSUMER: create consumer if does not exist (2 ms) [ok]: XGROUP CREATECONSUMER: group must exist (0 ms) [ok]: LRANGE inverted indexes - quicklist (41 ms) [ok]: LRANGE out of range indexes including the full list - quicklist (41 ms) [ok]: LRANGE out of range negative end index - quicklist (41 ms) [ok]: LRANGE basics - listpack (1 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 (0 ms) [ok]: LRANGE against non existing key (0 ms) [ok]: LRANGE with start > end yields an empty array for backward compatibility (0 ms) [ok]: XREADGROUP with NOACK creates consumer (5 ms) [ok]: MIGRATE will not overwrite existing keys, unless REPLACE is used (219 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (243 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 (0 ms) [ok]: EVAL_RO - Successful case (1 ms) [ok]: EVAL_RO - Cannot run write commands (0 ms) [ok]: SCRIPTING FLUSH - is able to clear the scripts cache? (28 ms) [ok]: EVAL - Test table unpack with invalid indexes (1 ms) [ok]: Try trick readonly table on basic types metatable (0 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]: Consumer without PEL is present in AOF after AOFRW (108 ms) [ok]: CONFIG REWRITE handles rename-command properly (335 ms) [ok]: Consumer group read counter and lag in empty streams (1 ms) [ok]: Consumer group read counter and lag sanity (7 ms) [ok]: Consumer group lag with XDELs (6 ms) [ok]: Consumer group lag with XTRIM (6 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 (1 ms) [ok]: MIGRATE propagates TTL correctly (215 ms) [ok]: LTRIM basics - quicklist (493 ms) [ok]: LTRIM out of range negative end index - quicklist (83 ms) [ok]: LSET - quicklist (41 ms) [ok]: LSET out of range index - quicklist (0 ms) [ok]: LTRIM basics - listpack (6 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 (1 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-lru) (2801 ms) [ok]: Replication Primary -> R1 (911 ms) [ok]: LREM remove all the occurrences - quicklist (41 ms) [ok]: LREM remove the first occurrence - quicklist (1 ms) [ok]: LREM remove non existing element - quicklist (0 ms) [ok]: LREM starting from tail with negative count - quicklist (42 ms) [ok]: LREM starting from tail with negative count (2) - quicklist (1 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 (1 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 (0 ms) [ok]: Regression for bug 593 - chaining BRPOPLPUSH with other blocking cmds (1 ms) [ok]: BLPOP/BLMOVE should increase dirty (2 ms) [ok]: client unblock tests (3 ms) [ok]: client unblock tests (2 ms) [ok]: List listpack -> quicklist encoding conversion (2 ms) [ok]: CONFIG REWRITE handles alias config properly (672 ms) [37/145 done]: unit/introspection (15 seconds) Testing unit/type/hash [ok]: List listpack -> quicklist encoding conversion (166 ms) [ok]: HSET/HLEN - Small hash creation (1 ms) [ok]: Is the small hash encoded with a listpack? (0 ms) [ok]: HRANDFIELD - listpack (5 ms) [ok]: HRANDFIELD - hashtable (5 ms) [ok]: HRANDFIELD with RESP3 (0 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]: Measures elapsed time os.clock() (1005 ms) [ok]: Prohibit dangerous lua methods in sandbox (0 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (1 ms) [ok]: Globals protection reading an undeclared global variable (0 ms) [ok]: Globals protection setting an undeclared global* (0 ms) [ok]: lua bit.tohex bug (1 ms) [ok]: Test an example script DECR_IF_GT (0 ms) [ok]: random numbers are random now (0 ms) [ok]: Scripting engine PRNG can be seeded correctly (0 ms) [ok]: HRANDFIELD with - hashtable (112 ms) [ok]: List quicklist -> listpack encoding conversion (207 ms) [ok]: List encoding conversion when RDB loading (5 ms) [ok]: List invalid list-max-listpack-size config (84 ms) [ok]: HRANDFIELD with - listpack (108 ms) [ok]: Consumer group last ID propagation to slave (NOACK=0) (915 ms) [ok]: List of various encodings (90 ms) [ok]: List of various encodings - sanitize dump (3 ms) [ok]: HSET/HLEN - Big hash creation (82 ms) [ok]: Is the big hash encoded with an hash table? (0 ms) [ok]: HGET against the small hash (1 ms) [ok]: Unblock fairness is kept while pipelining (5 ms) [ok]: Unblock fairness is kept during nested unblock (4 ms) [ok]: Blocking command accounted only once in commandstats (2 ms) [ok]: Blocking command accounted only once in commandstats after timeout (1 ms) [ok]: HGET against the big hash (72 ms) [ok]: HGET against non existing key (0 ms) [ok]: HSET in update and insert mode (3 ms) [ok]: HSETNX target key missing - small hash (0 ms) [ok]: HSETNX target key exists - small hash (0 ms) [ok]: HSETNX target key missing - big hash (0 ms) [ok]: HSETNX target key exists - big hash (1 ms) [ok]: HSET/HMSET wrong number of args (0 ms) [ok]: HMSET - small hash (0 ms) [ok]: EVAL does not leak in the Lua stack (306 ms) [ok]: Command being unblocked cause another command to get unblocked execution order test (100 ms) [ok]: HMSET - big hash (52 ms) [ok]: HMGET against non existing key and fields (1 ms) [ok]: Hash commands against wrong type (1 ms) [ok]: HMGET - small hash (1 ms) [ok]: HMGET - big hash (51 ms) [ok]: HKEYS - small hash (0 ms) [ok]: SPOP: We can call scripts rewriting client->argv from Lua (91 ms) [ok]: HKEYS - big hash (8 ms) [ok]: HVALS - small hash (0 ms) [ok]: HVALS - big hash (2 ms) [ok]: HGETALL - small hash (0 ms) [ok]: HGETALL - big hash (28 ms) [ok]: HGETALL against non-existing key (0 ms) [ok]: HDEL and return value (1 ms) [ok]: HDEL - more than a single value (0 ms) [ok]: HDEL - hash becomes empty before deleting all specified fields (1 ms) [ok]: HEXISTS (0 ms) [ok]: Is a ziplist encoded Hash promoted on big payload? (1 ms) [ok]: HINCRBY against non existing database key (0 ms) [ok]: HINCRBY HINCRBYFLOAT against non-integer increment value (0 ms) [ok]: HINCRBY against non existing hash key (1 ms) [ok]: HINCRBY against hash key created by hincrby itself (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 (1 ms) [ok]: HINCRBY fails against hash value with spaces (left) (0 ms) [ok]: HINCRBY fails against hash value with spaces (right) (0 ms) [ok]: HINCRBY can detect overflows (1 ms) [ok]: HINCRBYFLOAT against non existing database key (0 ms) [ok]: HINCRBYFLOAT against non existing hash key (0 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 (1 ms) [ok]: HINCRBYFLOAT over 32bit value with over 32bit increment (0 ms) [ok]: HINCRBYFLOAT fails against hash value with spaces (left) (1 ms) [ok]: HINCRBYFLOAT fails against hash value with spaces (right) (0 ms) [ok]: HINCRBYFLOAT fails against hash value that contains a null-terminator in the middle (0 ms) [ok]: HSTRLEN against the small hash (1 ms) [ok]: MGET: mget shouldn't be propagated in Lua (100 ms) [ok]: HSTRLEN against the big hash (60 ms) [ok]: HSTRLEN against non existing field (0 ms) [ok]: HSTRLEN corner cases (2 ms) [ok]: HINCRBYFLOAT over hash-max-listpack-value encoded with a listpack (1 ms) [ok]: Hash ziplist regression test for large keys (1 ms) [ok]: expire scan should skip dictionaries with lot's of empty buckets (927 ms) [ok]: Hash fuzzing #1 - 10 fields (25 ms) [ok]: Chain Replication (Primary -> R1 -> R2) preserves TTL (921 ms) [ok]: Hash fuzzing #2 - 10 fields (17 ms) [ok]: EXPIRE: We can call scripts rewriting client->argv from Lua (101 ms) [38/145 done]: unit/expire (17 seconds) Testing unit/type/stream [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 (0 ms) [ok]: XADD IDs are incremental when ms is the same as well (1 ms) [ok]: XADD IDs correctly report an error when overflowing (0 ms) [ok]: XADD auto-generated sequence is incremented for last ID (0 ms) [ok]: XADD auto-generated sequence is zero for future timestamp ID (1 ms) [ok]: XADD auto-generated sequence can't be smaller than last ID (0 ms) [ok]: XADD auto-generated sequence can't overflow (0 ms) [ok]: XADD 0-* should succeed (0 ms) [ok]: XADD with MAXLEN option (66 ms) [ok]: XADD with MAXLEN option and the '=' argument (67 ms) [ok]: INCRBYFLOAT: We can call scripts expanding client->argv from Lua (321 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 (1 ms) [ok]: XADD with MAXLEN option and the '~' argument (67 ms) [ok]: XADD with NOMKSTREAM option (0 ms) [ok]: XADD with MINID option (71 ms) [ok]: XTRIM with MINID option (1 ms) [ok]: XTRIM with MINID option, big delta from master record (1 ms) [ok]: Script return recursive object (106 ms) [ok]: Script check unpack with massive arguments (27 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 (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 (0 ms) [ok]: Try trick readonly table on cmsgpack table (0 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (0 ms) [ok]: Test dofile are not available (0 ms) [ok]: Test print are not available (0 ms) [ignore]: large memory flag not provided [ok]: Consumer group last ID propagation to slave (NOACK=1) (1011 ms) [ok]: Blocking timeout following PAUSE should honor the timeout (1013 ms) [ok]: CLIENT NO-TOUCH with BRPOP and RPUSH regression test (2 ms) [39/145 done]: unit/type/list (15 seconds) Testing unit/type/zset [ok]: Check encoding - listpack (0 ms) [ok]: ZSET basic ZADD and score update - listpack (1 ms) [ok]: ZSET element can't be set to NaN with ZADD - listpack (0 ms) [ok]: ZSET element can't be set to NaN with ZINCRBY - listpack (0 ms) [ok]: ZADD with options syntax error with incomplete pair - listpack (0 ms) [ok]: ZADD XX option without key - listpack (0 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 (0 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 (0 ms) [ok]: ZADD LT XX updates existing elements when new scores are lower and skips new elements - listpack (1 ms) [ok]: ZADD XX and NX are not compatible - listpack (0 ms) [ok]: ZADD NX with non existing key - listpack (1 ms) [ok]: ZADD NX only add new elements without updating old ones - listpack (0 ms) [ok]: ZADD GT and NX are not compatible - listpack (1 ms) [ok]: ZADD LT and NX are not compatible - listpack (0 ms) [ok]: ZADD LT and GT are not compatible - listpack (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 (1 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 (0 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 (0 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 (0 ms) [ok]: ZREM removes key after last element is removed - listpack (1 ms) [ok]: ZREM variadic version - listpack (0 ms) [ok]: ZREM variadic version -- remove elements after key deletion - listpack (0 ms) [ok]: ZRANGE basics - listpack (1 ms) [ok]: ZREVRANGE basics - listpack (2 ms) [ok]: ZRANK/ZREVRANK basics - listpack (1 ms) [ok]: ZRANK - after deletion - listpack (1 ms) [ok]: ZINCRBY - can create a new sorted set - listpack (0 ms) [ok]: ZINCRBY - increment and decrement - listpack (0 ms) [ok]: ZINCRBY return value - listpack (1 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - listpack (2 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - listpack (0 ms) [ok]: ZRANGEBYSCORE with LIMIT - listpack (5 ms) [ok]: ZRANGEBYSCORE with LIMIT and WITHSCORES - listpack (1 ms) [ok]: ZRANGEBYSCORE with non-value min or max - listpack (1 ms) [ok]: ZRANGEBYLEX/ZREVRANGEBYLEX/ZLEXCOUNT basics - listpack (2 ms) [ok]: ZLEXCOUNT advanced - listpack (1 ms) [ok]: ZRANGEBYLEX with LIMIT - listpack (3 ms) [ok]: ZRANGEBYLEX with invalid lex range specifiers - listpack (1 ms) [ok]: ZREMRANGEBYSCORE basics - listpack (6 ms) [ok]: ZREMRANGEBYSCORE with non-value min or max - listpack (1 ms) [ok]: ZREMRANGEBYRANK basics - listpack (3 ms) [ok]: ZREMRANGEBYLEX basics - listpack (7 ms) [ok]: ZUNIONSTORE against non-existing key doesn't set destination - listpack (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF against non-existing key - listpack (1 ms) [ok]: ZUNIONSTORE with empty set - listpack (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with empty set - listpack (0 ms) [ok]: Hash fuzzing #1 - 512 fields (1057 ms) [ok]: ZUNIONSTORE basics - listpack (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with integer members - listpack (1 ms) [ok]: ZUNIONSTORE with weights - listpack (0 ms) [ok]: ZUNION with weights - listpack (1 ms) [ok]: ZUNIONSTORE with a regular set and weights - listpack (0 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 (0 ms) [ok]: ZINTERSTORE basics - listpack (0 ms) [ok]: ZINTER basics - listpack (0 ms) [ok]: ZINTERCARD with illegal arguments (0 ms) [ok]: ZINTERCARD basics - listpack (1 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (404 ms) [ok]: ZINTER RESP3 - listpack (0 ms) [ok]: ZINTERSTORE with weights - listpack (1 ms) [ok]: ZINTER with weights - listpack (0 ms) [ok]: ZINTERSTORE with a regular set and weights - listpack (0 ms) [ok]: ZINTERSTORE with AGGREGATE MIN - listpack (0 ms) [ok]: ZINTERSTORE with AGGREGATE MAX - listpack (0 ms) [ok]: ZUNIONSTORE with +inf/-inf scores - listpack (1 ms) [ok]: ZUNIONSTORE with NaN weights - listpack (1 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 (2 ms) [ok]: ZDIFF algorithm 1 - listpack (0 ms) [ok]: ZDIFF algorithm 2 - listpack (0 ms) [ok]: Replica Failover (1015 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (76 ms) [ok]: Very big payload random access (4491 ms) [ok]: AOF rewrite during write load: RDB preamble=no (14169 ms) [ok]: Timedout script does not cause a false dead client (75 ms) [ok]: Timedout script link is still usable after Lua returns (129 ms) [ok]: Turning off AOF kills the background writing child if any (105 ms) [ok]: AOF rewrite of list with listpack encoding, string data (103 ms) [ok]: Timedout scripts and unblocked command (309 ms) [ok]: Hash fuzzing #2 - 512 fields (657 ms) [ok]: AOF rewrite of list with quicklist encoding, string data (114 ms) [ok]: Replication tests of XCLAIM with deleted entries (autoclaim=0) (913 ms) [ok]: WAITAOF when replica switches between masters, fsync: no (4336 ms) [ok]: Replication tests of XCLAIM with deleted entries (autoclaim=1) (9 ms) [ok]: XREADGROUP ACK would propagate entries-read (6 ms) [ok]: AOF rewrite of list with listpack encoding, int data (106 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 (3 ms) [ok]: Empty stream with no lastid can be rewrite into AOF correctly (105 ms) [ok]: AOF rewrite of list with quicklist encoding, int data (230 ms) [ok]: Before the replica connects we issue two EVAL commands (1 ms) [ok]: AOF rewrite of set with intset encoding, string data (54 ms) [ok]: SET 10000 numeric keys and access all them in reverse order (979 ms) [ok]: DBSIZE should be 10000 now (0 ms) [ok]: memoryusage of string (5 ms) [ok]: SETNX target key missing (0 ms) [ok]: SETNX target key exists (0 ms) [ok]: SETNX against not-expired volatile key (1 ms) [40/145 done]: unit/type/stream-cgroups (8 seconds) Testing unit/cluster/update-msg [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-lru) (3286 ms) [ok]: Cluster config file latency (9 ms) [ok]: AOF rewrite of set with hashtable encoding, string data (239 ms) [ok]: XADD mass insertion and XLEN (2009 ms) [ok]: XADD with ID 0-0 (1 ms) [ok]: XADD with LIMIT delete entries no more than limit (1 ms) [ok]: XRANGE COUNT works as expected (1 ms) [ok]: AOF rewrite of set with intset encoding, int data (104 ms) [ok]: XREVRANGE COUNT works as expected (0 ms) [41/145 done]: unit/latency-monitor (17 seconds) Testing unit/cluster/pubsubshard-slot-migration [ok]: AOF rewrite of set with hashtable encoding, int data (205 ms) [ok]: Stress test the hash ziplist -> hashtable encoding conversion (1022 ms) [ok]: AOF rewrite of hash with listpack encoding, string data (105 ms) [ok]: XRANGE can be used to iterate the whole stream (315 ms) [ok]: Hash ziplist of various encodings (86 ms) [ok]: Hash ziplist of various encodings - sanitize dump (4 ms) [ok]: HINCRBYFLOAT does not allow NaN or Infinity (0 ms) [42/145 done]: unit/type/hash (4 seconds) Testing unit/cluster/consistency-check [ok]: Connect a replica to the master instance (816 ms) [ok]: Now use EVALSHA against the master, with both SHAs (0 ms) [ok]: 'x' should be '4' for EVALSHA being replicated by effects (0 ms) [ok]: Replication of script multiple pushes to list with BLPOP (1 ms) [ok]: EVALSHA replication when first call is readonly (1 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: AOF rewrite of hash with hashtable encoding, string data (186 ms) [ok]: AOF rewrite of hash with listpack encoding, int data (106 ms) [ok]: Stress tester for #3343-alike bugs comp: 2 (8604 ms) [ok]: AOF rewrite of hash with hashtable encoding, int data (218 ms) [ok]: AOF rewrite of zset with listpack encoding, string data (106 ms) [ok]: AOF rewrite of zset with skiplist encoding, string data (180 ms) [ok]: MIGRATE can correctly transfer large values (5075 ms) [ok]: AOF rewrite of zset with listpack encoding, int data (106 ms) [ok]: AOF rewrite of zset with skiplist encoding, int data (196 ms) [ok]: MIGRATE can correctly transfer hashes (224 ms) [ok]: AOF rewrite functions (105 ms) [ok]: Promotion to primary (2937 ms) [ok]: ZDIFF fuzzing - listpack (3026 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 (0 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 (0 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - listpack (1 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - listpack (1 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 (0 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 (1 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 (1 ms) [ok]: ZADD XX existing key - skiplist (0 ms) [ok]: ZADD XX returns the number of elements actually added - skiplist (0 ms) [ok]: ZADD XX updates existing elements score - skiplist (0 ms) [ok]: ZADD GT updates existing elements when new scores are greater - skiplist (0 ms) [ok]: ZADD LT updates existing elements when new scores are lower - skiplist (0 ms) [ok]: ZADD GT XX updates existing elements when new scores are greater and skips new elements - skiplist (1 ms) [ok]: ZADD LT XX updates existing elements when new scores are lower and skips new elements - skiplist (0 ms) [ok]: ZADD XX and NX are not compatible - skiplist (0 ms) [ok]: ZADD NX with non existing key - skiplist (0 ms) [ok]: ZADD NX only add new elements without updating old ones - skiplist (0 ms) [ok]: ZADD GT and NX are not compatible - skiplist (0 ms) [ok]: ZADD LT and NX are not compatible - skiplist (0 ms) [ok]: ZADD LT and GT are not compatible - skiplist (0 ms) [ok]: ZADD INCR LT/GT replies with nill if score not updated - skiplist (1 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]: ZINCRBY against invalid incr value - skiplist (0 ms) [ok]: ZADD - Variadic version base case - skiplist (0 ms) [ok]: ZADD - Return value is the number of actually added items - skiplist (0 ms) [ok]: ZADD - Variadic version does not add nothing on single parsing err - skiplist (0 ms) [ok]: ZADD - Variadic version will raise error on missing arg - skiplist (1 ms) [ok]: ZINCRBY does not work variadic even if shares ZADD implementation - skiplist (0 ms) [ok]: ZCARD basics - skiplist (0 ms) [ok]: ZREM removes key after last element is removed - skiplist (0 ms) [ok]: ZREM variadic version - skiplist (1 ms) [ok]: ZREM variadic version -- remove elements after key deletion - skiplist (0 ms) [ok]: ZRANGE basics - skiplist (1 ms) [ok]: ZREVRANGE basics - skiplist (1 ms) [ok]: ZRANK/ZREVRANK basics - skiplist (1 ms) [ok]: ZRANK - after deletion - skiplist (0 ms) [ok]: ZINCRBY - can create a new sorted set - skiplist (0 ms) [ok]: ZINCRBY - increment and decrement - skiplist (1 ms) [ok]: ZINCRBY return value - skiplist (0 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - skiplist (2 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 (0 ms) [ok]: ZRANGEBYLEX/ZREVRANGEBYLEX/ZLEXCOUNT basics - skiplist (1 ms) [ok]: ZLEXCOUNT advanced - skiplist (1 ms) [ok]: ZRANGEBYLEX with LIMIT - skiplist (3 ms) [ok]: ZRANGEBYLEX with invalid lex range specifiers - skiplist (0 ms) [ok]: ZREMRANGEBYSCORE basics - skiplist (6 ms) [ok]: ZREMRANGEBYSCORE with non-value min or max - skiplist (0 ms) [ok]: ZREMRANGEBYRANK basics - skiplist (3 ms) [ok]: ZREMRANGEBYLEX basics - skiplist (7 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 (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with empty set - skiplist (0 ms) [ok]: ZUNIONSTORE basics - skiplist (1 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 (1 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 (0 ms) [ok]: ZINTERSTORE basics - skiplist (0 ms) [ok]: ZINTER basics - skiplist (0 ms) [ok]: ZINTERCARD with illegal arguments (0 ms) [ok]: ZINTERCARD basics - skiplist (1 ms) [ok]: ZINTER RESP3 - skiplist (0 ms) [ok]: ZINTERSTORE with weights - skiplist (0 ms) [ok]: ZINTER with weights - skiplist (0 ms) [ok]: ZINTERSTORE with a regular set and weights - skiplist (1 ms) [ok]: ZINTERSTORE with AGGREGATE MIN - skiplist (0 ms) [ok]: ZINTERSTORE with AGGREGATE MAX - skiplist (0 ms) [ok]: ZUNIONSTORE with +inf/-inf scores - skiplist (1 ms) [ok]: ZUNIONSTORE with NaN weights - skiplist (0 ms) [ok]: ZINTERSTORE with +inf/-inf scores - skiplist (1 ms) [ok]: ZINTERSTORE with NaN weights - skiplist (1 ms) [ok]: ZDIFFSTORE basics - skiplist (0 ms) [ok]: ZDIFF basics - skiplist (0 ms) [ok]: ZDIFFSTORE with a regular set - skiplist (0 ms) [ok]: ZDIFF subtracting set from itself - skiplist (0 ms) [ok]: ZDIFF algorithm 1 - skiplist (1 ms) [ok]: ZDIFF algorithm 2 - skiplist (0 ms) [ok]: BGREWRITEAOF is delayed if BGSAVE is in progress (217 ms) [ok]: BGREWRITEAOF is refused if already in progress (12 ms) [43/145 done]: unit/aofrw (31 seconds) Testing unit/cluster/failure-marking [ok]: MIGRATE timeout actually works (734 ms) [ok]: MIGRATE can migrate multiple keys at once (222 ms) [ok]: MIGRATE with multiple keys must have empty key arg (0 ms) [ok]: XREVRANGE returns the reverse of XRANGE (2150 ms) [ok]: XRANGE exclusive ranges (2 ms) [ok]: XREAD with non empty stream (0 ms) [ok]: Non blocking XREAD with empty streams (0 ms) [ok]: SETNX against expired volatile key (2859 ms) [ok]: GETEX EX option (1 ms) [ok]: GETEX PX option (1 ms) [ok]: GETEX EXAT option (1 ms) [ok]: GETEX PXAT option (1 ms) [ok]: GETEX PERSIST option (1 ms) [ok]: GETEX no option (1 ms) [ok]: GETEX syntax errors (0 ms) [ok]: GETEX and GET expired key or not exist (3 ms) [ok]: GETEX no arguments (1 ms) [ok]: GETDEL command (0 ms) [ok]: Connect a replica to the master instance (810 ms) [ok]: Redis.replicate_commands() can be issued anywhere now (1 ms) [ok]: Redis.set_repl() can be issued before replicate_commands() now (0 ms) [ok]: Redis.set_repl() don't accept invalid values (0 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]: GETDEL propagate as DEL command to replica (44 ms) [ok]: WAITAOF when replica switches between masters, fsync: everysec (3337 ms) [ok]: MIGRATE with multiple keys migrate just existing ones (230 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) (3 ms) [ok]: GETSET (replace old value) (0 ms) [ok]: MSET base case (1 ms) [ok]: MSET/MSETNX wrong number of args (0 ms) [ok]: MSET with already existing - same key twice (0 ms) [ok]: MSETNX with already existent key (1 ms) [ok]: MSETNX with not existing keys (0 ms) [ok]: MSETNX with not existing keys - same key twice (0 ms) [ok]: MSETNX with already existing keys - same key twice (0 ms) [ok]: STRLEN against non-existing key (0 ms) [ok]: STRLEN against integer-encoded value (1 ms) [ok]: STRLEN against plain string (0 ms) [ok]: SETBIT against non-existing key (0 ms) [ok]: SETBIT against string-encoded key (0 ms) [ok]: SETBIT against integer-encoded key (1 ms) [ok]: SETBIT against key with wrong type (0 ms) [ok]: SETBIT with out of range bit offset (0 ms) [ok]: SETBIT with non-bit argument (0 ms) [ok]: MIGRATE with multiple keys: stress command rewriting (220 ms) [ok]: SETBIT fuzzing (314 ms) [ok]: GETBIT against non-existing key (0 ms) [ok]: GETBIT against string-encoded key (0 ms) [ok]: GETBIT against integer-encoded key (1 ms) [ok]: SETRANGE against non-existing key (1 ms) [ok]: SETRANGE against string-encoded key (1 ms) [ok]: SETRANGE against integer-encoded key (1 ms) [ok]: SETRANGE against key with wrong type (0 ms) [ok]: SETRANGE with out of range offset (0 ms) [ok]: GETRANGE against non-existing key (0 ms) [ok]: GETRANGE against wrong key type (0 ms) [ok]: GETRANGE against string value (1 ms) [ok]: GETRANGE against integer-encoded value (0 ms) [ok]: MIGRATE with multiple keys: delete just ack keys (219 ms) [ok]: MIGRATE AUTH: correct and wrong password cases (219 ms) [44/145 done]: unit/dump (24 seconds) Testing unit/cluster/links [ok]: XREAD with non empty second stream (1081 ms) [ok]: Blocking XREAD waiting new data (1 ms) [ok]: Blocking XREAD waiting old data (1 ms) [ok]: Blocking XREAD will not reply with an empty array (65 ms) [ok]: Blocking XREAD for stream that ran dry (issue #5299) (101 ms) [ok]: XREAD last element from non-empty stream (1 ms) [ok]: XREAD last element from empty stream (0 ms) [ok]: XREAD last element blocking from empty stream (1 ms) [ok]: XREAD last element blocking from non-empty stream (1 ms) [ok]: XREAD last element from multiple streams (0 ms) [ok]: XREAD last element with count > 1 (1 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 (1 ms) [ok]: XREAD + multiple XADD inside transaction (1 ms) [ok]: XDEL basic test (1 ms) [ok]: XDEL multiply id test (1 ms) [ok]: GETRANGE fuzzing (720 ms) [ok]: Coverage: SUBSTR (0 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 (1 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 (0 ms) [ok]: SET with IFEQ conditional (1 ms) [ok]: SET with IFEQ conditional - non-string current value (0 ms) [ok]: SET with IFEQ conditional - with get (0 ms) [ok]: SET with IFEQ conditional - non string current value with get (1 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]: SET EXAT / PXAT Expiration time is expired (48 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 (1 ms) [ok]: LCS indexes (0 ms) [ok]: LCS indexes with match len (1 ms) [ok]: LCS indexes with match len and minimum match len (0 ms) [ok]: SETRANGE with huge offset (1 ms) [ok]: APPEND modifies the encoding from int to raw (0 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 (0 ms) [ok]: DELIFEQ propagate as DEL command to replica (94 ms) [ok]: Test scripting debug protocol parsing (0 ms) [ok]: Test scripting debug lua stack overflow (1 ms) [ok]: Test scripting debug lua server invocations (0 ms) [45/145 done]: unit/type/string (10 seconds) Testing unit/cluster/misc [ok]: Lua scripts eviction does not generate many scripts (61 ms) [ok]: ZDIFF fuzzing - skiplist (2588 ms) [ok]: ZPOPMIN with the count 0 returns an empty array (1 ms) [ok]: ZPOPMIN with negative count (0 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 (0 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - skiplist (0 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist (1 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 (0 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX - skiplist RESP3 (1 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 (0 ms) [ok]: Lua scripts eviction is plain LRU (34 ms) [ok]: ZMPOP with illegal argument (1 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-random) (4554 ms) [ok]: ZMPOP propagate as pop with count command to replica (18 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP3 (1 ms) [ok]: Lua scripts eviction does not affect script load (100 ms) [ok]: Lua scripts promoted from eval to script load (65 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP3 (196 ms) [ok]: ZMPOP readraw in RESP3 (1 ms) [ok]: test RESP2/2 big number protocol parsing (0 ms) [ok]: test RESP2/2 malformed big number protocol parsing (0 ms) [ok]: test RESP2/2 map protocol parsing (0 ms) [ok]: test RESP2/2 set protocol parsing (0 ms) [ok]: test RESP2/2 double protocol parsing (0 ms) [ok]: test RESP2/2 null protocol parsing (0 ms) [ok]: test RESP2/2 verbatim protocol parsing (1 ms) [ok]: test RESP2/2 true protocol parsing (0 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (1 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 (1 ms) [ok]: test RESP2/3 null protocol parsing (0 ms) [ok]: test RESP2/3 verbatim protocol parsing (0 ms) [ok]: test RESP2/3 true protocol parsing (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 (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 (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]: BZMPOP readraw in RESP3 (199 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP2 (0 ms) [ok]: Script block the time in some expiration related commands (81 ms) [ok]: RESTORE expired keys with expiration time (10 ms) [ok]: Hash with TTL fields migrates correctly between nodes (7 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP2 (201 ms) [ok]: ZMPOP readraw in RESP2 (1 ms) [ok]: WAITAOF when replica switches between masters, fsync: always (2330 ms) [ok]: Shebang support for lua engine (2 ms) [ok]: Unknown shebang option (0 ms) [ok]: Unknown shebang flag (0 ms) [ok]: allow-oom shebang flag (2 ms) [ok]: no-writes shebang flag (0 ms) [ok]: XDEL fuzz test (1332 ms) [ok]: BZMPOP readraw in RESP2 (199 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 (2 ms) [ok]: ZUNIONSTORE result is sorted (123 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 (19 ms) [ok]: ZSCORE after a DEBUG RELOAD - listpack (24 ms) [ok]: ZSET sorting stresser - listpack (28 ms) [ok]: TTL Persistence in AOF aof-use-rdb-preamble yes (542 ms) [ok]: no-writes shebang flag on replica (910 ms) [ok]: not enough good replicas (1 ms) [ok]: setup replication for following tests (805 ms) [ok]: TTL Persistence in AOF aof-use-rdb-preamble no (539 ms) [ok]: not enough good replicas state change during long script (517 ms) [ok]: allow-stale shebang flag (2 ms) [ok]: reject script do not cause a Lua stack leak (4 ms) [ok]: client evicted due to client tracking prefixes (23273 ms) [ok]: client evicted due to output buf (7 ms) [ok]: client no-evict on (62 ms) [ok]: client no-evict off (24 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 (1 ms) [ok]: LUA test pcall (0 ms) [ok]: LUA test pcall with error (0 ms) [ok]: LUA test pcall with non string/integer arg (0 ms) [ok]: LUA test trim string as expected (1 ms) [ok]: EVAL - Scripts support NULL byte (0 ms) [ok]: EVAL - explicit error() call handling (0 ms) [46/145 done]: unit/scripting (36 seconds) Testing unit/cluster/auto-failover-on-shutdown [ok]: avoid client eviction when client is freed by output buffer limit (73 ms) [ok]: GEOSEARCH fuzzy test - bybox (12803 ms) [ok]: GEOSEARCH box edges fuzzy test (26 ms) [47/145 done]: unit/geo (31 seconds) Testing unit/cluster/scripting [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 128 element sorted set - listpack (1812 ms) [ok]: WAIT and WAITAOF replica multiple clients unblock - reuse last result (979 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (153 ms) [48/145 done]: unit/wait (37 seconds) Testing unit/cluster/manual-failover [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (210 ms) [ok]: ZSETs skiplist implementation backlink consistency test - listpack (20 ms) [ok]: decrease maxmemory-clients causes client eviction (419 ms) [ok]: HGETEX EX active expiry with single field (1106 ms) [ok]: evict clients only until below limit (100 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - listpack (589 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]: evict clients in right order (large to small) (110 ms) [ok]: client total memory grows during client no-evict (126 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-ttl) (4362 ms) [ok]: client total memory grows during maxmemory-clients disabled (127 ms) [49/145 done]: unit/client-eviction (27 seconds) Testing unit/cluster/slave-selection [ok]: HGETEX EX active expiry with multiple fields (1109 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 (2 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZPOPMIN (2 ms) [ok]: BZPOPMIN with variadic ZADD (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 (0 ms) [ok]: Cross slot commands are also blocked if they disagree with pre-declared keys (0 ms) [ok]: Cross slot commands are allowed by default if they disagree with pre-declared keys (0 ms) [ok]: Function no-cluster flag (0 ms) [ok]: Script no-cluster flag (0 ms) [ok]: Calling cluster slots in scripts is OK (1 ms) [ok]: Calling cluster shards in scripts is OK (0 ms) [ok]: Stress tester for #3343-alike bugs comp: 1 (8464 ms) [50/145 done]: unit/cluster/scripting (2 seconds) Testing unit/cluster/cluster-reliable-meet [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 (120 ms) [ok]: HGETEX EX active expiry removes entire key when last field expires (1108 ms) [ok]: HGETEX EX and HPEXPIRE (1 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 (2 ms) [ok]: XRANGE fuzzing (5467 ms) [ok]: XREVRANGE regression test for issue #5006 (1 ms) [ok]: XREAD streamID edge (no-blocking) (0 ms) [ok]: XREAD streamID edge (blocking) (1 ms) [ok]: XADD streamID edge (0 ms) [ok]: XTRIM with MAXLEN option basic test (52 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]: Cluster is up (55 ms) [ok]: Migrate a slot, verify client receives sunsubscribe on primary serving the slot. (6 ms) [ok]: Client subscribes to multiple channels, migrate a slot, verify client receives sunsubscribe on primary serving the slot. (11 ms) [ok]: XADD with MINID > lastid can propagate correctly (7 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. (34 ms) [ok]: Delete a slot, verify sunsubscribe message (2 ms) [ok]: Reset cluster, verify sunsubscribe message (5 ms) [ok]: HGETEX PX active expiry with single field (1106 ms) [ok]: Cluster is up (96 ms) [ok]: BZMPOP_MIN with zero timeout should block indefinitely (1001 ms) [ok]: ZSCORE - skiplist (17 ms) [ok]: ZMSCORE - skiplist (17 ms) [ok]: Cluster is writable (73 ms) [ok]: Instance #5 is a slave (1 ms) [ok]: Instance #5 synced with the master (0 ms) [ok]: ZSCORE after a DEBUG RELOAD - skiplist (19 ms) [ok]: Killing one master node (9 ms) [ok]: XADD with ~ MAXLEN can propagate correctly (8 ms) [ok]: ZSET sorting stresser - skiplist (26 ms) [ok]: XADD with ~ MAXLEN and LIMIT can propagate correctly (8 ms) [ok]: XADD with ~ MINID can propagate correctly (8 ms) [ok]: Cluster should start ok (89 ms) [ok]: XADD with ~ MINID and LIMIT can propagate correctly (9 ms) [ok]: Cluster is writable (61 ms) [ok]: XTRIM with ~ MAXLEN can propagate correctly (8 ms) Waiting for process 52719 to exit... [ok]: HGETEX PX active expiry with multiple fields (1108 ms) [ok]: MEET is reliable when target drops the initial MEETs (2580 ms) [ok]: XADD can CREATE an empty stream (1 ms) [ok]: XSETID can set a specific ID (1 ms) [ok]: XSETID cannot SETID with smaller ID (0 ms) [ok]: XSETID cannot SETID on non-existent key (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]: ZRANGEBYSCORE fuzzy test, 100 ranges in 100 element sorted set - skiplist (1355 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (124 ms) [51/145 done]: unit/cluster/pubsubshard-slot-migration (13 seconds) Testing unit/cluster/failover2 [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (167 ms) [ok]: Empty stream can be rewrite into AOF correctly (104 ms) [ok]: ZSETs skiplist implementation backlink consistency test - skiplist (12 ms) [ok]: Stream can be rewrite into AOF correctly after XDEL lastid (104 ms) [ok]: XGROUP HELP should not have unexpected options (0 ms) [ok]: XINFO HELP should not have unexpected options (0 ms) [52/145 done]: unit/type/stream (15 seconds) Testing unit/cluster/transactions-on-replica [ok]: HGETEX PX active expiry removes entire key when last field expires (1106 ms) [ok]: HGETEX PX and HPEXPIRE (1 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - skiplist (478 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]: HGETEX EXAT active expiry with single field (104 ms) [ok]: Fuzzing dense/sparse encoding: Server should always detect errors (41171 ms) [ok]: PFADD, PFCOUNT, PFMERGE type checking works (1 ms) [ok]: PFMERGE results on the cardinality of union of sets (0 ms) [ok]: PFMERGE on missing source keys will create an empty destkey (1 ms) [ok]: PFMERGE with one empty input key, create an empty destkey (0 ms) [ok]: PFMERGE with one non-empty input key, dest key is actually one of the source keys (1 ms) [ok]: maxmemory - policy volatile-lru should only remove volatile keys. (5005 ms) [ok]: Broadcast message across a cluster shard while a cluster link is down (103 ms) [ok]: PFMERGE results with simd (736 ms) Time: 1002 [ok]: BZPOPMIN unblock but the key is expired and then block again - reprocessing command (1002 ms) [ok]: BZPOPMIN with same key multiple times should work (2 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZPOPMIN (1 ms) [ok]: BZPOPMIN with variadic ZADD (1 ms) [ok]: HGETEX EXAT active expiry with multiple fields (1004 ms) [ok]: Key lazy expires during key migration (17 ms) [ok]: Coverage: Basic cluster commands (3 ms) [ok]: Wait for failover (3432 ms) [ok]: Cluster should eventually be up again (143 ms) [ok]: Cluster is writable (57 ms) [ok]: Instance #5 is now a master (0 ms) [ok]: Killing the new master #5 (9 ms) [ok]: Slave expired keys is loaded when restarted: appendonly=no (3101 ms) [ok]: Verify that single primary marks replica as failed (3162 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 (0 ms) [ok]: HGETEX EXAT active expiry removes entire key when last field expires (1004 ms) [ok]: HGETEX EXAT and HPEXPIRE (1 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 (1 ms) [ok]: BZMPOP with multiple blocked clients (3 ms) [ok]: HGETEX PXAT active expiry with single field (1105 ms) [ok]: BZMPOP propagate as pop with count command to replica (190 ms) [ok]: BZMPOP should not blocks on non key arguments - #10762 (1 ms) [ok]: PFCOUNT multiple-keys merge returns cardinality of union #1 (2301 ms) [ok]: Each node has two links with each peer (4 ms) [ok]: Validate cluster links format (1 ms) [ok]: ZSET skiplist order consistency when elements are moved (509 ms) [ok]: ZRANGESTORE basic (0 ms) [ok]: ZRANGESTORE RESP3 (0 ms) [ok]: ZRANGESTORE range (0 ms) [ok]: ZRANGESTORE BYLEX (0 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 (0 ms) [ok]: ZRANGESTORE - src key wrong type (0 ms) [ok]: ZRANGESTORE - empty range (1 ms) [ok]: ZRANGESTORE BYLEX - empty range (0 ms) [ok]: ZRANGESTORE BYSCORE - empty range (0 ms) [ok]: ZRANGE BYLEX (0 ms) [ok]: ZRANGESTORE invalid syntax (0 ms) [ok]: ZRANGESTORE with zset-max-listpack-entries 0 #10767 case (1 ms) [ok]: ZRANGESTORE with zset-max-listpack-entries 1 dst key should use skiplist encoding (0 ms) [ok]: ZRANGE invalid syntax (1 ms) [ok]: ZRANDMEMBER - listpack (4 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 (1 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 (165 ms) [ok]: ZRANDMEMBER with - listpack (164 ms) [ok]: zset score double range (0 ms) [ok]: zunionInterDiffGenericCommand acts on SET and ZSET (9 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 (0 ms) [53/145 done]: unit/type/zset (19 seconds) Testing unit/cluster/cluster-multiple-meets [ok]: HGETEX PXAT active expiry with multiple fields (1106 ms) [ok]: Stress tester for #3343-alike bugs comp: 0 (8447 ms) [ok]: Cluster nodes are reachable (0 ms) [ok]: Before slots allocation, all nodes report cluster failure (19 ms) [ok]: Cluster nodes haven't met each other (0 ms) [ok]: Allocate slots (111 ms) [ok]: Cluster should be down now (3262 ms) [ok]: Restarting the old master node (0 ms) [ok]: PFCOUNT multiple-keys merge returns cardinality of union #2 (1492 ms) [ok]: Instance #0 gets converted into a slave (54 ms) [ok]: Restarting the new master node (1 ms) [ok]: Slave expired keys is loaded when restarted: appendonly=yes (3123 ms) [ok]: Cluster is up again (393 ms) [ok]: HGETEX PXAT active expiry removes entire key when last field expires (1105 ms) [ok]: HGETEX PXAT and HPEXPIRE (1 ms) [ok]: Cluster is up (90 ms) [ok]: Cluster is writable (53 ms) [ok]: Instance #5 is a slave (1 ms) [ok]: Instance #5 synced with the master (0 ms) W[ok]: Failover on shutdown hands over primaryship to a fully sync'd replica - shutdown - shutdown-timeout: 0 (927 ms) [ok]: Unable to find a replica to perform an auto failover - shutdown (16 ms) [ok]: HGETEX PERSIST removes expiry and prevents active expiry (201 ms) W[ok]: PFDEBUG GETREG returns the HyperLogLog raw registers (1002 ms) [ok]: PFADD / PFCOUNT cache invalidation works (1 ms) [ok]: HGETEX overwrite existing expiry with active expiry (202 ms) W[54/145 done]: unit/hyperloglog (48 seconds) Testing unit/cluster/human-announced-nodename W[55/145 done]: unit/cluster/update-msg (19 seconds) Testing unit/cluster/many-slot-migration W[56/145 done]: unit/cluster/consistency-check (19 seconds) Testing unit/cluster/manual-takeover WWWWW[ok]: HGETEX EX keyspace notifications for active expiry (1106 ms) [ok]: Send CLUSTER FAILOVER to #5, during load (1458 ms) [ok]: Wait for failover (16 ms) [ok]: Cluster should eventually be up again (91 ms) [ok]: Multiple MEETs from Node 1 to Node 0 should work (2594 ms) [ok]: Cluster is writable (47 ms) [ok]: Instance #5 is now a master (0 ms) [ok]: maxmemory - policy volatile-lfu should only remove volatile keys. (6913 ms) [57/145 done]: unit/cluster/cluster-multiple-meets (3 seconds) Testing unit/cluster/half-migrated-slot [ok]: Verify 50000 keys for consistency with logical content (730 ms) [ok]: Instance #0 gets converted into a slave (16 ms) [ok]: HGETEX PX keyspace notifications for active expiry (1106 ms) [ok]: Set cluster human announced nodename and let it propagate (105 ms) [ok]: Cluster is up (134 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 (0 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]: HGETEX EXAT keyspace notifications for active expiry (1105 ms) [ok]: Cluster is up (88 ms) [ok]: Cluster is up (18 ms) [ok]: Half init migration in 'migrating' is fixable (28 ms) [ok]: Half init migration in 'importing' is fixable (29 ms) [ok]: Init migration and move key (67 ms) [ok]: Move key again (6 ms) [ok]: Half-finish migration (56 ms) [ok]: Move key back (3 ms) [ok]: Half-finish importing (53 ms) [58/145 done]: unit/cluster/half-migrated-slot (3 seconds) Testing unit/cluster/base [ok]: Cluster should start ok (18 ms) [ok]: Can't read from replica without READONLY (1 ms) [ok]: Can't read from replica after READWRITE (1 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]: HGETEX PXAT keyspace notifications for active expiry (1107 ms) [ok]: Handshake eventually succeeds after node handshake timeout on both sides with inconsistent view of the cluster (9248 ms) [ok]: Cluster nodes are reachable (1 ms) [ok]: Cluster is up (64 ms) [ok]: Cluster is writable (46 ms) [ok]: Killing one primary node (10 ms) [ok]: HGETEX keyspace notification when key deleted with active expiry (1105 ms) [ok]: Human nodenames are visible in log messages (3528 ms) [ok]: Cluster Join and auto-discovery test (1465 ms) [ok]: Before slots allocation, all nodes report cluster failure (46 ms) [ok]: Different nodes have different IDs (1 ms) [ok]: write command is QUEUED, then EXEC should be MOVED after failover (2008 ms) [ok]: read-only blocking operations from replica (1 ms) [ok]: reply MOVED when eval from replica for update (1 ms) [ok]: Set many keys (2979 ms) [59/145 done]: unit/cluster/human-announced-nodename (7 seconds) Testing unit/cluster/pubsub [ok]: It is possible to perform slot allocation (241 ms) [ok]: After the join, every node gets a different config epoch (7 ms) [ok]: HSETEX EX single field expires leaving other fields intact (1105 ms) [ok]: Cross-slot transaction (1 ms) [ok]: Disconnect link when send buffer limit reached (8922 ms) [60/145 done]: unit/cluster/transactions-on-replica (14 seconds) Testing unit/cluster/cluster-slots [61/145 done]: unit/cluster/misc (23 seconds) Testing unit/cluster/noaddr [ok]: Link memory increases with publishes (767 ms) [ok]: HSETEX EX multiple fields expire leaving non-expired fields intact (1107 ms) [ok]: Link memory resets after publish messages flush (515 ms) [62/145 done]: unit/cluster/links (24 seconds) Testing unit/cluster/cluster-nodes-slots [ok]: ziplist implementation: value encoding and backlink (9913 ms) [ok]: HSETEX EX hash key deleted when all fields expire (1106 ms) [ok]: HSETEX EX after HSETEX EX (1 ms) [ok]: Keys are accessible (3063 ms) [ok]: maxmemory - policy volatile-random should only remove volatile keys. (8363 ms) [ok]: HSETEX PX single field expires leaving other fields intact (1107 ms) [ok]: HSETEX PX multiple fields expire leaving non-expired fields intact (1109 ms) [ok]: Nodes should report cluster_state is ok now (5000 ms) [ok]: Sanity for CLUSTER COUNTKEYSINSLOT (1 ms) [ok]: It is possible to write and read from the cluster (88 ms) [ok]: Init migration of many slots (2097 ms) [ok]: CLUSTER RESET SOFT test (6 ms) [ok]: Coverage: CLUSTER HELP (0 ms) [ok]: Coverage: ASKING (0 ms) [ok]: CLUSTER SLAVES and CLUSTER REPLICAS with zero replicas (0 ms) [ok]: Cluster is up (115 ms) [ok]: Cluster is writable (54 ms) [ok]: Killing majority of master nodes (33 ms) [ok]: Failover on shutdown hands over primaryship to a fully sync'd replica - sigterm - shutdown-timeout: 0 (979 ms) [63/145 done]: unit/cluster/base (7 seconds) Testing unit/cluster/cross-version-cluster [ignore]: Other server path not provided [ignore]: Other server path not provided [64/145 done]: unit/cluster/cross-version-cluster (0 seconds) Testing unit/cluster/no-failover-option [ok]: Unable to find a replica to perform an auto failover - sigterm (100 ms) [ok]: HSETEX PX hash key deleted when all fields expire (1108 ms) [ok]: HSETEX PX after HSETEX PX (1 ms) [ok]: HSETEX EXAT single field expires leaving other fields intact (104 ms) [ok]: Wait for failover (7023 ms) [ok]: Killing the new primary node (13 ms) [ok]: Cluster should eventually be up again (76 ms) [ok]: Write data while slave #10 is paused and can't receive it (10013 ms) [ok]: HSETEX EXAT multiple fields expire leaving non-expired fields intact (1007 ms) [ok]: Verify that multiple primaries mark replica as failed (6139 ms) [ok]: HSETEX EXAT hash key deleted when all fields expire (1010 ms) [ok]: HSETEX EXAT after HSETEX EXAT (1 ms) [ok]: Cluster is up (113 ms) [ok]: ziplist implementation: encoding stress testing (6093 ms) [ok]: Cluster is writable (58 ms) [ok]: Instance #5 is a slave (1 ms) [ok]: Instance #5 synced with the master (1 ms) [ok]: Make instance #0 unreachable without killing it (0 ms) [ok]: Send CLUSTER FAILOVER to instance #5 (0 ms) [65/145 done]: unit/type/list-3 (42 seconds) Testing unit/cluster/sharded-pubsub [ok]: Cluster should eventually be down (3189 ms) [ok]: Use takeover to bring slaves back (10 ms) [ok]: HSETEX PXAT single field expires leaving other fields intact (1107 ms) [ok]: Instance #5 is still a slave after some time (no failover) (1001 ms) [ok]: Handshake eventually succeeds after node handshake timeout on one side with inconsistent view of the cluster (8651 ms) [66/145 done]: unit/cluster/cluster-reliable-meet (26 seconds) Testing unit/cluster/pubsubshard Port 25630 was already busy, trying another port... [ok]: HSETEX PXAT multiple fields expire leaving non-expired fields intact (1105 ms) [ok]: Wait for instance #0 to return back alive (998 ms) [ok]: HSETEX PXAT hash key deleted when all fields expire (1106 ms) [ok]: HSETEX PXAT after HSETEX PXAT (0 ms) [ok]: Test publishing to master (5 ms) [ok]: Test publishing to slave (4 ms) [ok]: HPERSIST cancels HSETEX expiry preventing field deletion (201 ms) [ok]: HSETEX overwrites existing field expiry with new shorter expiry (202 ms) [ok]: Cluster should eventually be up again (3083 ms) [ok]: Cluster is writable (54 ms) [ok]: Instance #5, #6, #7 are now masters (1 ms) [ok]: Restarting the previously killed master nodes (1 ms) [ok]: Instance #0, #1, #2 gets converted into a slaves (16 ms) [ok]: NOADDR nodes will be marked as FAIL (458 ms) [ok]: Cluster should start ok (43 ms) [ok]: Continuous slots distribution (3 ms) [ok]: Discontinuous slots distribution (5 ms) [ok]: HSETEX EX - keyspace notifications fired on field expiry (1107 ms) [ok]: Wait for instance #5 (and not #10) to turn into a master (6431 ms) [ok]: Wait for the node #10 to return alive before ending the test (0 ms) [67/145 done]: unit/cluster/manual-takeover (19 seconds) Testing unit/cluster/cluster-migrateslots [ok]: Cluster should eventually be up again (163 ms) [ok]: Node #10 should eventually replicate node #5 (0 ms) [ok]: wait for new failover (6677 ms) [ok]: Restarting the previously killed primary nodes (1 ms) [ok]: Make sure there is no failover timeout (2 ms) [68/145 done]: unit/cluster/noaddr (12 seconds) Testing unit/cluster/slot-migration-response [ok]: maxmemory - policy volatile-ttl should only remove volatile keys. (9947 ms) [69/145 done]: unit/cluster/cluster-nodes-slots (11 seconds) Testing unit/cluster/multidb [ok]: HSETEX PX - keyspace notifications fired on field expiry (1107 ms) [ok]: Test cluster info stats for publish (1 ms) [70/145 done]: unit/cluster/pubsub (15 seconds) Testing unit/cluster/cluster-response-tls [71/145 done]: unit/cluster/cluster-response-tls (0 seconds) Testing unit/cluster/replica-migration [ok]: HSETEX EXAT - keyspace notifications fired on field expiry (1108 ms) [ok]: Cluster is up (24 ms) [ok]: HSETEX PXAT - keyspace notifications fired on field expiry (1107 ms) [ok]: Set many keys in the cluster (868 ms) [ok]: Test cluster responses during migration of slot x (3 ms) [72/145 done]: unit/cluster/slot-migration-response (3 seconds) Testing unit/cluster/slot-stats [ok]: HSETEX - keyspace notifications include del event when hash key removed (202 ms) [ok]: Active expiry deletes entire key when only field expires (203 ms) [ok]: Cluster is up (67 ms) [ok]: Instance #3 is a replica (2 ms) [ok]: Instance #3 synced with the master (0 ms) [ok]: The nofailover flag is propagated (52 ms) [ok]: Killing one master node (11 ms) [ok]: Active expiry removes only expired field while preserving others (203 ms) [ok]: Active expiry reclaims memory correctly with large hash containing many fields (1353 ms) [ok]: Sharded pubsub publish behavior within multi/exec (1 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 (0 ms) [ok]: Sharded pubsub publish behavior within multi/exec with write operation on primary (1 ms) [ok]: Sharded pubsub publish behavior within multi/exec with write operation on replica (0 ms) [ok]: SSUBSCRIBE client killed during transaction (1 ms) [ok]: Active expiry handles fields with different TTL values correctly (1106 ms) [ok]: Active expiry removes only specified fields leaving others intact (201 ms) [ok]: Field TTL is removed when field value is overwritten with HSET (1 ms) [73/145 done]: unit/cluster/sharded-pubsub (11 seconds) Testing unit/cluster/failover [ok]: Field TTL is cleared when field is deleted and recreated (201 ms) [ok]: Cluster should be still down after some time (3230 ms) [ok]: Instance #3 is still a replica (0 ms) [ok]: Restarting the previously killed master node (1 ms) [74/145 done]: unit/cluster/no-failover-option (15 seconds) Testing unit/cluster/replica-redirect [ok]: Pub/Sub shard basics (2 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 (7 ms) [ok]: PUBSUB channels/shardchannels (1 ms) [ok]: HEXPIRE active expiry on single field (1105 ms) [75/145 done]: unit/cluster/pubsubshard (12 seconds) Testing unit/cluster/slot-ownership [ok]: CLUSTER SLOT-STATS cpu-usec reset upon CONFIG RESETSTAT. (3171 ms) [ok]: HEXPIRE active expiry with multiple fields (1105 ms) [ok]: HEXPIRE active expiry removes entire key when last field expires (1106 ms) [ok]: Fix cluster (17861 ms) [ok]: Cluster is up (171 ms) [ok]: Cluster is writable (59 ms) [ok]: Instance #5 is a slave (0 ms) [ok]: Instance #5 synced with the master (1 ms) [ok]: Make instance #0 unreachable without killing it (0 ms) [ok]: Send CLUSTER FAILOVER to instance #5 (0 ms) [ok]: Instance #5 is a master after some time (52 ms) [ok]: General command interface (7 ms) [ok]: Cluster is up (23 ms) [ok]: Key-based commands can be used on multiple databases (1 ms) [ok]: CLUSTER MIGRATESLOTS already migrating (314 ms) [ok]: CLUSTER GETSLOTMIGRATIONS command config enforced (202 ms) [ok]: Key-based commands across multiple databases (436 ms) [ok]: HEXPIRE active expiry with non-existing fields (1502 ms) [ok]: Validate slot statistics using cluster countkeysinslot and cluster getkeysinslot (380 ms) [ok]: Wait for instance #0 to return back alive (1949 ms) [ok]: Replication: Write to multiple databases and verify replica (687 ms) [ok]: HEXPIRE active expiry with mixed existing and non-existing fields (1105 ms) [ok]: SWAPDB is not supported in cluster mode (502 ms) [ok]: Keys are accessible (3756 ms) [ok]: Cluster is up (190 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 (1 ms) [ok]: Instance #3, #6, #9, #12 and #15 synced with the master (2 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 (19 ms) [ok]: CLUSTER GETSLOTMIGRATIONS command reported fields (3268 ms) [ok]: CLUSTER GETSLOTMIGRATIONS command log removed over max len (105 ms) [ok]: HEXPIRE active expiry with already expired fields (2210 ms) [76/145 done]: unit/cluster/many-slot-migration (34 seconds) Testing unit/cluster/shardid-propagation [ok]: Manual and atomic slot migration are mutually exclusive (110 ms) [ok]: Cross-DB Expiry Handling (2003 ms) [ok]: CLUSTER SLOT-STATS cpu-usec reset upon slot migration. (6502 ms) [ok]: Cluster nodes are reachable (0 ms) [ok]: Before slots allocation, all nodes report cluster failure (20 ms) [ok]: Cluster nodes haven't met each other (1 ms) [ok]: Allocate slots (28 ms) [ok]: Test CLUSTER CANCELSLOTMIGRATIONS (332 ms) [ok]: Restart of node in cluster mode doesn't cause nodes.conf corruption due to shard id mismatch (257 ms) [ok]: Only primary with slots has the right to mark a node as failed (19612 ms) [ok]: Slot migration won't migrate the functions (444 ms) [ok]: HPEXPIRE active expiry on single field (1106 ms) [ok]: Single source import - one shot (283 ms) [ok]: Slot migration DBSIZE after migration (802 ms) [ok]: HPEXPIRE active expiry with multiple fields (1108 ms) [ok]: Single source import - two phase (386 ms) [ok]: Slot migration seen in client flags (342 ms) [ok]: Persistence across restart with multiple databases (2872 ms) [ok]: Copy key to other database (0 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 (2 ms) [ok]: Cluster is up (102 ms) [ok]: Cluster is up (21 ms) [ok]: Cluster is writable (49 ms) [ok]: Instance #5 is a slave (0 ms) [ok]: Instance #5 synced with the master (0 ms) [ok]: Killing one master node (10 ms) [ok]: blocked clients behavior during failover (60 ms) [ok]: HPEXPIRE active expiry removes entire key when last field expires (1105 ms) [77/145 done]: unit/cluster/replica-redirect (11 seconds) Testing unit/cluster/cli [ok]: CLUSTER SLOT-STATS cpu-usec for non-slot specific commands. (3197 ms) [ok]: Import with hz set to 1 (1180 ms) [78/145 done]: unit/cluster/multidb (18 seconds) Testing unit/cluster/faildet [ok]: Verify that slot ownership transfer through gossip propagates deletes to replicas (114 ms) [ok]: Primaries will not time out then they are elected in the same epoch (7207 ms) [ok]: HPEXPIRE active expiry with non-existing fields (1502 ms) [ok]: Single source import - Incremental Command Coverage (1202 ms) [ok]: Importing key containment (slot 0 from node 0 to 2) - start migration (160 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 (1 ms) [ok]: Replica importing key containment (slot 0 from node 0 to 2) - SCAN command excludes importing keys (0 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 (133 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - allkeys-lru eviction excludes importing keys (127 ms) [ok]: Create 1 node cluster (1918 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - allkeys-lfu eviction excludes importing keys (206 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - volatile-random eviction excludes importing keys (208 ms) [ok]: HPEXPIRE active expiry with mixed existing and non-existing fields (1105 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - volatile-lru eviction excludes importing keys (290 ms) [ok]: Wait for failover (3327 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - volatile-lfu eviction excludes importing keys (331 ms) [ok]: Cluster should eventually be up again (107 ms) [ok]: Create 2 node cluster (1013 ms) [ok]: Cluster is writable (63 ms) [ok]: Instance #5 is now a master (0 ms) [ok]: Restarting the previously killed master node (1 ms) [ok]: Instance #0 gets converted into a slave (21 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for slot specific commands. (3274 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - volatile-ttl eviction excludes importing keys (329 ms) [ok]: Primary importing key containment (slot 0 from node 0 to 2) - active expiration excludes importing keys (932 ms) [ok]: Importing key containment (slot 16383 from node 2 to 0) - start migration (159 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - DBSIZE command excludes importing keys (0 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 (1 ms) [ok]: Replica importing key containment (slot 16383 from node 2 to 0) - SCAN command excludes importing keys (0 ms) [ok]: Replica importing key containment (slot 16383 from node 2 to 0) - RANDOMKEY command excludes importing keys (2 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - allkeys-random eviction excludes importing keys (125 ms) [ok]: HPEXPIRE active expiry with already expired fields (2210 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - allkeys-lru eviction excludes importing keys (122 ms) [ok]: HEXPIREAT active expiry on single field (103 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - allkeys-lfu eviction excludes importing keys (205 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - volatile-random eviction excludes importing keys (207 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - volatile-lru eviction excludes importing keys (287 ms) [ok]: Create 3 node cluster (1922 ms) [ok]: Run blocking command on cluster node3 (0 ms) [ok]: Perform a Resharding (10 ms) [ok]: Verify command got unblocked after resharding (40 ms) [ok]: Wait for cluster to be stable (10 ms) [ok]: HEXPIREAT active expiry with multiple fields (1005 ms) [ok]: use previous hostip in "cluster-preferred-endpoint-type unknown-endpoint" mode (4 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - volatile-lfu eviction excludes importing keys (333 ms) [ok]: Sanity test push cmd after resharding (1 ms) [ok]: Run blocking command again on cluster node1 (0 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - volatile-ttl eviction excludes importing keys (328 ms) [ok]: HEXPIREAT active expiry removes entire key when last field expires (1008 ms) [ok]: Primary importing key containment (slot 16383 from node 2 to 0) - active expiration excludes importing keys (933 ms) [ok]: Kill a cluster node and wait for fail state (1370 ms) [ok]: Verify command got unblocked after cluster failure (55 ms) [ok]: Simultaneous imports (639 ms) [ok]: The replica will have a new shard_id after cluster reset soft (105 ms) [ok]: Simultaneous exports (509 ms) [79/146 done]: unit/cluster/shardid-propagation (12 seconds) Testing unit/cluster/diskless-load-swapdb [ok]: HEXPIREAT active expiry with non-existing fields (1502 ms) [ok]: Multiple slot ranges from same source (414 ms) [ok]: HEXPIREAT active expiry with mixed existing and non-existing fields (504 ms) [ok]: Import slot range with multiple slots (279 ms) [ok]: Import multiple slot ranges with multiple slots (279 ms) [ok]: Export all slots from node (172 ms) [ok]: Import slots to node with no slots (174 ms) [ok]: Partial data removed on cancel (193 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for blocking commands, unblocked on keyspace update. (6592 ms) [ok]: slave buffer are counted correctly (27376 ms) [ok]: OOM on target aborts migration (211 ms) [ok]: Partial data in replica removed on failover (319 ms) [ok]: Slot export failed on failover (297 ms) [ok]: HEXPIREAT active expiry with already expired fields (2011 ms) [ok]: Slots split across shards during import (410 ms) [ok]: Functions are added to new node on valkey-cli cluster add-node (2999 ms) [ok]: Manual failover vote is not limited by two times the node timeout - drop the auth ack (5184 ms) Port 25164 was already busy, trying another port... [ok]: HPEXPIREAT active expiry on single field (1105 ms) [ok]: Cluster should start ok (100 ms) [ok]: Killing two slave nodes (21 ms) Port 25166 was already busy, trying another port... [ok]: Cluster should be still up (104 ms) [ok]: Killing one master node (11 ms) [ok]: Cluster should be down now (102 ms) Port 25168 was already busy, trying another port... [ok]: Restarting master node (11 ms) [ok]: Cluster should be up again (101 ms) [ok]: Migrated replica reports zero repl offset and rank, and fails to win election - shutdown (18092 ms) [ok]: HPEXPIREAT active expiry with multiple fields (1105 ms) [ok]: Export unpauses itself even if slot failover doesn't occur (2191 ms) [ok]: Export unpauses when cancelled (164 ms) Waiting for process 65042 to exit... [ok]: CLUSTER SLOT-STATS cpu-usec for blocking commands, unblocked on timeout. (3738 ms) [ok]: Blocked clients are sent MOVED after export completion (403 ms) [ok]: CLUSTER SYNCSLOTS invalid state machine traversal (8 ms) [ok]: CLUSTER SYNCSLOTS ESTABLISH command interface (157 ms) [ok]: HPEXPIREAT active expiry removes entire key when last field expires (1105 ms) [ok]: New Master down consecutively (18077 ms) [ok]: Primaries do not add failure-report after replica is already marked FAIL (6247 ms) [ok]: FLUSH on target during import (656 ms) Waiting for process 65042 to exit... [80/146 done]: unit/cluster/failure-marking (70 seconds) Testing unit/cluster/cluster-flush-slot [ok]: FLUSH on source during export (786 ms) Waiting for process 65042 to exit... [ok]: HPEXPIREAT active expiry with non-existing fields (1501 ms) [81/146 done]: unit/cluster/slave-selection (63 seconds) Testing unit/cluster/divergent-cluster-shardid-conf [ok]: Cluster is up (80 ms) [ok]: Cluster is writable (46 ms) [ok]: Killing the first primary node (10 ms) [ok]: replica buffer don't induce eviction (5662 ms) Port 28160 was already busy, trying another port... [ok]: Primary lost a slot during the shutdown waiting (4092 ms) [ok]: Don't rehash if used memory exceeds maxmemory after rehash (136 ms) Waiting for process 65042 to exit... [ok]: divergent cluster shardid conflict (1010 ms) [82/146 done]: unit/cluster/divergent-cluster-shardid-conf (1 seconds) Testing unit/cluster/multi-slot-operations [ok]: HPEXPIREAT active expiry with mixed existing and non-existing fields (1107 ms) Waiting for process 65042 to exit... [ok]: client tracking don't cause eviction feedback loop (1277 ms) [ok]: Import cancelled when source hangs (2560 ms) [ok]: Failover on shutdown hands over primaryship to a fully sync'd replica - sigterm - shutdown-timeout: 10 (10157 ms) [ok]: propagation with eviction (96 ms) [ok]: Unable to find a replica to perform an auto failover - sigterm (55 ms) [ok]: propagation with eviction in MULTI (96 ms) [ok]: Cluster should start ok (17 ms) [ok]: Cluster is writable (49 ms) [ok]: lru/lfu value of the key just added (1 ms) [83/146 done]: unit/cluster/auto-failover-on-shutdown (68 seconds) Testing unit/cluster/hostnames Waiting for process 65042 to exit... [ok]: Import mode should forbid eviction (1 ms) [84/146 done]: unit/maxmemory (100 seconds) Testing unit/cluster/replica-detach [ok]: HPEXPIREAT active expiry with already expired fields (2211 ms) [ok]: Wait for failover (3421 ms) [ok]: Continuous slots distribution (8 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) [ok]: Cluster should eventually be up again (82 ms) [ok]: Restarting the previously killed primary node (1 ms) [ok]: Instance #0 gets converted into a replica (65 ms) [ok]: Make sure the replicas always get the different ranks (1 ms) [85/146 done]: unit/cluster/multi-slot-operations (4 seconds) Testing unit/cluster/announced-endpoints Waiting for process 65042 to exit... [ok]: CLUSTER SLOT-STATS cpu-usec for transactions. (6571 ms) [ok]: CLIENT PAUSE WRITE blocks hash field active expiry until pause ends (1243 ms) [86/146 done]: unit/cluster/failover (32 seconds) Testing unit/cluster/info Waiting for process 65042 to exit... [ok]: Export cancelled when target hangs (3036 ms) [ok]: Import with AUTH on (285 ms) [ok]: Import AUTH with WRONGPASS (39 ms) [ok]: Connection drop during import causes failure (200 ms) Waiting for process 65042 to exit... [ok]: Export client buffer enforcement (855 ms) [ok]: HEXPIRE active expiry works correctly after RENAME operation (2211 ms) [ok]: Cluster should start ok (18 ms) [ok]: errorstats: rejected call due to MOVED Redirection (1 ms) [ok]: Migrate the last slot away from a node using valkey-cli (11171 ms) [ok]: Slot importing with some non-importing data (622 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for lua-scripts, without cross-slot keys. (3156 ms) Waiting for process 64981 to exit... [ok]: Export client buffer excluded from maxmemory (710 ms) [ok]: Migration not cancelled when snapshot takes more time than repl-timeout (252 ms) [ok]: HEXPIRE active expiry works correctly after COPY operation (2211 ms) Waiting for process 64981 to exit... [ok]: valkey-cli -4 --cluster create using 127.0.0.1 with cluster-port (1922 ms) Waiting for process 64981 to exit... [ok]: SYNC Flush slot command (58 ms) [ok]: ASYNC Flush slot command (58 ms) [ok]: valkey-cli -4 --cluster add-node using 127.0.0.1 with cluster-port (1124 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for lua-scripts, with cross-slot keys. (3063 ms) Waiting for process 64981 to exit... [ok]: HEXPIRE active expiry works correctly after RESTORE operation (2213 ms) [ok]: Primary lost a slot during the manual failover pausing (88 ms) [ok]: Manual failover vote is not limited by two times the node timeout - mixed failover (4373 ms) Waiting for process 64981 to exit... [ok]: Restart target primary during migration (without save) causes failure (4357 ms) [ok]: Replica can update the config epoch when trigger the failover - automatic (15774 ms) [ok]: fail reason changed (3477 ms) [ok]: CONFIG RESETSTAT resets cluster related stats (76 ms) Waiting for process 64981 to exit... [ok]: HEXPIRE active expiry works correctly after MOVE operation (2212 ms) [ok]: valkey-cli -4 --cluster create using localhost with cluster-port (1922 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for functions, without cross-slot keys. (3141 ms) [ok]: Cluster should start ok (51 ms) [ok]: Set cluster hostnames and verify they are propagated (218 ms) [ok]: Update hostnames and make sure they are all eventually propagated (115 ms) Waiting for process 64981 to exit... [ok]: Remove hostnames and make sure they are all eventually propagated (215 ms) [ok]: CLUSTER REPLICATE NO ONE should turn node into empty primary (409 ms) [ok]: valkey-cli -4 --cluster add-node using localhost with cluster-port (1122 ms) [ok]: Verify cluster-preferred-endpoint-type behavior for redirects and info (176 ms) [ok]: Test change cluster-announce-port and cluster-announce-tls-port at runtime (105 ms) [ok]: Test change cluster-announce-bus-port at runtime (203 ms) [87/146 done]: unit/cluster/replica-detach (12 seconds) Testing unit/cluster/cluster-shards [ok]: Test change port and tls-port on runtime (205 ms) Waiting for process 64981 to exit... [ok]: Verify the nodes configured with prefer hostname only show hostname for new nodes (923 ms) [88/146 done]: unit/cluster/announced-endpoints (11 seconds) Testing unit/cluster/shutdown [ok]: HPEXPIRE active expiry works correctly after RENAME operation (2211 ms) [ok]: Test restart will keep hostname information (226 ms) [ok]: Test hostname validation (1 ms) Port 28176 was already busy, trying another port... [ok]: Restart target primary during migration (with save) causes failure (3434 ms) [89/146 done]: unit/cluster/hostnames (14 seconds) Testing unit/cluster/announce-client-ports Waiting for process 64981 to exit... [ok]: count - node partial failure (1017 ms) [ok]: Migrated replica reports zero repl offset and rank, and fails to win election - sigstop (7613 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for functions, with cross-slot keys. (3100 ms) [ok]: Create 3 node cluster (1921 ms) [ok]: Multi-database fill slot 0 (20 ms) [ok]: Perform a Multi-database Resharding (34 ms) [ok]: Verify multi-database slot migrate (19 ms) [90/146 done]: unit/cluster/cli (33 seconds) Testing unit/cluster/replica-in-sync [ok]: count - node complete failure (1005 ms) [91/146 done]: unit/cluster/faildet (33 seconds) Testing unit/cluster/slave-stop-cond [92/146 done]: unit/cluster/info (13 seconds) Testing unit/cluster/announce-client-ip [ok]: HPEXPIRE active expiry works correctly after COPY operation (2212 ms) [ok]: HPEXPIRE active expiry works correctly after RESTORE operation (2211 ms) [ok]: Restart source primary during migration (without save) causes failure (4455 ms) [ok]: Test shutdown safe is working (3373 ms) [93/146 done]: unit/cluster/shutdown (6 seconds) Testing unit/cluster/slot-migration [ok]: Flush slot command propagated to replica (160 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, multi bulk buffer processing. (3105 ms) [ok]: HPEXPIRE active expiry works correctly after MOVE operation (2212 ms) [94/146 done]: unit/cluster/cluster-flush-slot (23 seconds) Testing integration/rdb [ok]: test old version rdb file (0 ms) [ok]: RDB encoding loading test (5 ms) [ok]: Primary lost a slot during the client pause command (46 ms) [ok]: RDB future version loading, strict version check (1 ms) [ok]: RDB future version loading, relaxed version check (4 ms) [ok]: RDB future version loading with unknown types, relaxed version check (1 ms) [ok]: RDB foreign version loading, relaxed version check (0 ms) [95/146 done]: unit/cluster/slot-ownership (49 seconds) Testing integration/valkey-benchmark [ok]: RDB foreign version loading with unknown types, relaxed version check (0 ms) [ok]: benchmark: set,get (4 ms) [ok]: benchmark: connecting using URI set,get (4 ms) [ok]: benchmark: connecting using URI with authentication set,get (4 ms) [ok]: Restart source primary during migration (with save) causes failure (3319 ms) [ok]: benchmark: full test suite (69 ms) [ok]: Server started empty with non-existing RDB file (0 ms) [ok]: Server started empty with empty RDB file (0 ms) [ok]: HEXPIREAT active expiry works correctly after RENAME operation (1910 ms) [ok]: benchmark: multi-thread set,get (508 ms) [ok]: Test RDB stream encoding (61 ms) [ok]: Test RDB stream encoding - sanitize dump (5 ms) [ok]: benchmark: pipelined full set,get (78 ms) [ok]: benchmark: arbitrary command (6 ms) [ok]: benchmark: arbitrary command sequence (5 ms) value:VXKeHogKgJ=[5V9_X^b?48OKF2jGA