>>> valkey: Building main/valkey 8.1.1-r0 (using abuild 3.15.0_rc3-r3) started Tue, 13 May 2025 23:30:02 +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/8) Installing linux-headers (6.14.2-r0) (2/8) Installing openssl-dev (3.5.0-r0) (3/8) Installing tzdata (2025b-r0) (4/8) Installing tcl (8.6.16-r0) (5/8) Installing libintl (0.24.1-r0) (6/8) Installing libproc2 (4.0.4-r2) (7/8) Installing procps-ng (4.0.4-r2) (8/8) Installing .makedepends-valkey (20250513.233002) Executing busybox-1.37.0-r17.trigger OK: 413 MiB in 112 packages >>> valkey: Cleaning up srcdir >>> valkey: Cleaning up pkgdir >>> valkey: Cleaning up tmpdir >>> valkey: Fetching https://distfiles.alpinelinux.org/distfiles/v3.22/valkey-8.1.1.tar.gz Connecting to distfiles.alpinelinux.org (172.105.82.32:443) wget: server returned error: HTTP/1.1 404 Not Found >>> valkey: Fetching https://github.com/valkey-io/valkey/archive/8.1.1/valkey-8.1.1.tar.gz Connecting to github.com (140.82.121.4:443) Connecting to codeload.github.com (140.82.121.9:443) saving to '/var/cache/distfiles/v3.22/valkey-8.1.1.tar.gz.part' valkey-8.1.1.tar.gz. 100% |********************************| 3717k 0:00:00 ETA '/var/cache/distfiles/v3.22/valkey-8.1.1.tar.gz.part' saved >>> valkey: Fetching https://distfiles.alpinelinux.org/distfiles/v3.22/valkey-8.1.1.tar.gz >>> valkey: Checking sha512sums... valkey-8.1.1.tar.gz: OK valkey.conf.patch: OK sentinel.conf.patch: OK valkey.initd: OK valkey.confd: OK valkey-sentinel.initd: OK valkey-sentinel.confd: OK >>> valkey: Unpacking /var/cache/distfiles/v3.22/valkey-8.1.1.tar.gz... >>> valkey: valkey.conf.patch patching file valkey.conf >>> valkey: sentinel.conf.patch patching file sentinel.conf cd src && make all make[1]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/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 *.o *.gcda *.gcno *.gcov valkey.info lcov-html Makefile.dep *.so rm -f threads_mngr.d adlist.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 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 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 lua/script_lua.d lua/function_lua.d lua/engine_lua.d lua/debug_lua.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 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 (cd ../deps && make distclean) make[2]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps' (cd hiredis && make clean) > /dev/null || true (cd linenoise && make clean) > /dev/null || true (cd lua && make clean) > /dev/null || true (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true (cd hdr_histogram && make clean) > /dev/null || true (cd fpconv && make clean) > /dev/null || true (cd fast_float_c_interface && make clean) > /dev/null || true (rm -f .make-*) make[2]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps' (cd modules && make clean) make[2]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/src/modules' rm -rf *.xo *.so make[2]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/src/modules' (cd ../tests/modules && make clean) make[2]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/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 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 make[2]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/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 >> .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 >> .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 -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 -I../deps/hiredis -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 hiredis linenoise lua hdr_histogram fpconv) make[2]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps' (cd hiredis && make clean) > /dev/null || true (cd linenoise && make clean) > /dev/null || true (cd lua && make clean) > /dev/null || true (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true (cd hdr_histogram && make clean) > /dev/null || true (cd fpconv && make clean) > /dev/null || true (cd fast_float_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" > .make-cflags) (echo "-Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs" > .make-ldflags) MAKE hiredis cd hiredis && make static USE_SSL=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 -O2 " MYLDFLAGS="-Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs" AR="ar rc" make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps/hiredis' MAKE hdr_histogram cd hdr_histogram && make MAKE fpconv cd fpconv && make make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps/linenoise' cc -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -c linenoise.c make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps/hdr_histogram' cc -std=c99 -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHDR_MALLOC_INCLUDE=\"hdr_redis_malloc.h\" -c hdr_histogram.c make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps/fpconv' cc -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -c fpconv_dtoa.c make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/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 -O2 -c -o lapi.o lapi.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lcode.o lcode.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o ldebug.o ldebug.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -g -ggdb -pedantic alloc.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o ldo.o ldo.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -g -ggdb -pedantic net.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o ldump.o ldump.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -g -ggdb -pedantic hiredis.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 -O2 -c -o lfunc.o lfunc.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -g -ggdb -pedantic sds.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 -O2 -c -o lgc.o lgc.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -g -ggdb -pedantic async.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o llex.o llex.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -g -ggdb -pedantic read.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -g -ggdb -pedantic sockcompat.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -O2 -c -o lmem.o lmem.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -g -ggdb -pedantic ssl.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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -O2 -c -o print.o print.c ar rcs libfpconv.a fpconv_dtoa.o make[3]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps/fpconv' ar rcs libhdrhistogram.a hdr_histogram.o make[3]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps/hdr_histogram' make[3]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/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 ar rcs libhiredis.a alloc.o net.o hiredis.o sds.o async.o read.o sockcompat.o 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 libhiredis_ssl.a ssl.o make[3]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps/hiredis' make[3]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps/lua/src' make[2]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps' CC threads_mngr.o CC adlist.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 endianconv.o CC commandlog.o CC eval.o CC bio.o CC rio.o In file included from io_threads.h:4, from io_threads.c:7: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from networking.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from object.c:31: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from t_list.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from memory_prefetch.c:12: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC rand.o In file included from rdb.c:35: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from threads_mngr.c:35: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from sort.c:32: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from t_zset.c:63: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from syncio.c:31: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from replication.c:36: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from config.c:31: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from debug.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from t_set.c:35: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from t_string.c:35: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from cluster_slot_stats.h:1, from cluster_slot_stats.c:6: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from multi.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from cluster.c:40: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from t_hash.c:35: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC memtest.o In file included from crc16.c:1: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from aof.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from cluster_legacy.c:39: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from pubsub.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from db.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from bio.c:63: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from eval.c:45: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from server.c:34: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from commandlog.h:33, from commandlog.c:25: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC syscheck.o In file included from rio.c:57: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC crcspeed.o CC crccombine.o CC crc64.o CC bitops.o CC sentinel.o CC notify.o CC setproctitle.o In file included from sentinel.c:31: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from notify.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC blocked.o In file included from bitops.c:31: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC hyperloglog.o CC latency.o CC sparkline.o CC valkey-check-rdb.o CC valkey-check-aof.o In file included from hyperloglog.c:37: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from blocked.c:67: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from latency.c:36: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from sparkline.c:33: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC geo.o CC lazyfree.o In file included from valkey-check-rdb.c:31: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC module.o CC evict.o In file included from valkey-check-aof.c:31: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC expire.o valkey-check-aof.c: In function 'processAnnotations': valkey-check-aof.c:196:59: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 196 | printf("AOF %s has nothing before timestamp %ld, " | ~~^ | | | long int | %lld 197 | "aborting...\n", 198 | filename, to_timestamp); | ~~~~~~~~~~~~ | | | time_t {aka long long int} valkey-check-aof.c:202:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 202 | printf("Failed to truncate AOF %s to timestamp %ld to offset %ld because it is not the last file.\n", | ~~^ | | | long int | %lld 203 | filename, to_timestamp, (long int)epos); | ~~~~~~~~~~~~ | | | time_t {aka long long int} valkey-check-aof.c:211:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 211 | printf("Failed to truncate AOF %s to timestamp %ld\n", filename, to_timestamp); | ~~^ ~~~~~~~~~~~~ | | | | long int time_t {aka long long int} | %lld CC geohash.o valkey-check-aof.c: In function 'checkSingleAof': valkey-check-aof.c:299:59: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 299 | printf("Truncate nothing in AOF %s to timestamp %ld\n", aof_filename, to_timestamp); | ~~^ ~~~~~~~~~~~~ | | | | long int time_t {aka long long int} | %lld valkey-check-aof.c: In function 'printAofStyle': valkey-check-aof.c:449:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 449 | printf("Successfully truncated AOF %s to timestamp %ld\n", aofFileName, to_timestamp); | ~~^ ~~~~~~~~~~~~ | | | | long int time_t {aka long long int} | %lld CC geohash_helper.o In file included from geo.h:4, from geo.c:31: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC childinfo.o CC allocator_defrag.o In file included from lazyfree.c:1: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from module.c:59: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC defrag.o In file included from evict.c:33: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from expire.c:38: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC siphash.o In file included from defrag.c:41: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC rax.o CC t_stream.o In file included from childinfo.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from allocator_defrag.c:46: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC listpack.o CC localtime.o CC lolwut.o CC lolwut5.o CC lolwut6.o CC acl.o In file included from t_stream.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC tracking.o In file included from lolwut.c:36: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC socket.o In file included from lolwut6.c:42: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from lolwut5.c:36: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC tls.o CC sha256.o CC timeout.o CC setcpuaffinity.o In file included from acl.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC monotonic.o In file included from socket.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from timeout.c:29: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC mt19937-64.o CC resp_parser.o In file included from tls.c:32: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from tracking.c:31: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC call_reply.o CC script.o CC functions.o CC commands.o CC strl.o In file included from resp_parser.c:59: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from call_reply.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC connection.o CC unix.o In file included from script.c:30: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC logreqres.o CC rdma.o CC scripting_engine.o In file included from functions.h:51, from functions.c:35: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from commands.c:2: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC lua/script_lua.o CC lua/function_lua.o In file included from connection.c:27: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from unix.c:27: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC lua/engine_lua.o CC lua/debug_lua.o In file included from scripting_engine.h:4, from scripting_engine.c:7: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from logreqres.c:70: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from lua/script_lua.h:51, from lua/script_lua.c:30: lua/../server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC valkey-cli.o CC serverassert.o CC cli_common.o CC cli_commands.o In file included from lua/../scripting_engine.h:4, from lua/engine_lua.h:4, from lua/function_lua.h:4, from lua/function_lua.c:42: lua/../server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from rdma.c:17: server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ CC valkey-benchmark.o In file included from lua/../scripting_engine.h:4, from lua/engine_lua.h:4, from lua/engine_lua.c:6: lua/../server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ In file included from lua/script_lua.h:51, from lua/debug_lua.c:8: lua/../server.h:2157:1: note: the alignment of '_Atomic long long unsigned int' fields changed in GCC 11.1 2157 | }; | ^ 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-8.1.1/src' cd src && make test make[1]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/src' CC Makefile.dep CC release.o LINK valkey-server LINK valkey-cli LINK valkey-benchmark INSTALL valkey-check-aof Cleanup: may take some time... OK Starting test server at port 21079 [ready]: 35655 Testing unit/acl-v2 [ready]: 35656 Testing unit/dump [ready]: 35661 Testing unit/limits [ready]: 35659 Testing unit/replybufsize [ready]: 35663 Testing unit/keyspace [ready]: 35665 Testing unit/acl [ready]: 35662 Testing unit/networking [ready]: 35657 Testing unit/lazyfree [ready]: 35660 Testing unit/pause [ready]: 35666 Testing unit/introspection-2 [ready]: 35668 Testing unit/protocol [ready]: 35664 Testing unit/oom-score-adj [ready]: 35667 Testing unit/shutdown [ready]: 35670 Testing unit/other [ready]: 35669 Testing unit/pubsub [ready]: 35658 Testing unit/introspection [ok]: DUMP / RESTORE are able to serialize / unserialize a simple key (1 ms) [ok]: The microsecond part of the TIME command will not overflow (1 ms) [ok]: DEL against a single item (1 ms) [ok]: Test basic multiple selectors (1 ms) [ok]: RESTORE can set an arbitrary expire to the materialized key (1 ms) [ok]: Connections start with the default user (1 ms) [ok]: Vararg DEL (1 ms) [ok]: It is possible to create new users (0 ms) [ok]: RESTORE can set an expire that overflows a 32 bit integer (0 ms) [ok]: Untagged multi-key commands (0 ms) [ok]: Test ACL selectors by default have no permissions (0 ms) [ok]: Coverage: ACL USERS (0 ms) [ok]: Usernames can not contain spaces or null characters (1 ms) [ok]: RESTORE can set an absolute expire (1 ms) [ok]: New users start disabled (0 ms) [ok]: KEYS with pattern (1 ms) [ok]: Test deleting selectors (2 ms) [ok]: KEYS to get all keys (0 ms) [ok]: RESTORE with ABSTTL in the past (1 ms) [ok]: Enabling the user allows the login (1 ms) [ok]: DBSIZE (0 ms) [ok]: Pub/Sub PING on RESP2 (1 ms) [ok]: Only the set of correct passwords work (1 ms) [ok]: Test selector syntax error reports the error in the selector context (1 ms) [ok]: RESTORE can set LRU (1 ms) [ok]: It is possible to remove passwords from the set of valid ones (0 ms) [ok]: KEYS with hashtag (1 ms) [ok]: PING (1 ms) [ok]: Test password hashes can be added (0 ms) [ok]: CLIENT LIST (0 ms) [ok]: Pub/Sub PING on RESP3 (1 ms) [ok]: CLIENT LIST with IDs (1 ms) [ok]: Test password hashes validate input (1 ms) [ok]: RESTORE can set LFU (1 ms) [ok]: CLIENT INFO (0 ms) [ok]: RESTORE returns an error of the key already exists (0 ms) [ok]: ACL GETUSER returns the password hash instead of the actual password (0 ms) [ok]: Coverage: HELP commands (4 ms) [ok]: DEL all keys (2 ms) [ok]: KEYS with empty DB (0 ms) [ok]: PUBLISH/SUBSCRIBE basics (1 ms) [ok]: CLIENT LIST with ADDR filter (1 ms) [ok]: Test hashed passwords removal (0 ms) [ok]: Test flexible selector definition (2 ms) [ok]: RESTORE can overwrite an existing key with REPLACE (1 ms) [ok]: Coverage: MEMORY MALLOC-STATS (0 ms) [ok]: By default users are not able to access any command (0 ms) [ok]: RESTORE can detect a syntax error for unrecognized options (0 ms) [ok]: CLIENT LIST with LADDR filter (1 ms) [ok]: Coverage: MEMORY PURGE (1 ms) [ok]: By default users are not able to access any key (1 ms) [ok]: PUBLISH/SUBSCRIBE with two clients (1 ms) [ok]: CLIENT LIST with MAXAGE filter (0 ms) [ok]: Coverage: ECHO (0 ms) [ok]: Test separate read permission (1 ms) [ok]: CLIENT LIST with TYPE filter (0 ms) [ok]: It's possible to allow the access of a subset of keys (1 ms) [ok]: PUBLISH/SUBSCRIBE after UNSUBSCRIBE without arguments (1 ms) [ok]: Test separate write permission (1 ms) [ok]: CLIENT LIST with USER filter (1 ms) [ok]: SUBSCRIBE to one channel more than once (0 ms) [ok]: Test separate read and write permissions (0 ms) [ok]: By default, only default user is able to publish to any channel (0 ms) [ok]: CLIENT LIST with SKIPME filter (1 ms) [ok]: Validate read and write permissions format (1 ms) [ok]: UNSUBSCRIBE from non-subscribed channels (1 ms) [ok]: By default, only default user is not able to publish to any shard channel (0 ms) [ok]: SAVE - make sure there are all the types as values (2 ms) [ok]: Validate key permissions format - empty and omitted pattern (1 ms) [ok]: By default, only default user is able to subscribe to any channel (1 ms) [ok]: PUBLISH/PSUBSCRIBE basics (1 ms) [ok]: CLIENT LIST with multiple IDs and TYPE filter (2 ms) [ok]: Test separate read and write permissions on different selectors are not additive (1 ms) [ok]: By default, only default user is able to subscribe to any shard channel (1 ms) [ok]: PUBLISH/PSUBSCRIBE with two clients (1 ms) [ok]: CLIENT LIST with filters matching no clients (1 ms) [ok]: Test SET with separate read permission (1 ms) [ok]: By default, only default user is able to subscribe to any pattern (1 ms) [ok]: PUBLISH/PSUBSCRIBE after PUNSUBSCRIBE without arguments (1 ms) [ok]: It's possible to allow publishing to a subset of channels (0 ms) [ok]: Test SET with separate write permission (1 ms) [ok]: CLIENT LIST with illegal arguments (1 ms) [ok]: It's possible to allow publishing to a subset of shard channels (1 ms) [ok]: Test SET with read and write permissions (1 ms) [ok]: Validate subset of channels is prefixed with resetchannels flag (1 ms) [ok]: Test BITFIELD with separate read permission (0 ms) [ok]: Test BITFIELD with separate write permission (1 ms) [ok]: In transaction queue publish/subscribe/psubscribe to unauthorized channel will fail (1 ms) [ok]: client input output and command process statistics (3 ms) [ok]: Test BITFIELD with read and write permissions (1 ms) [ok]: CONFIG SET oom-score-adj works as expected (17 ms) [ok]: It's possible to allow subscribing to a subset of channels (1 ms) [ok]: CLIENT KILL with illegal arguments (2 ms) [ok]: It's possible to allow subscribing to a subset of shard channels (1 ms) [ok]: Test ACL log correctly identifies the relevant item when selectors are used (1 ms) [ok]: It's possible to allow subscribing to a subset of channel patterns (1 ms) [ok]: CONFIG SET oom-score-adj handles configuration failures (1 ms) [ok]: Test ACL GETUSER response information (1 ms) [ok]: CONFIG SET oom-score-adj-values doesn't touch proc when disabled (0 ms) [ok]: Subscribers are killed when revoked of channel permission (1 ms) [ok]: Test ACL list idempotency (1 ms) [ok]: CONFIG SET oom score restored on disable (0 ms) [ok]: Test R+W is the same as all permissions (0 ms) [ok]: Subscribers are killed when revoked of channel permission (1 ms) [ok]: CONFIG SET oom score relative and absolute (1 ms) [ok]: Test basic dry run functionality (1 ms) [ok]: Test various commands for command permissions (0 ms) [ok]: CONFIG SET out-of-range oom score (0 ms) [ok]: Subscribers are killed when revoked of pattern permission (1 ms) [ok]: Subscribers are killed when revoked of allchannels permission (1 ms) [ok]: Subscribers are pardoned if literal permissions are retained and/or gaining allchannels (1 ms) [ok]: Test various odd commands for key permissions (3 ms) [ok]: Existence test commands are not marked as access (1 ms) [ok]: Intersection cardinaltiy commands are access commands (1 ms) [ok]: blocked command gets rejected when reprocessed after permission change (3 ms) [ok]: Users can be configured to authenticate with any password (0 ms) [ok]: ACLs can exclude single commands (0 ms) [ok]: Test general keyspace commands require some type of permission to execute (1 ms) [ok]: ACLs can include or exclude whole classes of commands (1 ms) [ok]: ACLs can include single subcommands (1 ms) [ok]: Cardinality commands require some type of permission to execute (2 ms) [ok]: ACLs can exclude single subcommands, case 1 (1 ms) [ok]: Test sharded channel permissions (1 ms) [ok]: ACLs can exclude single subcommands, case 2 (1 ms) [ok]: ACLs cannot include a subcommand with a specific arg (0 ms) [ok]: Test sort with ACL permissions (1 ms) [ok]: ACLs cannot exclude or include a container commands with a specific arg (0 ms) [ok]: Test DRYRUN with wrong number of arguments (1 ms) [ok]: ACLs cannot exclude or include a container command with two args (1 ms) [ok]: ACLs including of a type includes also subcommands (1 ms) [ok]: ACLs can block SELECT of all but a specific DB (0 ms) [ok]: ACLs can block all DEBUG subcommands except one (0 ms) [ok]: ACLs set can include subcommands, if already full command exists (1 ms) [ok]: ACLs set can exclude subcommands, if already full command exists (3 ms) [ok]: ACL SETUSER RESET reverting to default newly created user (1 ms) [ok]: Handle an empty query (41 ms) [ok]: ACL GETUSER is able to translate back command permissions (1 ms) [ok]: ACL GETUSER provides reasonable results (17 ms) [ok]: ACL GETUSER provides correct results (4 ms) [ok]: ACL CAT with illegal arguments (1 ms) [ok]: ACL CAT without category - list all categories (0 ms) [ok]: ACL CAT category - list all commands/subcommands that belong to category (1 ms) [ok]: ACL requires explicit permission for scripting for EVAL_RO, EVALSHA_RO and FCALL_RO (0 ms) [ok]: ACL #5998 regression: memory leaks adding / removing subcommands (0 ms) [ok]: ACL LOG aggregates similar errors together and assigns unique entry-id to new errors (5 ms) [ok]: ACL LOG shows failed command executions at toplevel (1 ms) [ok]: ACL LOG shows failed subcommand executions at toplevel (1 ms) [ok]: ACL LOG is able to test similar events (0 ms) [ok]: ACL LOG is able to log keys access violations and key name (1 ms) [ok]: ACL LOG is able to log channel access violations and channel name (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) (0 ms) [ok]: ACL LOG can distinguish the transaction context (2) (2 ms) [ok]: ACL can log errors in the context of Lua scripting (1 ms) [ok]: ACL LOG can accept a numerical argument to show less entries (2 ms) [ok]: ACL LOG can log failed auth attempts (1 ms) [ok]: ACLLOG - zero max length is correctly handled (1 ms) [ok]: Negative multibulk length (43 ms) [ok]: Out of range multibulk length (1 ms) [ok]: ACL LOG entries are limited to a maximum amount (3 ms) [ok]: Wrong multibulk payload header (0 ms) [ok]: Negative multibulk payload length (1 ms) [ok]: ACL LOG entries are still present on update of max len config (1 ms) [ok]: Out of range multibulk payload length (0 ms) [ok]: When default user is off, new connections are not authenticated (0 ms) [ok]: Non-number multibulk payload length (1 ms) [ok]: When default user has no command permission, hello command still works for other users (1 ms) [ok]: Multi bulk request not followed by bulk arguments (0 ms) [ok]: Generic wrong number of args (1 ms) [ok]: When an authentication chain is used in the HELLO cmd, the last auth cmd has precedence (1 ms) [ok]: Unbalanced number of quotes (0 ms) [ok]: When a setname chain is used in the HELLO cmd, the last setname cmd has precedence (1 ms) [ok]: When authentication fails in the HELLO cmd, the client setname should not be applied (0 ms) [ok]: ACL HELP should not have unexpected options (0 ms) [ok]: Protocol desync regression test #1 (1 ms) [ok]: Delete a user that the client doesn't use (1 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 (1 ms) [ok]: ACL load non-existing configured ACL file (0 ms) [ok]: ACL-Metrics user AUTH failure (4 ms) [ok]: RESTORE should not store key that are already expired, with REPLACE will propagate it as DEL or UNLINK (89 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]: PubSub messages with CLIENT REPLY OFF (85 ms) [ok]: PUNSUBSCRIBE from non-subscribed channels (0 ms) [ok]: NUMSUB returns numbers, not strings (#1561) (0 ms) [ok]: ACL-Metrics invalid command accesses (3 ms) [ok]: NUMPATs returns the number of unique patterns (1 ms) [ok]: CONFIG SET port number (221 ms) [1/128 done]: unit/oom-score-adj (0 seconds) Testing unit/latency-monitor [ok]: Mix SUBSCRIBE and PSUBSCRIBE (1 ms) [ok]: PUNSUBSCRIBE and UNSUBSCRIBE should always reply (0 ms) [ok]: ACL-Metrics invalid key accesses (3 ms) [ok]: ACL-Metrics invalid channels accesses (4 ms) [ok]: Temp rdb will be deleted if we use bg_unlink when shutdown (123 ms) [ok]: Protocol desync regression test #2 (42 ms) [ok]: Keyspace notifications: we receive keyspace notifications (43 ms) [ok]: Protocol desync regression test #3 (46 ms) [ok]: Keyspace notifications: we receive keyevent notifications (47 ms) [ok]: Keyspace notifications: we can receive both kind of events (1 ms) [ok]: Keyspace notifications: we are able to mask events (1 ms) [ok]: Keyspace notifications: general events test (1 ms) [ok]: Keyspace notifications: list events test (1 ms) [ok]: Keyspace notifications: set events test (1 ms) [ok]: Keyspace notifications: zset events test (2 ms) [ok]: Keyspace notifications: hash events test (0 ms) [ok]: Keyspace notifications: stream events test (1 ms) [ok]: LATENCY HISTOGRAM with empty histogram (1 ms) [ok]: Test behavior of loading ACLs (1 ms) [ok]: LATENCY HISTOGRAM all commands (1 ms) [ok]: LATENCY HISTOGRAM sub commands (1 ms) [ok]: LATENCY HISTOGRAM with a subset of commands (1 ms) [ok]: LATENCY HISTOGRAM command (1 ms) [ok]: LATENCY HISTOGRAM with wrong command name skips the invalid one (2 ms) [ok]: Protocol desync regression test #4 (47 ms) [ok]: raw protocol response (0 ms) [ok]: raw protocol response - deferred (0 ms) [ok]: raw protocol response - multiline (1 ms) [ok]: RESP3 attributes (1 ms) [ok]: RESP3 attributes readraw (1 ms) [ok]: RESP3 attributes on RESP2 (0 ms) [ok]: test big number parsing (0 ms) [ok]: test bool parsing (1 ms) [ok]: test verbatim str parsing (0 ms) [ok]: SHUTDOWN ABORT can cancel SIGTERM (12 ms) [ok]: test large number of args (40 ms) [ok]: test argument rewriting - issue 9598 (1 ms) [ok]: Keyspace notifications: expired events (triggered expire) (101 ms) [ok]: UNLINK can reclaim memory in background (312 ms) [ok]: MIGRATE is caching connections (216 ms) [ok]: CONFIG SET bind address (215 ms) [2/128 done]: unit/acl-v2 (0 seconds) Testing unit/info [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 (0 ms) [ok]: Alice: can execute all command (0 ms) [ok]: Bob: just execute @set and acl command (1 ms) [ok]: ACL LOAD only disconnects affected clients (2 ms) [ok]: ACL LOAD disconnects clients of deleted users (2 ms) [ok]: ACL load and save (2 ms) [ok]: ACL load and save with restricted channels (2 ms) [ok]: Temp rdb will be deleted in signal handle (83 ms) [ok]: HELLO without protover (1 ms) [ok]: HELLO and availability-zone (1 ms) [ok]: RDB save will be failed in shutdown (2 ms) [ok]: Keyspace notifications: expired events (background expire) (195 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 (1 ms) [ok]: Keyspace notifications: new key test (1 ms) [ok]: publish to self inside multi (1 ms) [ok]: publish to self inside script (1 ms) [ok]: unsubscribe inside multi, and publish to self (1 ms) [ok]: Default user has access to all channels irrespective of flag (0 ms) [ok]: Update acl-pubsub-default, existing users shouldn't get affected (1 ms) [ok]: Single channel is valid (1 ms) [ok]: Single channel is not valid with allchannels (0 ms) [ok]: latencystats: disable/enable (1 ms) [ok]: latencystats: configure percentiles (2 ms) [ok]: SHUTDOWN will abort if rdb save failed on signal (98 ms) [ok]: latencystats: bad configure percentiles (2 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]: latencystats: blocking commands (2 ms) [ok]: Clean up rdb same named folder (1 ms) [ok]: latencystats: subcommands (1 ms) [ok]: FLUSHDB ASYNC can reclaim memory in background (269 ms) [ok]: FUZZ stresser with data model binary (571 ms) [3/128 done]: unit/pubsub (1 seconds) Testing unit/client-eviction [ok]: latencystats: measure latency (51 ms) [ok]: errorstats: failed call authentication error (1 ms) [ok]: errorstats: failed call within MULTI/EXEC (3 ms) [ok]: errorstats: failed call within LUA (3 ms) [ok]: errorstats: failed call NOSCRIPT error (1 ms) [ok]: errorstats: failed call NOGROUP error (2 ms) [ok]: errorstats: rejected call unknown command (1 ms) [ok]: errorstats: rejected call within MULTI/EXEC (2 ms) [ok]: errorstats: rejected call due to wrong arity (1 ms) [ok]: errorstats: rejected call by OOM error (2 ms) [ok]: errorstats: rejected call by authorization error (2 ms) [ok]: errorstats: blocking commands (2 ms) [ok]: Regression for a crash with blocking ops and pipelining (1 ms) [ok]: verify reply buffer limits (652 ms) [ok]: lazy free a stream with all types of metadata (79 ms) [ok]: lazy free a stream with deleted cgroup (1 ms) [4/128 done]: unit/replybufsize (1 seconds) Testing unit/querybuf [5/128 done]: unit/lazyfree (1 seconds) Testing unit/geo [6/128 done]: unit/protocol (1 seconds) Testing unit/scripting [ok]: errorstats: limit errors will not increase indefinitely (122 ms) [ok]: Only default user has access to all channels irrespective of flag (1 ms) [ok]: SHUTDOWN SIGTERM will abort if there's an initial AOFRW - default (99 ms) [ok]: client evicted due to large argv (112 ms) [ok]: CONFIG SET bind-source-addr (522 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 (1 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 (1 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 (1 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) (1 ms) [ok]: GEOSEARCH simple (sorted) (0 ms) [ok]: GEOSEARCH FROMLONLAT and FROMMEMBER cannot exist at the same time (0 ms) [ok]: GEOSEARCH FROMLONLAT and FROMMEMBER one must exist (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) (0 ms) [ok]: GEOSEARCH withdist (sorted) (0 ms) [ok]: GEORADIUS with COUNT (1 ms) [ok]: GEORADIUS with multiple WITH* tokens (0 ms) [ok]: GEORADIUS with ANY not sorted by default (0 ms) [ok]: GEORADIUS with ANY sorted by ASC (1 ms) [ok]: GEORADIUS with ANY but no COUNT (0 ms) [ok]: GEORADIUS with COUNT but missing integer argument (0 ms) [ok]: GEORADIUS with COUNT DESC (0 ms) [ok]: GEORADIUS HUGE, issue #2767 (0 ms) [ok]: GEORADIUSBYMEMBER simple (sorted) (1 ms) [ok]: GEORADIUSBYMEMBER_RO simple (sorted) (0 ms) [ok]: GEORADIUSBYMEMBER search areas contain satisfied points in oblique direction (1 ms) [ok]: GEORADIUSBYMEMBER crossing pole search (0 ms) [ok]: GEOSEARCH FROMMEMBER simple (sorted) (0 ms) [ok]: GEOSEARCH vs GEORADIUS (1 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (0 ms) [ok]: EVAL - Return _G (1 ms) [ok]: GEOSEARCH non square, long and narrow (1 ms) [ok]: EVAL - Return table with a metatable that raise error (0 ms) [ok]: GEOSEARCH corner point test (0 ms) [ok]: EVAL - Return table with a metatable that call server (0 ms) [ok]: GEORADIUSBYMEMBER withdist (sorted) (1 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (0 ms) [ok]: GEOHASH is able to return geohash strings (0 ms) [ok]: EVAL - Lua true boolean -> Redis protocol type conversion (0 ms) [ok]: GEOHASH with only key as argument (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]: GEOPOS simple (0 ms) [ok]: EVAL - Lua error reply -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua table -> Redis protocol type conversion (0 ms) [ok]: GEOPOS missing element (0 ms) [ok]: stats: eventloop metrics (112 ms) [ok]: EVAL - Are the KEYS and ARGV arrays populated correctly? (0 ms) [ok]: GEOPOS with only key as argument (0 ms) [ok]: EVAL - is Lua able to call Redis API? (0 ms) [ok]: GEODIST simple & unit (0 ms) [ok]: EVAL - Redis integer -> Lua type conversion (1 ms) [ok]: GEODIST missing elements (1 ms) [ok]: EVAL - Lua number -> Redis integer conversion (0 ms) [ok]: GEORADIUS STORE option: syntax error (0 ms) [ok]: GEOSEARCHSTORE STORE option: syntax error (0 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (0 ms) [ok]: EVAL - Redis multi bulk -> Lua type conversion (1 ms) [ok]: GEORANGE STORE option: incompatible options (1 ms) [ok]: EVAL - Redis status reply -> Lua type conversion (0 ms) [ok]: EVAL - Redis error reply -> Lua type conversion (1 ms) [ok]: GEORANGE STORE option: plain usage (1 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]: GEORADIUSBYMEMBER STORE/STOREDIST option: plain usage (1 ms) [ok]: GEOSEARCHSTORE STORE option: plain usage (0 ms) [ok]: EVAL - SELECT inside Lua should not affect the caller (0 ms) [ok]: EVAL - Scripts do not block on blpop command (1 ms) [ok]: GEORANGE STOREDIST option: plain usage (1 ms) [ok]: GEOSEARCHSTORE STOREDIST option: plain usage (0 ms) [ok]: EVAL - Scripts do not block on brpop command (0 ms) [ok]: EVAL - Scripts do not block on brpoplpush command (1 ms) [ok]: EVAL - Scripts do not block on blmove command (0 ms) [ok]: GEORANGE STOREDIST option: COUNT ASC and DESC (1 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (1 ms) [ok]: GEOSEARCH the box spans -180° or 180° (1 ms) [ok]: GEOSEARCH with small distance (0 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (0 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (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 (1 ms) [ok]: EVAL - Scripts can run non-deterministic commands (0 ms) [ok]: EVAL - No arguments to redis.call/pcall is considered an error (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (1 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ignore]: EVAL - JSON string encoding a string larger than 2GB: large memory flag not provided [ok]: EVAL - JSON numeric decoding (1 ms) [ok]: EVAL - JSON string decoding (0 ms) [ok]: EVAL - JSON smoke test (0 ms) [ok]: EVAL - cmsgpack can pack double? (1 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [7/128 done]: unit/shutdown (1 seconds) Testing unit/sort [ok]: client evicted due to large query buf (56 ms) [ok]: client evicted due to percentage of maxmemory (15 ms) [ok]: Check if maxclients works refusing connections (906 ms) [ok]: default: load from config file, without channel permission default user can't access any channels (1 ms) [8/128 done]: unit/limits (1 seconds) Testing unit/bitfield [ok]: Listpack: SORT BY key (0 ms) [ok]: Listpack: SORT BY key with limit (0 ms) [ok]: Listpack: SORT BY hash field (0 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (169 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (0 ms) [ok]: EVAL - Numerical sanity check from bitop (1 ms) [ok]: EVAL - Verify minimal bitop functionality (0 ms) [ok]: EVAL - Able to parse trailing comments (0 ms) [ok]: EVAL_RO - Successful case (1 ms) [ok]: EVAL_RO - Cannot run write commands (0 ms) [ok]: redis.sha1hex() implementation (1 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 (1 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 (1 ms) [ok]: RENAMENX against already existing key (0 ms) [ok]: RENAMENX against already existing key (2) (0 ms) [ok]: RENAME against non existing source key (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 (1 ms) [ok]: DEL all keys again (DB 0) (0 ms) [ok]: DEL all keys again (DB 1) (0 ms) [ok]: COPY basic usage for string (1 ms) [ok]: COPY for string does not replace an existing key without REPLACE option (0 ms) [ok]: COPY for string can replace an existing key with REPLACE option (0 ms) [ok]: COPY for string ensures that copied data is independent of copying data (1 ms) [ok]: COPY for string does not copy data to no-integer DB (0 ms) [ok]: COPY can copy key expire metadata as well (0 ms) [ok]: COPY does not create an expire if it does not exist (0 ms) [ok]: BITFIELD signed SET and GET basics (1 ms) [ok]: BITFIELD unsigned SET and GET basics (1 ms) [ok]: BITFIELD signed SET and GET together (0 ms) [ok]: BITFIELD unsigned with SET, GET and INCRBY arguments (0 ms) [ok]: BITFIELD with only key as argument (0 ms) [ok]: BITFIELD # form (1 ms) [ok]: BITFIELD basic INCRBY form (0 ms) [ok]: BITFIELD chaining of multiple commands (1 ms) [ok]: BITFIELD unsigned overflow wrap (1 ms) [ok]: BITFIELD unsigned overflow sat (0 ms) [ok]: BITFIELD signed overflow wrap (1 ms) [ok]: BITFIELD signed overflow sat (1 ms) [ok]: client evicted due to large multi buf (232 ms) [ok]: FUZZ stresser with data model alpha (565 ms) [ok]: COPY basic usage for list - quicklist (43 ms) [ok]: Default bind address configuration handling (210 ms) [ok]: COPY basic usage for list - listpack (1 ms) [ok]: COPY basic usage for $type set (1 ms) [ok]: COPY basic usage for $type set (1 ms) [ok]: Protected mode works as expected (5 ms) [ok]: COPY basic usage for $type set (19 ms) [ok]: COPY basic usage for listpack sorted set (1 ms) [ok]: default: load from config file with all channels permissions (1 ms) [ok]: COPY basic usage for skiplist sorted set (13 ms) [ok]: COPY basic usage for listpack hash (0 ms) [ok]: COPY basic usage for hashtable hash (14 ms) [ok]: Quicklist: SORT BY key (11 ms) [ok]: Quicklist: SORT BY key with limit (2 ms) [ok]: Quicklist: SORT BY hash field (11 ms) [ok]: COPY basic usage for stream (124 ms) [ok]: COPY basic usage for stream-cgroups (9 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 (1 ms) [ok]: MOVE does not create an expire if it does not exist (1 ms) [ok]: SET/GET keys in different DBs (1 ms) [ok]: RANDOMKEY (9 ms) [ok]: RANDOMKEY against empty DB (0 ms) [ok]: RANDOMKEY regression 1 (0 ms) [ok]: KEYS * two times with long key, Github issue #1208 (1 ms) [ok]: Regression for pattern matching long nested loops (0 ms) [ok]: Coverage: basic SWAPDB test and unhappy path (2 ms) [ok]: Coverage: SWAPDB and FLUSHDB (1 ms) [ok]: BITFIELD overflow detection fuzzing (270 ms) [ok]: Test loading an ACL file with duplicate users (2 ms) [ok]: Regression for pattern matching very long nested loops (44 ms) [ok]: Test loading an ACL file with duplicate default user (3 ms) [ok]: Test loading duplicate users in config on startup (11 ms) [9/128 done]: unit/networking (1 seconds) Testing unit/maxmemory [ok]: eviction due to output buffers of many MGET clients, client eviction: false (62 ms) [ok]: FUZZ stresser with data model compr (600 ms) [ok]: BITFIELD overflow wrap fuzzing (365 ms) [ok]: BITFIELD regression for #3221 (0 ms) [ok]: BITFIELD regression for #3564 (2 ms) [ok]: BITFIELD_RO with only key as argument (1 ms) [ok]: BITFIELD_RO fails when write option is used (0 ms) [ok]: ACL from config file and config rewrite (204 ms) [ok]: client evicted due to watched key list (709 ms) [ok]: FLUSHALL should not reset the dirty counter if we disable save (1 ms) [ok]: FLUSHALL should reset the dirty counter to 0 if we enable save (2 ms) [ok]: ACL still denies individual renamed commands (1 ms) [ok]: ACL command classes aren't affected by command renaming (1 ms) [ok]: ACL GETUSER provides correct results when commands renamed (4 ms) [ok]: BGSAVE (53 ms) [ok]: SELECT an out of range DB (0 ms) [ok]: CLIENT KILL maxAGE will kill old clients (2002 ms) [ok]: CLIENT KILL SKIPME YES/NO will kill all clients (3 ms) [ok]: CLIENT command unhappy path coverage (2 ms) [ok]: Measures elapsed time os.clock() (1001 ms) [ok]: Prohibit dangerous lua methods in sandbox (1 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (3 ms) [ok]: Globals protection reading an undeclared global variable (0 ms) [ok]: Globals protection setting an undeclared global* (1 ms) [ok]: lua bit.tohex bug (0 ms) [ok]: Test an example script DECR_IF_GT (2 ms) [ok]: Test check paused info in info clients (2098 ms) [ok]: Test read commands are not blocked by client pause (3 ms) [ok]: CLIENT KILL close the client connection during bgsave (98 ms) [ok]: BITFIELD: setup slave (102 ms) [ok]: BITFIELD: write on master, read on slave (2 ms) [ok]: BITFIELD_RO with only key as argument on read-only replica (1 ms) [ok]: BITFIELD_RO fails when write option is used on read-only replica (0 ms) [ok]: CLIENT REPLY OFF/ON: disable all commands reply (44 ms) [ok]: Test ACL LOAD works on primary (1 ms) [ok]: CLIENT REPLY SKIP: skip the next command reply (46 ms) [ok]: CLIENT REPLY ON: unset SKIP flag (44 ms) [ok]: MONITOR can log executed commands (0 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 (1 ms) [ok]: MONITOR correctly handles multi-exec cases (1 ms) [ok]: MONITOR correctly records SET EX in MULTI-EXEC (0 ms) [ok]: MONITOR log blocked command only once (3 ms) [ok]: CLIENT GETNAME should return NIL if name is not assigned (0 ms) [ok]: CLIENT GETNAME check if name set correctly (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 (0 ms) [ok]: After CLIENT SETNAME, connection can still be closed (1 ms) [ok]: CLIENT SETINFO can set a library name to this connection (0 ms) [ok]: CLIENT SETINFO invalid args (1 ms) [ok]: RESET does NOT clean library name (0 ms) [ok]: CLIENT SETINFO can clear library name (0 ms) [10/128 done]: unit/bitfield (1 seconds) Testing unit/info-command [ok]: Test ACL LOAD works on replica (104 ms) [ok]: Test old pause-all takes precedence over new pause-write (less restrictive) (347 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 (0 ms) [ok]: Test new pause time is smaller than old one, then old time preserved (103 ms) [ok]: Test write commands are paused by RO (1 ms) [ok]: Test special commands are paused by RO (1 ms) [ok]: Test read/admin multi-execs are not blocked by pause RO (1 ms) [ok]: Test write multi-execs are blocked by pause RO (1 ms) [ok]: Test scripts are blocked by pause RO (1 ms) [ok]: Test RO scripts are not blocked by pause RO (1 ms) [ok]: Test read-only scripts in multi-exec are not blocked by pause RO (1 ms) [ok]: Test write scripts in multi-exec are blocked by pause RO (2 ms) [ok]: Test may-replicate commands are rejected in RO scripts (0 ms) [ok]: Test multiple clients can be queued up and unblocked (2 ms) [ok]: Test clients with syntax errors will get responses immediately (0 ms) [11/128 done]: unit/info-command (1 seconds) Testing unit/obuf-limits [ok]: Test eviction is skipped during client pause (2 ms) [12/128 done]: unit/acl (3 seconds) Testing unit/commandlog [ok]: Test both active and passive expires are skipped during client pause (103 ms) [ok]: Test that client pause starts at the end of a transaction (1 ms) [ok]: CONFIG SET client-output-buffer-limit (2 ms) [ok]: COMMANDLOG - check that it starts with an empty log (0 ms) [ok]: Check consistency of different data types after a reload (759 ms) [ok]: stats: instantaneous metrics (2004 ms) [ok]: Test when replica paused, offset would not grow (3 ms) [ok]: Test replica offset would grow after unpause (1 ms) [ok]: COMMANDLOG - only logs commands exceeding the threshold (202 ms) [ok]: EVAL does not leak in the Lua stack (855 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) (1 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]: COMMANDLOG - zero max length is correctly handled (10 ms) [ok]: COMMANDLOG - max entries is correctly handled (8 ms) [ok]: COMMANDLOG - GET optional argument to limit output len works (9 ms) [ok]: COMMANDLOG - RESET subcommand works (1 ms) [ok]: stats: debug metrics (113 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]: TTL, TYPE and EXISTS do not alter the last access time of a key (3002 ms) [ok]: stats: client input and output buffer limit disconnections (50 ms) [ok]: clients: pubsub clients (3 ms) [ok]: Same dataset digest if saving/reloading as AOF? (262 ms) [ok]: clients: watching clients (11 ms) [ok]: Script return recursive object (133 ms) [ok]: Script check unpack with massive arguments (26 ms) [ok]: Script read key with expiration set (0 ms) [ok]: Script del key with expiration set (1 ms) [ok]: Script ACL check (1 ms) [ok]: Binary code loading failed (1 ms) [ok]: Try trick global protection 1 (0 ms) [ok]: Try trick global protection 2 (0 ms) [ok]: Try trick global protection 3 (0 ms) [ok]: Try trick global protection 4 (0 ms) [ok]: Try trick readonly table on valkey table (1 ms) [ok]: Try trick readonly table on json table (0 ms) [ok]: Try trick readonly table on cmsgpack table (1 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (0 ms) [ok]: Test dofile are not available (0 ms) [ok]: Test print are not available (0 ms) [ok]: EXPIRES after a reload (snapshot + append only file rewrite) (105 ms) [ok]: COMMANDLOG - logged entry sanity check (201 ms) [ok]: COMMANDLOG slow - Certain commands are omitted that contain sensitive information (4 ms) [ok]: COMMANDLOG slow - Some commands can redact sensitive fields (1 ms) [ok]: COMMANDLOG slow - Rewritten commands are logged as their original command (5 ms) [ok]: COMMANDLOG slow - commands with too many arguments are trimmed (1 ms) [ok]: COMMANDLOG slow - too long arguments are trimmed (1 ms) [ok]: CONFIG save params special case handled properly (892 ms) [ok]: CONFIG sanity (22 ms) [ok]: memory: database and pubsub overhead and rehashing dict count (4 ms) [ok]: COMMANDLOG slow - EXEC is not logged, just executed commands (201 ms) [ok]: CONFIG REWRITE sanity (177 ms) [13/128 done]: unit/info (3 seconds) Testing unit/hyperloglog [ok]: query buffer resized correctly (2681 ms) [ok]: query buffer resized correctly when not idle (32 ms) [ok]: COMMANDLOG slow - can clean older entries (201 ms) [ok]: KEYS with empty DB in cluster mode (0 ms) [ok]: KEYS with empty slot in cluster mode (0 ms) [ok]: Test latency events logging (3402 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) [14/128 done]: unit/keyspace (4 seconds) Testing unit/pubsubshard [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (403 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (56 ms) [ok]: SPUBLISH/SSUBSCRIBE basics (2 ms) [ok]: SPUBLISH/SSUBSCRIBE with two clients (1 ms) [ok]: SPUBLISH/SSUBSCRIBE after UNSUBSCRIBE without arguments (1 ms) [ok]: SSUBSCRIBE to one channel more than once (1 ms) [ok]: SUNSUBSCRIBE from non-subscribed channels (1 ms) [ok]: PUBSUB command basics (0 ms) [ok]: SPUBLISH/SSUBSCRIBE with two clients (2 ms) [ok]: SPUBLISH/SSUBSCRIBE with PUBLISH/SUBSCRIBE (1 ms) [ok]: Timedout script does not cause a false dead client (55 ms) [ok]: PubSubShard with CLIENT REPLY OFF (88 ms) [ok]: Timedout script link is still usable after Lua returns (91 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 (2 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 (1 ms) [ok]: COMMANDLOG slow - the commands in script are recorded normally - is_eval: 1 (1 ms) [15/128 done]: unit/commandlog (1 seconds) Testing unit/slowlog [ok]: CONFIG REWRITE handles save and shutdown properly (751 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 (5 ms) [ok]: CONFIG GET multiple args (0 ms) [ok]: SLOWLOG - check that it starts with an empty log (0 ms) [ok]: HyperLogLog self test passes (712 ms) [ok]: valkey-server command line arguments - error cases (69 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]: setup replication for following tests (102 ms) [ok]: publish message to master and receive on replica (1 ms) [ok]: Timedout scripts and unblocked command (403 ms) [ok]: Big Quicklist: SORT BY key (587 ms) [ok]: Big Quicklist: SORT BY key with limit (10 ms) [ok]: client evicted due to pubsub subscriptions (2497 ms) [ok]: SLOWLOG - only logs commands taking more time than specified (201 ms) [ok]: client evicted due to tracking redirection (46 ms) [ok]: SLOWLOG - zero max length is correctly handled (8 ms) [ok]: SLOWLOG - max entries is correctly handled (9 ms) [ok]: SLOWLOG - GET optional argument to limit output len works (2 ms) [ok]: SLOWLOG - RESET subcommand works (0 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]: SLOWLOG - logged entry sanity check (200 ms) [ok]: SLOWLOG - Certain commands are omitted that contain sensitive information (3 ms) [ok]: SLOWLOG - Some commands can redact sensitive fields (1 ms) [ok]: SLOWLOG - Rewritten commands are logged as their original command (3 ms) [ok]: SLOWLOG - commands with too many arguments are trimmed (1 ms) [ok]: SLOWLOG - too long arguments are trimmed (1 ms) [ok]: tot-net-out for replica client (525 ms) [ok]: HyperLogLogs are promote from sparse to dense (534 ms) [ok]: Change hll-sparse-max-bytes (1 ms) [ok]: Before the replica connects we issue two EVAL commands (1 ms) [ok]: Hyperloglog promote to dense well in different hll-sparse-max-bytes (54 ms) [ok]: SLOWLOG - EXEC is not logged, just executed commands (201 ms) [ok]: Connect a replica to the master instance (102 ms) [ok]: Replication of script multiple pushes to list with BLPOP (2 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: valkey-server command line arguments - allow passing option name and option value in the same arg (225 ms) [ok]: Big Quicklist: SORT BY hash field (619 ms) [ok]: Intset: SORT BY key (0 ms) [ok]: Intset: SORT BY key with limit (0 ms) [ok]: Intset: SORT BY hash field (1 ms) [ok]: SLOWLOG - can clean older entries (201 ms) [16/128 done]: unit/pubsubshard (1 seconds) Testing unit/aofrw [ok]: eviction due to input buffer of a dead client, client eviction: false (3487 ms) [ok]: Hash table: SORT BY key (13 ms) [ok]: Hash table: SORT BY key with limit (1 ms) [ok]: valkey-server command line arguments - wrong usage that we support anyway (225 ms) [ok]: Hash table: SORT BY hash field (11 ms) [ok]: EXPIRES after AOF reload (without rewrite) (2105 ms) [ok]: valkey-server command line arguments - allow option value to use the `--` prefix (216 ms) [ok]: SLOWLOG - can be disabled (402 ms) [ok]: SLOWLOG - count must be >= -1 (0 ms) [ok]: SLOWLOG - get all slow logs (2 ms) [ok]: SLOWLOG - blocking command is reported only after unblocked (3 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) [17/128 done]: unit/slowlog (2 seconds) Testing unit/auth [ok]: valkey-server command line arguments - option name and option value in the same arg and `--` prefix (217 ms) [ok]: AUTH fails if there is no password configured server side (0 ms) [ok]: Arity check for auth command (0 ms) [ok]: AUTH fails when a wrong password is given (0 ms) [ok]: Arbitrary command gives an error when AUTH is required (0 ms) [ok]: AUTH succeeds when the right password is given (1 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 (1 ms) [ok]: For once authenticated clients output buffer is NOT limited (1 ms) [ok]: eviction due to output buffers of pubsub, client eviction: false (740 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: true (62 ms) [ok]: HyperLogLog sparse encoding stress test (1199 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Additional at tail (0 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Broken magic (0 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Invalid encoding (0 ms) [ok]: Corrupted dense HyperLogLogs are detected: Wrong length (1 ms) [ok]: Connect a replica to the master instance (102 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 (1 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]: PIPELINING stresser (also a regression for the old epoll bug) (740 ms) [ok]: APPEND basics (1 ms) [ok]: APPEND basics, integer encoded values (1 ms) [ok]: TOUCH alters the last access time of a key (3002 ms) [ok]: AUTH fails when binary password is wrong (1 ms) [ok]: AUTH succeeds when binary password is correct (0 ms) [ok]: APPEND fuzzing (325 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) (1 ms) [ok]: Extended Redis Compatibility config (2 ms) [ok]: query buffer resized correctly with fat argv (2963 ms) [18/128 done]: unit/querybuf (6 seconds) Testing unit/multi [ok]: MULTI / EXEC basics (1 ms) [ok]: DISCARD (1 ms) [ok]: Nested MULTI are not allowed (0 ms) [ok]: MULTI where commands alter argc/argv (0 ms) [ok]: WATCH inside MULTI is not allowed (1 ms) [ok]: EXEC fails if there are errors while queueing commands #1 (1 ms) [ok]: EXEC fails if there are errors while queueing commands #2 (1 ms) [ok]: If EXEC aborts, the client MULTI state is cleared (1 ms) [ok]: EXEC works on WATCHed key not modified (1 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 (1 ms) [ok]: valkey-server command line arguments - save with empty input (1087 ms) [ok]: EXEC fail on lazy expired WATCHed key (102 ms) [ok]: WATCH stale keys should not fail EXEC (3 ms) [ok]: Delete WATCHed stale keys should not fail EXEC (3 ms) [ok]: FLUSHDB while watching stale keys should not fail EXEC (3 ms) [ok]: After successful EXEC key is no longer watched (1 ms) [ok]: After failed EXEC key is no longer watched (0 ms) [ok]: It is possible to UNWATCH (1 ms) [ok]: UNWATCH when there is nothing watched works as expected (0 ms) [ok]: FLUSHALL is able to touch the watched keys (1 ms) [ok]: FLUSHALL does not touch non affected keys (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 (1 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 (3 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]: Don't rehash if server has child process (399 ms) [ok]: test RESP2/2 big number protocol parsing (0 ms) [ok]: test RESP2/2 malformed big number protocol parsing (0 ms) [ok]: test RESP2/2 map protocol parsing (1 ms) [ok]: test RESP2/2 set protocol parsing (0 ms) [ok]: test RESP2/2 double protocol parsing (1 ms) [ok]: test RESP2/2 null protocol parsing (0 ms) [ok]: test RESP2/2 verbatim protocol parsing (1 ms) [ok]: test RESP2/2 true protocol parsing (0 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (0 ms) [ok]: test RESP2/3 malformed big number protocol parsing (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 (1 ms) [ok]: test RESP2/3 true protocol parsing (0 ms) [ok]: test RESP2/3 false protocol parsing (0 ms) [ok]: test RESP3/2 big number protocol parsing (0 ms) [ok]: test RESP3/2 malformed big number protocol parsing (0 ms) [ok]: test RESP3/2 map protocol parsing (1 ms) [ok]: test RESP3/2 set protocol parsing (0 ms) [ok]: test RESP3/2 double protocol parsing (0 ms) [ok]: test RESP3/2 null protocol parsing (0 ms) [ok]: test RESP3/2 verbatim protocol parsing (0 ms) [ok]: test RESP3/2 true protocol parsing (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 (0 ms) [ok]: test RESP3/3 map protocol parsing (0 ms) [ok]: test RESP3/3 set protocol parsing (1 ms) [ok]: test RESP3/3 double protocol parsing (0 ms) [ok]: test RESP3/3 null protocol parsing (0 ms) [ok]: valkey-server command line arguments - take one bulk string with spaces for MULTI_ARG configs parsing (215 ms) [ok]: test RESP3/3 verbatim protocol parsing (0 ms) [ok]: test RESP3/3 true protocol parsing (1 ms) [ok]: test RESP3/3 false protocol parsing (0 ms) [ok]: test resp3 attribute protocol parsing (1 ms) [ok]: Script block the time during execution (10 ms) [ok]: Script delete the expired key (3 ms) [ok]: TIME command using cached time (10 ms) [ok]: Script block the time in some expiration related commands (83 ms) [ok]: RESTORE expired keys with expiration time (11 ms) [ok]: Process title set as expected (1 ms) [ok]: primaryauth test with binary password dualchannel = yes (909 ms) [ok]: valkey-server command line arguments - dir multiple times (215 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (1 ms) [ok]: EVAL - Return _G (0 ms) [ok]: EVAL - Return table with a metatable that raise error (0 ms) [ok]: EVAL - Return table with a metatable that call server (1 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua true boolean -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua false boolean -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua status code reply -> Redis protocol type conversion (1 ms) [ok]: EVAL - Lua error reply -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua table -> Redis protocol type conversion (1 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 (1 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 (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 (0 ms) [ok]: EVAL - Scripts do not block on waitaof (1 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (1 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (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) (1 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ignore]: EVAL - JSON string encoding a string larger than 2GB: large memory flag not provided [ok]: EVAL - JSON numeric decoding (1 ms) [ok]: EVAL - JSON string decoding (0 ms) [ok]: EVAL - JSON smoke test (1 ms) [ok]: EVAL - cmsgpack can pack double? (0 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [ok]: cannot modify protected configuration - no (0 ms) [ok]: AUTH fails when binary password is wrong (1 ms) [ok]: AUTH succeeds when binary password is correct (0 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (204 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 (1 ms) [ok]: EVAL - Able to parse trailing comments (0 ms) [ok]: EVAL_RO - Successful case (1 ms) [ok]: EVAL_RO - Cannot run write commands (0 ms) [ok]: redis.sha1hex() implementation (1 ms) [ok]: cannot modify protected configuration - local (7 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 (1 ms) [ok]: MULTI / EXEC is not propagated (single write command) (54 ms) [ok]: LATENCY GRAPH can output the expire event graph (0 ms) [ok]: LATENCY of expire events are correctly collected (4349 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) [ok]: MULTI / EXEC is propagated correctly (multiple commands) (100 ms) [ok]: MULTI / EXEC is propagated correctly (multiple commands with SELECT) (101 ms) [ok]: MULTI / EXEC is propagated correctly (empty transaction) (100 ms) [ok]: MULTI / EXEC is propagated correctly (read-only commands) (101 ms) [ok]: primaryauth test with binary password dualchannel = no (909 ms) [ok]: MULTI / EXEC is propagated correctly (write command, no effect) (101 ms) [ok]: Measures elapsed time os.clock() (1002 ms) [ok]: Prohibit dangerous lua methods in sandbox (0 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (3 ms) [ok]: Globals protection reading an undeclared global variable (1 ms) [ok]: Globals protection setting an undeclared global* (0 ms) [ok]: lua bit.tohex bug (1 ms) [ok]: Test an example script DECR_IF_GT (2 ms) [ok]: MULTI / EXEC with REPLICAOF (101 ms) [ok]: DISCARD should not fail during OOM (1 ms) [19/128 done]: unit/auth (3 seconds) Testing unit/tracking [ok]: config during loading (1061 ms) [ok]: Big Hash table: SORT BY key (662 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 (1 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 (2 ms) [ok]: Adding prefixes to BCAST mode works (0 ms) [ok]: Tracking NOLOOP mode in standard mode works (1 ms) [ok]: Tracking NOLOOP mode in BCAST mode works (1 ms) [ok]: Big Hash table: SORT BY key with limit (18 ms) [ok]: MULTI and script timeout (404 ms) [ok]: TOUCH alters the last access time of a key in no-touch mode (3001 ms) [ok]: EXEC and script timeout (403 ms) [ok]: Big Hash table: SORT BY hash field (676 ms) [ok]: SORT GET # (0 ms) [ok]: SORT GET (0 ms) [ok]: SORT_RO GET (1 ms) [ok]: SORT GET (key and hash) with sanity check (4 ms) [ok]: SORT BY key STORE (1 ms) [ok]: SORT BY hash field STORE (1 ms) [ok]: EVAL does not leak in the Lua stack (951 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]: Call Redis command with many args from Lua (issue #1764) (1 ms) [ok]: Number conversion precision test (issue #1118) (1 ms) [ok]: SORT ALPHA against integer encoded strings (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) (1 ms) [ok]: SORT sorted set (1 ms) [ok]: Scripts can handle commands with incorrect arity (0 ms) [ok]: SORT sorted set BY nosort should retain ordering (1 ms) [ok]: Correct handling of reused argv (issue #1939) (1 ms) [ok]: Functions in the Redis namespace are able to report errors (0 ms) [ok]: CLUSTER RESET can not be invoke from within a script (1 ms) [ok]: SORT sorted set BY nosort + LIMIT (1 ms) [ok]: Script with RESP3 map (1 ms) [ok]: SORT sorted set BY nosort works as expected from scripts (1 ms) [ok]: SORT sorted set: +inf and -inf handling (1 ms) [ok]: SORT regression for issue #19, sorting floats (1 ms) [ok]: SORT with STORE returns zero if result is empty (github issue 224) (1 ms) [ok]: SORT with STORE does not create empty lists (github issue 224) (0 ms) [ok]: SORT with STORE removes key if result is empty (github issue 227) (1 ms) [ok]: SORT with BY and STORE should still order output (1 ms) [ok]: SORT will complain with numerical sorting and bad doubles (1) (0 ms) [ok]: eviction due to input buffer of a dead client, client eviction: true (3468 ms) [ok]: SORT will complain with numerical sorting and bad doubles (2) (1 ms) [ok]: SORT BY sub-sorts lexicographically if score is the same (1 ms) [ok]: SORT GET with pattern ending with just -> does not get hash field (0 ms) [ok]: SORT by nosort retains native order for lists (0 ms) [ok]: SORT by nosort plus store retains native order for lists (0 ms) [ok]: SORT by nosort with limit returns based on original list order (1 ms) [ok]: SORT_RO - Successful case (0 ms) [ok]: SORT_RO - Cannot run with STORE arg (0 ms) [ok]: SORT speed, 100 element list BY key, 100 times (27 ms) [ok]: SORT speed, 100 element list BY hash field, 100 times (36 ms) [ok]: SORT speed, 100 element list directly, 100 times (25 ms) [ok]: SORT speed, 100 element list BY , 100 times (20 ms) [ok]: SETRANGE with huge offset (3 ms) [ok]: Script return recursive object (156 ms) [ok]: SORT STORE quicklist with the right options (61 ms) [ok]: Script check unpack with massive arguments (51 ms) [ok]: Script read key with expiration set (0 ms) [ok]: Script del key with expiration set (1 ms) [ok]: Script ACL check (1 ms) [ok]: Binary code loading failed (0 ms) [ok]: Try trick global protection 1 (1 ms) [ok]: Try trick global protection 2 (0 ms) [ok]: Try trick global protection 3 (0 ms) [ok]: Try trick global protection 4 (1 ms) [ok]: Try trick readonly table on 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 (1 ms) [ok]: Test dofile are not available (0 ms) [ok]: Test print are not available (0 ms) [ok]: Tracking gets notification of expired keys (1001 ms) [ok]: MULTI-EXEC body and script timeout (404 ms) [ok]: MEMORY commands during loading (1075 ms) [ok]: Tracking gets notification of lazy expired keys (102 ms) [ok]: HELLO 3 reply is correct (0 ms) [ok]: RESP3 based basic invalidation (1 ms) [ok]: RESP3 tracking redirection (1 ms) [ok]: Invalidations of previous keys can be redirected after switching to RESP3 (0 ms) [ok]: Invalidations of new keys can be redirected after switching to RESP3 (1 ms) [ok]: Invalid keys should not be tracked for scripts in NOLOOP mode (1 ms) [ok]: Tracking only occurs for scripts when a command calls a read-only command (1 ms) [ok]: RESP3 Client gets tracking-redir-broken push message after cached key changed when rediretion client is terminated (1 ms) [ok]: Different clients can redirect to the same connection (1 ms) [ok]: Different clients using different protocols can track the same key (1 ms) [ok]: No invalidation message when using OPTIN option (1 ms) [ok]: Invalidation message sent when using OPTIN option with CLIENT CACHING yes (0 ms) [ok]: Invalidation message sent when using OPTOUT option (1 ms) [ok]: No invalidation message when using OPTOUT option with CLIENT CACHING no (0 ms) [ok]: Able to redirect to a RESP3 client (1 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 (1 ms) [ok]: Tracking invalidation message is not interleaved with multiple keys response (111 ms) [ok]: Tracking invalidation message is not interleaved with transaction response (1 ms) [ok]: Tracking invalidation message of eviction keys should be before response (4 ms) [ok]: Unblocked BLMOVE gets notification after response (1 ms) [ok]: Tracking gets notification on tracking table key eviction (70 ms) [ok]: Invalidation message received for flushall (1 ms) [ok]: Invalidation message received for flushdb (2 ms) [ok]: Test ASYNC flushall (2 ms) [ok]: flushdb tracking invalidation message is not interleaved with transaction response (2 ms) [ok]: Client output buffer hard limit is enforced (7401 ms) [ok]: Operations in no-touch mode do not alter the last access time of a key (1102 ms) [ok]: TOUCH returns the number of existing keys specified (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 (2 ms) [ok]: CONFIG REWRITE handles rename-command properly (334 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 (1 ms) [ok]: COMMAND GETKEYS MORE THAN 256 KEYS (2 ms) [ok]: COMMAND LIST syntax error (1 ms) [ok]: COMMAND LIST WITHOUT FILTERBY (3 ms) [ok]: COMMAND LIST FILTERBY ACLCAT against non existing category (0 ms) [ok]: COMMAND LIST FILTERBY ACLCAT - list all commands/subcommands (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 (1 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 (1 ms) [ok]: SORT command is marked with movablekeys (0 ms) [ok]: SORT_RO command is marked with movablekeys (0 ms) [ok]: MIGRATE command is marked with movablekeys (1 ms) [ok]: GEORADIUS command is marked with movablekeys (0 ms) [ok]: just EXEC and script timeout (403 ms) [ok]: exec with write commands and state change (1 ms) [ok]: exec with read commands and stale replica state change (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 (1 ms) [ok]: Blocking commands ignores the timeout (1 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (402 ms) [20/128 done]: unit/introspection-2 (10 seconds) Testing unit/expire [ok]: MULTI propagation of PUBLISH (95 ms) [ok]: Server is able to evacuate enough keys when num of keys surpasses limit by more than defined initial effort (206 ms) [ok]: Tracking info is correct (3 ms) [ok]: CLIENT GETREDIR provides correct client id (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking off (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking on (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking on with options (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking optin (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking optout (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking bcast mode (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking redir broken (2 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (61 ms) [ok]: Regression test for #11715 (2 ms) [ok]: RESP3 based basic invalidation with client reply off (2 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 (1 ms) [ok]: Timedout script does not cause a false dead client (66 ms) [ok]: EXPIRE - set timeouts multiple times (0 ms) [ok]: EXPIRE - It should be still possible to read 'x' (1 ms) [ok]: MULTI propagation of SCRIPT LOAD (101 ms) [ok]: eviction due to output buffers of pubsub, client eviction: true (965 ms) [ok]: Timedout script link is still usable after Lua returns (98 ms) [ok]: MULTI propagation of EVAL (101 ms) [ok]: CLIENT TRACKINGINFO when start (1 ms) [ok]: Coverage: Basic CLIENT CACHING (0 ms) [ok]: Coverage: Basic CLIENT REPLY (0 ms) [ok]: Coverage: Basic CLIENT TRACKINGINFO (0 ms) [ok]: Coverage: Basic CLIENT GETREDIR (0 ms) [ok]: MULTI propagation of SCRIPT FLUSH (101 ms) [21/128 done]: unit/tracking (2 seconds) Testing unit/bitops [ok]: MULTI propagation of XREADGROUP (101 ms) [ok]: MULTI with SAVE (1 ms) [ok]: MULTI with SHUTDOWN (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 (1 ms) [ok]: BITCOUNT against test vector #1 (0 ms) [ok]: BITCOUNT against test vector #2 (1 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]: CONFIG REWRITE handles alias config properly (673 ms) [22/128 done]: unit/introspection (11 seconds) Testing unit/functions [ok]: maxmemory - is the memory limit honoured? (policy allkeys-random) (208 ms) [ok]: Timedout scripts and unblocked command (406 ms) [ok]: MULTI with BGREWRITEAOF (204 ms) [ok]: Server can trigger resizing (1669 ms) [ok]: FUNCTION - Basic usage (0 ms) [ok]: FUNCTION - Load with unknown argument (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 (1 ms) [ok]: FUNCTION - test replace argument (0 ms) [ok]: FUNCTION - test function case insensitive (0 ms) [ok]: FUNCTION - test replace argument with failure keeps old libraries (0 ms) [ok]: FUNCTION - test function delete (1 ms) [ok]: FUNCTION - test fcall bad arguments (0 ms) [ok]: FUNCTION - test fcall bad number of keys arguments (0 ms) [ok]: FUNCTION - test fcall negative number of keys (0 ms) [ok]: FUNCTION - test delete on not exiting library (0 ms) [ok]: FUNCTION - test function kill when function is not running (0 ms) [ok]: FUNCTION - test wrong subcommand (0 ms) [ok]: FUNCTION - test loading from rdb (1 ms) [ok]: FUNCTION - test debug reload different options (2 ms) [ok]: FUNCTION - test debug reload with nosave and noflush (2 ms) [ok]: FUNCTION - test flushall and flushdb do not clean functions (0 ms) [ok]: FUNCTION - test function dump and restore (1 ms) [ok]: FUNCTION - test function dump and restore with flush argument (1 ms) [ok]: FUNCTION - test function dump and restore with append argument (1 ms) [ok]: FUNCTION - test function dump and restore with replace argument (0 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]: FUNCTION - test fcall_ro with write command (0 ms) [ok]: FUNCTION - test fcall_ro with read only commands (0 ms) [ok]: FUNCTION - test keys and argv (0 ms) [ok]: FUNCTION - test command get keys on fcall (0 ms) [ok]: FUNCTION - test command get keys on fcall_ro (0 ms) [ok]: BITCOUNT fuzzing without start/end (250 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]: MULTI with config set appendonly (205 ms) [ok]: MULTI with config error (1 ms) [ok]: Flushall while watching several keys by one client (0 ms) [ok]: Before the replica connects we issue two EVAL commands (1 ms) [ok]: MULTI with FLUSHALL and AOF (2 ms) [ok]: FUNCTION - test function kill (403 ms) [ok]: Connect a replica to the master instance (102 ms) [ok]: Replication of script multiple pushes to list with BLPOP (1 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lru) (602 ms) [ok]: BITCOUNT fuzzing with start/end (513 ms) [ok]: BITCOUNT with just start (1 ms) [ok]: BITCOUNT with start, end (3 ms) [ok]: BITCOUNT with illegal arguments (1 ms) [ok]: BITCOUNT against non-integer value (1 ms) [ok]: BITCOUNT regression test for github issue #582 (1 ms) [ok]: BITCOUNT misaligned prefix (0 ms) [ok]: BITCOUNT misaligned prefix + full words + remainder (1 ms) [ok]: BITOP NOT (empty string) (0 ms) [ok]: BITOP NOT (known string) (1 ms) [ok]: BITOP where dest and target are the same key (0 ms) [ok]: BITOP AND|OR|XOR don't change the string with single input key (1 ms) [ok]: BITOP missing key is considered a stream of zero (1 ms) [ok]: BITOP shorter keys are zero-padded to the key with max length (1 ms) [ok]: Server can rewind and trigger smaller slot resizing (651 ms) [ok]: Server can resize empty dict (18 ms) [ok]: FUNCTION - test script kill not working on function (404 ms) [ok]: sort by in cluster mode (1 ms) [ok]: sort get in cluster mode (0 ms) [ok]: sort_ro by in cluster mode (1 ms) [ok]: sort_ro get in cluster mode (0 ms) [23/128 done]: unit/sort (11 seconds) Testing unit/quit [ok]: test unixsocket options are set correctly (0 ms) [ok]: BITOP and fuzzing (477 ms) [ok]: QUIT returns OK (0 ms) [ok]: Pipelined commands after QUIT must not be executed (1 ms) [ok]: Pipelined commands after QUIT that exceed read buffer size (1 ms) [24/128 done]: unit/other (12 seconds) Testing unit/memefficiency [25/128 done]: unit/quit (0 seconds) Testing unit/violations [ok]: FUNCTION - test function kill not working on eval (403 ms) [ok]: FUNCTION - test function flush (2 ms) [ok]: FUNCTION - test function wrong argument (0 ms) [ok]: SORT adds integer field to list (1 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lfu) (851 ms) [26/129 done]: unit/violations (0 seconds) Testing unit/scan [ok]: BITOP or fuzzing (406 ms) [ok]: EXPIRE - After 2.1 seconds the key should no longer be here (2100 ms) [ok]: EXPIRE - write on expire should work (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]: SETEX - Overwrite old key (0 ms) [ok]: {standalone} SCAN basic (68 ms) [ok]: Memory efficiency with values in range 32 (355 ms) [ok]: Connect a replica to the master instance (103 ms) [ok]: Redis.replicate_commands() can be issued anywhere now (0 ms) [ok]: Redis.set_repl() can be issued before replicate_commands() now (0 ms) [ok]: Redis.set_repl() don't accept invalid values (1 ms) [ok]: Test selective replication of certain commands from Lua (1 ms) [ok]: PRNG is seeded randomly for command replication (1 ms) [ok]: Using side effects is not a problem with command replication (0 ms) [ok]: {standalone} SCAN COUNT (76 ms) [ok]: Connect a replica to the master instance (103 ms) [ok]: FUNCTION - creation is replicated to replica (1 ms) [ok]: FUNCTION - call on replica (0 ms) [ok]: FUNCTION - restore is replicated to replica (1 ms) [ok]: FUNCTION - delete is replicated to replica (0 ms) [ok]: FUNCTION - flush is replicated to replica (1 ms) [ok]: {standalone} SCAN MATCH (62 ms) [ok]: Disconnecting the replica from master instance (102 ms) [ok]: FUNCTION - test replication to replica on rdb phase (0 ms) [ok]: FUNCTION - test replication to replica on rdb phase info command (1 ms) [ok]: FUNCTION - create on read only replica (0 ms) [ok]: FUNCTION - delete on read only replica (0 ms) [ok]: FUNCTION - function effect is replicated to replica (1 ms) [ok]: FUNCTION - modify key space of read only replica (0 ms) [ok]: BITOP xor fuzzing (391 ms) [ok]: {standalone} SCAN TYPE (136 ms) [ok]: BITOP NOT fuzzing (41 ms) [ok]: BITOP with integer encoded source objects (0 ms) [ok]: BITOP with non string source key (1 ms) [ok]: BITOP with empty string after non empty string (issue #529) (0 ms) [ok]: BITPOS against wrong type (1 ms) [ok]: BITPOS will illegal arguments (1 ms) [ok]: BITPOS against non-integer value (0 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 (1 ms) [ok]: BITPOS bit=1 with string less than 1 word works (0 ms) [ok]: BITPOS bit=0 starting at unaligned address (0 ms) [ok]: BITPOS bit=1 starting at unaligned address (0 ms) [ok]: BITPOS bit=0 unaligned+full word+reminder (2 ms) [ok]: BITPOS bit=1 unaligned+full word+reminder (2 ms) [ok]: BITPOS bit=1 returns -1 if string is all 0 bits (4 ms) [ok]: BITPOS bit=0 works with intervals (1 ms) [ok]: BITPOS bit=1 works with intervals (1 ms) [ok]: BITPOS bit=0 changes behavior if end is given (0 ms) [ok]: SETBIT/BITFIELD only increase dirty when the value changed (4 ms) [ok]: {standalone} SCAN unknown type (54 ms) [ok]: {standalone} SCAN with expired keys (68 ms) [ok]: Memory efficiency with values in range 64 (427 ms) [ok]: {standalone} SCAN with expired keys with TYPE filter (84 ms) [ok]: {standalone} SSCAN with encoding intset (3 ms) [ok]: {standalone} SSCAN with encoding listpack (3 ms) [ok]: {standalone} SSCAN with encoding hashtable (7 ms) [ok]: {standalone} HSCAN with encoding listpack (3 ms) [ok]: BITPOS bit=1 fuzzy testing using SETBIT (248 ms) [ok]: {standalone} HSCAN with encoding hashtable (84 ms) [ok]: {standalone} ZSCAN with encoding listpack (2 ms) [ok]: {standalone} ZSCAN with encoding skiplist (104 ms) [ok]: {standalone} SCAN guarantees check under write load (19 ms) [ok]: {standalone} SSCAN with integer encoded object (issue #1345) (0 ms) [ok]: {standalone} SSCAN with PATTERN (1 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 (1 ms) [ok]: {standalone} ZSCAN scores: regression test for issue #2175 (145 ms) [ok]: BITPOS bit=0 fuzzy testing using SETBIT (288 ms) [ok]: Test check paused info during the cluster failover in info clients (57 ms) [ok]: test RESP2/2 big number protocol parsing (0 ms) [ok]: test RESP2/2 malformed big number protocol parsing (0 ms) [ok]: test RESP2/2 map protocol parsing (1 ms) [ok]: test RESP2/2 set protocol parsing (0 ms) [ok]: test RESP2/2 double protocol parsing (1 ms) [ok]: test RESP2/2 null protocol parsing (0 ms) [ok]: test RESP2/2 verbatim protocol parsing (0 ms) [ok]: test RESP2/2 true protocol parsing (1 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (1 ms) [ok]: test RESP2/3 malformed big number protocol parsing (0 ms) [ok]: test RESP2/3 map protocol parsing (0 ms) [ok]: test RESP2/3 set protocol parsing (1 ms) [ok]: test RESP2/3 double protocol parsing (0 ms) [ok]: test RESP2/3 null protocol parsing (1 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 (0 ms) [ok]: test RESP3/2 malformed big number protocol parsing (1 ms) [ok]: test RESP3/2 map protocol parsing (0 ms) [ok]: test RESP3/2 set protocol parsing (1 ms) [ok]: test RESP3/2 double protocol parsing (0 ms) [ok]: 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 (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 (1 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 (1 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]: Regression test for multi-exec with RANDOMKEY accessing the wrong per-slot dictionary (1 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) [27/129 done]: unit/pause (13 seconds) Testing unit/wait [28/129 done]: unit/multi (7 seconds) Testing unit/tls [ok]: Script block the time in some expiration related commands (82 ms) [ok]: SETEX - Wait for the key to expire (1102 ms) [ok]: SETEX - Wrong time parameter (0 ms) [ok]: PERSIST can undo an EXPIRE (1 ms) [ok]: PERSIST returns 0 against non existing or non volatile keys (1 ms) [ok]: RESTORE expired keys with expiration time (10 ms) [ok]: Memory efficiency with values in range 128 (693 ms) [ok]: BITPOS/BITCOUNT fuzzy testing using SETBIT (353 ms) [ok]: FUNCTION can processes create, delete and flush commands in AOF when doing "debug loadaof" in read-only slaves (323 ms) [29/129 done]: unit/tls (0 seconds) Testing unit/type/stream [ok]: EVAL - Does Lua interpreter replies to our requests? (0 ms) [ok]: EVAL - Return _G (0 ms) [ok]: EVAL - Return table with a metatable that raise error (0 ms) [ok]: EVAL - Return table with a metatable that call server (1 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua true boolean -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua false boolean -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua status code reply -> Redis protocol type conversion (1 ms) [ok]: EVAL - Lua error reply -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua table -> Redis protocol type conversion (0 ms) [ok]: EVAL - Are the KEYS and ARGV arrays populated correctly? (0 ms) [ok]: EVAL - is Lua able to call Redis API? (1 ms) [ok]: EVAL - Redis integer -> Lua type conversion (0 ms) [ok]: EVAL - Lua number -> Redis integer conversion (1 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (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 (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 (1 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (1 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (0 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option -- non empty stream (1 ms) [ok]: EVAL - Scripts can run non-deterministic commands (0 ms) [ok]: EVAL - No arguments to redis.call/pcall is considered an error (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (1 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ignore]: EVAL - JSON string encoding a string larger than 2GB: large memory flag not provided [ok]: EVAL - JSON numeric decoding (0 ms) [ok]: EVAL - JSON string decoding (0 ms) [ok]: EVAL - JSON smoke test (0 ms) [ok]: EVAL - cmsgpack can pack double? (0 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [30/130 done]: unit/bitops (3 seconds) Testing unit/type/set [ok]: LIBRARIES - test shared function can access default globals (0 ms) [ok]: LIBRARIES - usage and code sharing (1 ms) [ok]: LIBRARIES - test registration failure revert the entire load (0 ms) [ok]: LIBRARIES - test registration function name collision (1 ms) [ok]: LIBRARIES - test registration function name collision on same library (0 ms) [ok]: LIBRARIES - test registration with no argument (0 ms) [ok]: LIBRARIES - test registration with only name (1 ms) [ok]: LIBRARIES - test registration with to many arguments (0 ms) [ok]: LIBRARIES - test registration with no string name (0 ms) [ok]: LIBRARIES - test registration with wrong name format (1 ms) [ok]: LIBRARIES - test registration with empty name (0 ms) [ok]: LIBRARIES - math.random from function load (0 ms) [ok]: LIBRARIES - redis.call from function load (1 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 (0 ms) [ok]: Setup slave (101 ms) [ok]: WAIT out of range timeout (milliseconds) (1 ms) [ok]: WAIT should acknowledge 1 additional copy of the data (1 ms) [ok]: XADD wrong number of args (0 ms) [ok]: XADD can add entries into a stream that XRANGE can fetch (1 ms) [ok]: XADD IDs are incremental (1 ms) [ok]: 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 (1 ms) [ok]: XADD auto-generated sequence is zero for future timestamp ID (0 ms) [ok]: XADD auto-generated sequence can't be smaller than last ID (1 ms) [ok]: XADD auto-generated sequence can't overflow (0 ms) [ok]: XADD 0-* should succeed (1 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - listpack (2 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - hashtable (17 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - intset (2 ms) [ok]: SMISMEMBER SMEMBERS SCARD against non set (1 ms) [ok]: SMISMEMBER SMEMBERS SCARD against non existing key (0 ms) [ok]: SMISMEMBER requires one or more members (1 ms) [ok]: SADD against non set (0 ms) [ok]: SADD a non-integer against a small intset (0 ms) [ok]: SADD a non-integer against a large intset (14 ms) [ok]: SADD an integer larger than 64 bits (1 ms) [ok]: SADD an integer larger than 64 bits to a large intset (14 ms) [ok]: XADD with MAXLEN option (115 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (214 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (1 ms) [ok]: EVAL - Numerical sanity check from bitop (1 ms) [ok]: EVAL - Verify minimal bitop functionality (0 ms) [ok]: EVAL - Able to parse trailing comments (0 ms) [ok]: EVAL_RO - Successful case (0 ms) [ok]: EVAL_RO - Cannot run write commands (0 ms) [ok]: redis.sha1hex() implementation (1 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-lru) (1754 ms) [ok]: SADD overflows the maximum allowed integers in an intset - single (50 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single (12 ms) [ok]: SADD overflows the maximum allowed integers in an intset - multiple (44 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - multiple (1 ms) [ok]: XADD with MAXLEN option and the '=' argument (126 ms) [ok]: SADD overflows the maximum allowed integers in an intset - single_multiple (43 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single_multiple (1 ms) [ok]: Variadic SADD (1 ms) [ok]: XADD with MAXLEN option and the '~' argument (108 ms) [ok]: XADD with NOMKSTREAM option (1 ms) [ok]: Memory efficiency with values in range 1024 (668 ms) [ok]: Set encoding after DEBUG RELOAD (174 ms) [ok]: SREM basics - $type (1 ms) [ok]: SREM basics - $type (15 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 (1 ms) [ok]: SINTERCARD against non-existing key (0 ms) [ok]: LIBRARIES - load timeout (502 ms) [ok]: LIBRARIES - verify global protection on the load run (0 ms) [ok]: LIBRARIES - named arguments (1 ms) [ok]: LIBRARIES - named arguments, bad function name (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 (3 ms) [ok]: FUNCTION - test function list with code (0 ms) [ok]: FUNCTION - test function list with pattern (1 ms) [ok]: FUNCTION - test function list wrong argument (0 ms) [ok]: FUNCTION - test function list with bad argument to library name (0 ms) [ok]: FUNCTION - test function list withcode multiple times (0 ms) [ok]: FUNCTION - test function list libraryname multiple times (1 ms) [ok]: FUNCTION - verify OOM on function load and function restore (1 ms) [ok]: FUNCTION - verify allow-omm allows running any command (1 ms) [ok]: XADD with MINID option (134 ms) [ok]: XTRIM with MINID option (1 ms) [ok]: XTRIM with MINID option, big delta from master record (1 ms) [ok]: Generated sets must be encoded correctly - regular (0 ms) [ok]: SINTER with two sets - regular (1 ms) [ok]: SINTERCARD with two sets - regular (0 ms) [ok]: SINTERSTORE with two sets - regular (1 ms) [ok]: SINTERSTORE with two sets, after a DEBUG RELOAD - regular (5 ms) [ok]: SUNION with two sets - regular (7 ms) [ok]: SUNIONSTORE with two sets - regular (7 ms) [ok]: SINTER against three sets - regular (0 ms) [ok]: SINTERCARD against three sets - regular (0 ms) [ok]: SINTERSTORE with three sets - regular (1 ms) [ok]: SUNION with non existing keys - regular (13 ms) [ok]: SDIFF with two sets - regular (0 ms) [ok]: SDIFF with three sets - regular (1 ms) [ok]: SDIFFSTORE with three sets - regular (0 ms) [ok]: SINTER/SUNION/SDIFF with three same sets - regular (7 ms) [ok]: Generated sets must be encoded correctly - intset (0 ms) [ok]: SINTER with two sets - intset (1 ms) [ok]: SINTERCARD with two sets - intset (0 ms) [ok]: SINTERSTORE with two sets - intset (0 ms) [ok]: SINTERSTORE with two sets, after a DEBUG RELOAD - intset (4 ms) [ok]: SUNION with two sets - intset (12 ms) [ok]: SUNIONSTORE with two sets - intset (12 ms) [ok]: SINTER against three sets - intset (1 ms) [ok]: SINTERCARD against three sets - intset (0 ms) [ok]: SINTERSTORE with three sets - intset (1 ms) [ok]: SUNION with non existing keys - intset (12 ms) [ok]: SDIFF with two sets - intset (0 ms) [ok]: SDIFF with three sets - intset (0 ms) [ok]: SDIFFSTORE with three sets - intset (0 ms) [ok]: Client output buffer soft limit is enforced if time is overreached (4427 ms) [ok]: SINTER/SUNION/SDIFF with three same sets - intset (9 ms) [ok]: SINTERSTORE with two listpack sets where result is intset (1 ms) [ok]: FUNCTION - wrong flags type named arguments (0 ms) [ok]: SINTERSTORE with two hashtable sets where result is intset (29 ms) [ok]: FUNCTION - wrong flag type (0 ms) [ok]: FUNCTION - unknown flag (0 ms) [ok]: FUNCTION - write script on fcall_ro (0 ms) [ok]: FUNCTION - write script with no-writes flag (0 ms) [ok]: SUNION hashtable and listpack (2 ms) [ok]: FUNCTION - deny oom (1 ms) [ok]: SDIFF with first set empty (0 ms) [ok]: FUNCTION - deny oom on no-writes function (0 ms) [ok]: SDIFF with same set two times (0 ms) [ok]: FUNCTION - allow stale (2 ms) [ok]: FUNCTION - valkey version api (0 ms) [ok]: FUNCTION - function stats (1 ms) [ok]: FUNCTION - function stats reloaded correctly from rdb (2 ms) [ok]: FUNCTION - function stats delete library (0 ms) [ok]: FUNCTION - test function stats on loading failure (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 (1 ms) [ok]: FUNCTION - function test multiple names (0 ms) [ok]: FUNCTION - function test name with quotes (0 ms) [ok]: FUNCTION - trick global protection 1 (0 ms) [ok]: FUNCTION - test getmetatable on script load (0 ms) [ok]: EXPIRE precision is now the millisecond (1103 ms) [31/130 done]: unit/functions (4 seconds) Testing unit/type/hash [ok]: PSETEX can set sub-second expires (101 ms) [ok]: HSET/HLEN - Small hash creation (1 ms) [ok]: Is the small hash encoded with a listpack? (0 ms) [ok]: HRANDFIELD - listpack (10 ms) [ok]: HRANDFIELD - hashtable (9 ms) [ok]: HRANDFIELD with RESP3 (1 ms) [ok]: HRANDFIELD count of 0 is handled correctly (0 ms) [ok]: HRANDFIELD count overflow (1 ms) [ok]: HRANDFIELD with against non existing key (0 ms) [ok]: HRANDFIELD count of 0 is handled correctly - emptyarray (0 ms) [ok]: HRANDFIELD with against non existing key - emptyarray (0 ms) [ok]: PEXPIRE can set sub-second expires (101 ms) [ok]: WAIT should not acknowledge 2 additional copies of the data (1079 ms) [ok]: HRANDFIELD with - hashtable (160 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 (1 ms) [ok]: Globals protection reading an undeclared global variable (0 ms) [ok]: Globals protection setting an undeclared global* (0 ms) [ok]: lua bit.tohex bug (0 ms) [ok]: Test an example script DECR_IF_GT (0 ms) [ok]: PEXPIREAT can set sub-second expires (202 ms) [ok]: EXPIRE / EXPIREAT / PEXPIRE / PEXPIREAT Expiration time is already expired (3 ms) [ok]: TTL returns time to live in seconds (0 ms) [ok]: PTTL returns time to live in milliseconds (0 ms) [ok]: TTL / PTTL / EXPIRETIME / PEXPIRETIME return -1 if key has no expire (0 ms) [ok]: TTL / PTTL / EXPIRETIME / PEXPIRETIME return -2 if key does not exit (1 ms) [ok]: EXPIRETIME returns absolute expiration time in seconds (0 ms) [ok]: PEXPIRETIME returns absolute expiration time in milliseconds (1 ms) [ok]: HRANDFIELD with - listpack (158 ms) [ok]: HSET/HLEN - Big hash creation (125 ms) [ok]: Is the big hash encoded with an hash table? (0 ms) [ok]: HGET against the small hash (1 ms) [ok]: MIGRATE cached connections are released after some time (15002 ms) [ok]: HGET against the big hash (82 ms) [ok]: HGET against non existing key (0 ms) [ok]: HSET in update and insert mode (1 ms) [ok]: HSETNX target key missing - small hash (1 ms) [ok]: HSETNX target key exists - small hash (0 ms) [ok]: HSETNX target key missing - big hash (0 ms) [ok]: HSETNX target key exists - big hash (1 ms) [ok]: HSET/HMSET wrong number of args (0 ms) [ok]: HMSET - small hash (1 ms) [ok]: HMSET - big hash (58 ms) [ok]: HMGET against non existing key and fields (0 ms) [ok]: Hash commands against wrong type (3 ms) [ok]: HMGET - small hash (1 ms) [ok]: HMGET - big hash (60 ms) [ok]: HKEYS - small hash (0 ms) [ok]: HKEYS - big hash (16 ms) [ok]: HVALS - small hash (0 ms) [ok]: HVALS - big hash (2 ms) [ok]: HGETALL - small hash (0 ms) [ok]: HGETALL - big hash (34 ms) [ok]: HGETALL against non-existing key (0 ms) [ok]: HDEL and return value (1 ms) [ok]: HDEL - more than a single value (1 ms) [ok]: HDEL - hash becomes empty before deleting all specified fields (0 ms) [ok]: HEXISTS (1 ms) [ok]: Is a ziplist encoded Hash promoted on big payload? (0 ms) [ok]: HINCRBY against non existing database key (1 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 (1 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) (1 ms) [ok]: HINCRBY can detect overflows (0 ms) [ok]: HINCRBYFLOAT against non existing database key (0 ms) [ok]: HINCRBYFLOAT against non existing hash key (1 ms) [ok]: HINCRBYFLOAT against hash key created by hincrby itself (0 ms) [ok]: HINCRBYFLOAT against hash key originally set with HSET (0 ms) [ok]: HINCRBYFLOAT over 32bit value (0 ms) [ok]: HINCRBYFLOAT over 32bit value with over 32bit increment (1 ms) [ok]: HINCRBYFLOAT fails against hash value with spaces (left) (0 ms) [ok]: HINCRBYFLOAT fails against hash value with spaces (right) (1 ms) [ok]: HINCRBYFLOAT fails against hash value that contains a null-terminator in the middle (0 ms) [ok]: HSTRLEN against the small hash (0 ms) [ok]: MIGRATE is able to migrate a key between two instances (218 ms) [ok]: EVAL does not leak in the Lua stack (592 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 (1 ms) [ok]: Script with RESP3 map (1 ms) [ok]: HSTRLEN against the big hash (83 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 (2 ms) [ok]: Hash ziplist regression test for large keys (0 ms) [ok]: Hash fuzzing #1 - 10 fields (37 ms) [ok]: Server should actively expire keys incrementally (603 ms) [ok]: Hash fuzzing #2 - 10 fields (19 ms) [ok]: MIGRATE is able to copy a key between two instances (218 ms) [ok]: Script return recursive object (228 ms) [ok]: Script check unpack with massive arguments (32 ms) [ok]: Script read key with expiration set (0 ms) [ok]: Script del key with expiration set (0 ms) [ok]: Script ACL check (1 ms) [ok]: Binary code loading failed (0 ms) [ok]: Try trick global protection 1 (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 (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]: MIGRATE will not overwrite existing keys, unless REPLACE is used (218 ms) [ok]: WAIT should not acknowledge 1 additional copy if slave is blocked (1103 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-lfu) (2118 ms) [ok]: MIGRATE propagates TTL correctly (218 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (403 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (76 ms) [ok]: Timedout script does not cause a false dead client (84 ms) [ok]: Server should lazy expire keys (1002 ms) [ok]: Memory efficiency with values in range 16384 (2437 ms) [ok]: Timedout script link is still usable after Lua returns (140 ms) [32/131 done]: unit/memefficiency (5 seconds) Testing unit/type/list [ok]: XADD mass insertion and XLEN (2467 ms) [ok]: XADD with ID 0-0 (1 ms) [ok]: XADD with LIMIT delete entries no more than limit (0 ms) [ok]: XRANGE COUNT works as expected (0 ms) [ok]: XREVRANGE COUNT works as expected (1 ms) [ok]: packed node check compression with insert and pop (3 ms) [ok]: packed node check compression combined with trim (1 ms) [ok]: packed node check compression with lset (1 ms) [ok]: WAIT implicitly blocks on client pause since ACKs aren't sent (1103 ms) [ok]: WAIT replica multiple clients unblock - reuse last result (13 ms) [ok]: Timedout scripts and unblocked command (478 ms) [ok]: plain node check compression with insert and pop (349 ms) [ok]: XRANGE can be used to iterate the whole stream (494 ms) [ok]: Setup a new replica (103 ms) [ok]: plain node check compression combined with trim (131 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]: Hash fuzzing #1 - 512 fields (1746 ms) [ok]: plain node check compression with lset (173 ms) [ok]: Before the replica connects we issue two EVAL commands (1 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 (0 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 (0 ms) [ok]: EXPIRE with big integer overflows when converted to milliseconds (1 ms) [ok]: PEXPIRE with big integer overflow when basetime is added (0 ms) [ok]: EXPIRE with big negative integer (1 ms) [ok]: PEXPIREAT with big integer works (0 ms) [ok]: PEXPIREAT with big negative integer works (0 ms) [ok]: Test LPUSH and LPOP on plain nodes (3 ms) [ok]: Test LINDEX and LINSERT on plain nodes (2 ms) [ok]: Test LTRIM on plain nodes (1 ms) [ok]: Test LREM on plain nodes (1 ms) [ok]: Test LPOS on plain nodes (1 ms) [ok]: Test LMOVE on plain nodes (2 ms) [ok]: Connect a replica to the master instance (102 ms) [ok]: Replication of script multiple pushes to list with BLPOP (1 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: Test LSET with packed / plain combinations (180 ms) [ok]: Test LSET with packed is split in the middle (2 ms) [ok]: Test LSET with packed consist only one item (175 ms) [ok]: Crash due to delete entry from a compress quicklist node (2 ms) [ok]: Crash due to split quicklist node wrongly (1 ms) [ok]: Test LPUSH and LPOP on plain nodes (3 ms) [ok]: Test LINDEX and LINSERT on plain nodes (1 ms) [ok]: Test LTRIM on plain nodes (1 ms) [ok]: Test LREM on plain nodes (1 ms) [ok]: Test LPOS on plain nodes (1 ms) [ok]: Test LMOVE on plain nodes (1 ms) [ok]: client evicted due to client tracking prefixes (13751 ms) [ok]: client evicted due to output buf (14 ms) [ok]: WAIT in script will work (816 ms) [ok]: Test LSET with packed / plain combinations (178 ms) [ok]: Test LSET with packed is split in the middle (1 ms) [ok]: client no-evict on (104 ms) [ok]: client no-evict off (88 ms) [ok]: Cluster config file latency (4 ms) [ok]: Test LSET with packed consist only one item (179 ms) [ok]: Crash due to delete entry from a compress quicklist node (2 ms) [ok]: Crash due to split quicklist node wrongly (1 ms) [ok]: WAITAOF local copy before fsync (95 ms) [33/132 done]: unit/latency-monitor (19 seconds) Testing unit/type/list-2 [ok]: Hash fuzzing #2 - 512 fields (1156 ms) [ok]: WAITAOF local copy everysec (101 ms) [ok]: WAITAOF local copy with appendfsync always (1 ms) [ok]: WAITAOF local wait and then stop aof (1 ms) [ok]: WAITAOF local on server with aof disabled (1 ms) [ok]: LPOS basic usage - quicklist (44 ms) [ok]: LPOS RANK (positive, negative and zero rank) option (0 ms) [ok]: LPOS COUNT option (1 ms) [ok]: LPOS COUNT + RANK option (0 ms) [ok]: LPOS non existing key (1 ms) [ok]: LPOS no match (0 ms) [ok]: LPOS MAXLEN (1 ms) [ok]: LPOS when RANK is greater than matches (0 ms) [ok]: avoid client eviction when client is freed by output buffer limit (180 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - quicklist (88 ms) [ok]: LPOP/RPOP with wrong number of arguments (0 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 (1 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 (0 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]: maxmemory - is the memory limit honoured? (policy volatile-random) (2690 ms) [ok]: LPOP/RPOP with the count 0 returns an empty array in RESP2 (0 ms) [ok]: LPOP/RPOP against non existing key in RESP2 (1 ms) [ok]: LPOP/RPOP with against non existing key in RESP2 (0 ms) [ok]: Variadic RPUSH/LPUSH (1 ms) [ok]: DEL a list (0 ms) [ok]: BLPOP: single existing list - quicklist (43 ms) [ok]: Connect a replica to the master instance (102 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 (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]: WAITAOF local if AOFRW was postponed (301 ms) [ok]: BLPOP: multiple existing lists - quicklist (87 ms) [ok]: BLPOP: second list has an entry - quicklist (43 ms) [ok]: BLMPOP_LEFT: single existing list - quicklist (43 ms) [ok]: WAITAOF on demoted master gets unblocked with an error (1 ms) [ok]: BLMPOP_LEFT: multiple existing lists - quicklist (86 ms) [ok]: BLMPOP_LEFT: second list has an entry - quicklist (43 ms) [ok]: SDIFF fuzzing (4634 ms) [ok]: SDIFF against non-set should throw error (1 ms) [ok]: SDIFF should handle non existing key as empty (1 ms) [ok]: SDIFFSTORE against non-set should throw error (2 ms) [ok]: SDIFFSTORE should handle non existing key as empty (1 ms) [ok]: SINTER against non-set should throw error (1 ms) [ok]: SINTER should handle non existing key as empty (1 ms) [ok]: SINTER with same integer elements but different encoding (1 ms) [ok]: SINTERSTORE against non-set should throw error (2 ms) [ok]: SINTERSTORE against non existing keys should delete dstkey (1 ms) [ok]: SUNION against non-set should throw error (0 ms) [ok]: SUNION should handle non existing key as empty (1 ms) [ok]: SUNIONSTORE against non-set should throw error (2 ms) [ok]: SUNIONSTORE should handle non existing key as empty (1 ms) [ok]: SUNIONSTORE against non existing keys should delete dstkey (0 ms) [ok]: SPOP basics - listpack (1 ms) [ok]: SPOP with =1 - listpack (1 ms) [ok]: BRPOPLPUSH - quicklist (47 ms) [ok]: SRANDMEMBER - listpack (10 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 (3 ms) [ok]: SPOP with - intset (3 ms) [ok]: SPOP with - hashtable (3 ms) [ok]: SPOP using integers, testing Knuth's and Floyd's algorithm (2 ms) [ok]: SPOP using integers with Knuth's algorithm (1 ms) [ok]: WAITAOF replica copy before fsync (79 ms) [ok]: SPOP new implementation: code path #1 intset (2 ms) [ok]: SPOP new implementation: code path #2 intset (2 ms) [ok]: SPOP new implementation: code path #3 intset (2 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 (3 ms) [ok]: BLMOVE left left - quicklist (47 ms) [ok]: BLMOVE left right - quicklist (43 ms) [ok]: SPOP new implementation: code path #1 propagate as DEL or UNLINK (75 ms) [ok]: SRANDMEMBER count of 0 is handled correctly (0 ms) [ok]: SRANDMEMBER with against non existing key (1 ms) [ok]: SRANDMEMBER count overflow (0 ms) [ok]: SRANDMEMBER count of 0 is handled correctly - emptyarray (0 ms) [ok]: SRANDMEMBER with against non existing key - emptyarray (0 ms) [ok]: BLMOVE right left - quicklist (43 ms) [ok]: SRANDMEMBER with - listpack (28 ms) [ok]: BLMOVE right right - quicklist (44 ms) [ok]: decrease maxmemory-clients causes client eviction (519 ms) [ok]: BLPOP: single existing list - listpack (1 ms) [ok]: BLPOP: multiple existing lists - listpack (2 ms) [ok]: BLPOP: second list has an entry - listpack (1 ms) [ok]: BLMPOP_LEFT: single existing list - listpack (2 ms) [ok]: SRANDMEMBER with - intset (32 ms) [ok]: BLMPOP_LEFT: multiple existing lists - listpack (2 ms) [ok]: BLMPOP_LEFT: second list has an entry - listpack (2 ms) [ok]: BRPOPLPUSH - listpack (1 ms) [ok]: BLMOVE left left - listpack (2 ms) [ok]: BLMOVE left right - listpack (1 ms) [ok]: BLMOVE right left - listpack (2 ms) [ok]: BLMOVE right right - listpack (1 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 (2 ms) [ok]: BLPOP with same key multiple times should work (issue #801) (2 ms) [ok]: MULTI/EXEC is isolated from the point of view of BLPOP (1 ms) [ok]: BLPOP with variadic LPUSH (1 ms) [ok]: MULTI/EXEC is isolated from the point of view of BLMPOP_LEFT (1 ms) [ok]: BLMPOP_LEFT with variadic LPUSH (1 ms) [ok]: BRPOPLPUSH with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE left left with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE left right with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE right left with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE right right with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE (left, left) with a client BLPOPing the target list (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 (0 ms) [ok]: BRPOPLPUSH with wrong destination type (1 ms) [ok]: BRPOPLPUSH maintains order of elements after failure (1 ms) [ok]: SRANDMEMBER with - hashtable (38 ms) [ok]: BRPOPLPUSH with multiple blocked clients (2 ms) [ok]: BLMPOP with multiple blocked clients (3 ms) [ok]: Linked LMOVEs (2 ms) [ok]: Circular BRPOPLPUSH (1 ms) [ok]: Self-referential BRPOPLPUSH (1 ms) [ok]: XREVRANGE returns the reverse of XRANGE (2124 ms) [ok]: BRPOPLPUSH inside a transaction (1 ms) [ok]: XRANGE exclusive ranges (2 ms) [ok]: XREAD with non empty stream (0 ms) [ok]: PUSH resulting from BRPOPLPUSH affect WATCH (1 ms) [ok]: Non blocking XREAD with empty streams (0 ms) [ok]: BRPOPLPUSH does not affect WATCH while still blocked (2 ms) [ok]: Client output buffer soft limit is not enforced too early and is enforced when no traffic (5012 ms) [ok]: SRANDMEMBER histogram distribution - listpack (103 ms) [ok]: SRANDMEMBER histogram distribution - intset (102 ms) [ok]: No response for single command if client output buffer hard limit is enforced (121 ms) [ok]: SRANDMEMBER histogram distribution - hashtable (111 ms) [ok]: SMOVE basics - from regular set to intset (4 ms) [ok]: SMOVE basics - from intset to regular set (1 ms) [ok]: SMOVE non existing key (2 ms) [ok]: SMOVE non existing src set (1 ms) [ok]: SMOVE from regular set to non existing destination set (1 ms) [ok]: SMOVE from intset to non existing destination set (2 ms) [ok]: SMOVE wrong src key type (0 ms) [ok]: SMOVE wrong dst key type (0 ms) [ok]: SMOVE with identical source and destination (0 ms) [ok]: SMOVE only notify dstset when the addition is successful (2 ms) [ok]: test RESP2/2 big number protocol parsing (1 ms) [ok]: test RESP2/2 malformed big number protocol parsing (0 ms) [ok]: test RESP2/2 map protocol parsing (0 ms) [ok]: test RESP2/2 set protocol parsing (1 ms) [ok]: test RESP2/2 double protocol parsing (0 ms) [ok]: test RESP2/2 null protocol parsing (0 ms) [ok]: test RESP2/2 verbatim protocol parsing (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 (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 (1 ms) [ok]: test RESP3/2 double protocol parsing (0 ms) [ok]: test RESP3/2 null protocol parsing (0 ms) [ok]: test RESP3/2 verbatim protocol parsing (0 ms) [ok]: test RESP3/2 true protocol parsing (0 ms) [ok]: test RESP3/2 false protocol parsing (0 ms) [ok]: test RESP3/3 big number protocol parsing (0 ms) [ok]: test RESP3/3 malformed big number protocol parsing (0 ms) [ok]: test RESP3/3 map protocol parsing (1 ms) [ok]: test RESP3/3 set protocol parsing (0 ms) [ok]: test RESP3/3 double protocol parsing (0 ms) [ok]: test RESP3/3 null protocol parsing (0 ms) [ok]: test RESP3/3 verbatim protocol parsing (0 ms) [ok]: test RESP3/3 true protocol parsing (0 ms) [ok]: test RESP3/3 false protocol parsing (0 ms) [ok]: test resp3 attribute protocol parsing (0 ms) [ok]: All time-to-live(TTL) in commands are propagated as absolute timestamp in milliseconds in AOF (2018 ms) [ok]: Script block the time during execution (11 ms) [ok]: Script delete the expired key (3 ms) [ok]: TIME command using cached time (10 ms) [ok]: evict clients only until below limit (250 ms) [ok]: Script block the time in some expiration related commands (82 ms) [ok]: RESTORE expired keys with expiration time (10 ms) [ok]: All TTL in commands are propagated as absolute timestamp in replication stream (57 ms) [ok]: WAITAOF replica copy everysec (716 ms) [ok]: Stress test the hash ziplist -> hashtable encoding conversion (1476 ms) [ok]: First server should have role slave after REPLICAOF (1 ms) [ok]: For all replicated TTL-related commands, absolute expire times are identical on primary and replica (5 ms) [ok]: Script - disallow write on OOM (1 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (0 ms) [ok]: EVAL - Return _G (0 ms) [ok]: EVAL - Return table with a metatable that raise error (1 ms) [ok]: EVAL - Return table with a metatable that call 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? (1 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 (1 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 (1 ms) [ok]: EVAL - Scripts do not block on blmove command (0 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (1 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (0 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (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 (0 ms) [ok]: EVAL - No arguments to redis.call/pcall is considered an error (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (1 ms) [ignore]: EVAL - JSON string encoding a string larger than 2GB: large memory flag not provided [ok]: EVAL - JSON numeric decoding (0 ms) [ok]: EVAL - JSON string decoding (0 ms) [ok]: EVAL - JSON smoke test (1 ms) [ok]: EVAL - cmsgpack can pack double? (0 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [ok]: Hash ziplist of various encodings (96 ms) [ok]: Hash ziplist of various encodings - sanitize dump (4 ms) [ok]: HINCRBYFLOAT does not allow NaN or Infinity (0 ms) [34/132 done]: unit/type/hash (5 seconds) Testing unit/type/zset [ok]: evict clients in right order (large to small) (250 ms) [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 (1 ms) [ok]: ZADD XX existing key - listpack (0 ms) [ok]: ZADD XX returns the number of elements actually added - listpack (0 ms) [ok]: ZADD XX updates existing elements score - listpack (1 ms) [ok]: ZADD GT updates existing elements when new scores are greater - listpack (1 ms) [ok]: ZADD LT updates existing elements when new scores are lower - listpack (0 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 (1 ms) [ok]: ZADD NX with non existing key - listpack (0 ms) [ok]: ZADD NX only add new elements without updating old ones - listpack (1 ms) [ok]: ZADD GT and NX are not compatible - listpack (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 (0 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (169 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (1 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]: ZADD INCR LT/GT with inf - listpack (3 ms) [ok]: EVAL_RO - Cannot run write commands (0 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 (1 ms) [ok]: ZINCRBY calls leading to NaN result in error - listpack (0 ms) [ok]: ZINCRBY against invalid incr value - listpack (1 ms) [ok]: ZADD - Variadic version base case - listpack (0 ms) [ok]: ZADD - Return value is the number of actually added items - listpack (1 ms) [ok]: ZADD - Variadic version does not add nothing on single parsing err - listpack (0 ms) [ok]: ZADD - Variadic version will raise error on missing arg - listpack (1 ms) [ok]: ZINCRBY does not work variadic even if shares ZADD implementation - listpack (0 ms) [ok]: ZCARD basics - listpack (1 ms) [ok]: ZREM removes key after last element is removed - listpack (1 ms) [ok]: ZREM variadic version - listpack (1 ms) [ok]: ZREM variadic version -- remove elements after key deletion - listpack (0 ms) [ok]: ZRANGE basics - listpack (3 ms) [ok]: ZREVRANGE basics - listpack (3 ms) [ok]: SCRIPTING FLUSH - is able to clear the scripts cache? (15 ms) [ok]: ZRANK/ZREVRANK basics - listpack (3 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 (2 ms) [ok]: ZINCRBY return value - listpack (0 ms) [ok]: SCRIPTING FLUSH ASYNC (8 ms) [ok]: SCRIPT EXISTS - can detect already defined scripts? (0 ms) [ok]: SCRIPT LOAD - is able to register scripts in the scripting cache (0 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]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - listpack (7 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - listpack (2 ms) [ok]: ZRANGEBYSCORE with LIMIT - listpack (7 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 (4 ms) [ok]: ZLEXCOUNT advanced - listpack (3 ms) [ok]: expired key which is created in writeable replicas should be deleted by active expiry (293 ms) [ok]: ZRANGEBYLEX with LIMIT - listpack (5 ms) [ok]: ZRANGEBYLEX with invalid lex range specifiers - listpack (1 ms) [ok]: ZREMRANGEBYSCORE basics - listpack (9 ms) [ok]: ZREMRANGEBYSCORE with non-value min or max - listpack (0 ms) [ok]: ZREMRANGEBYRANK basics - listpack (4 ms) [ok]: ZREMRANGEBYLEX basics - listpack (14 ms) [ok]: ZUNIONSTORE against non-existing key doesn't set destination - listpack (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF against non-existing key - listpack (0 ms) [ok]: ZUNIONSTORE with empty set - listpack (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with empty set - listpack (1 ms) [ok]: ZUNIONSTORE basics - listpack (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with integer members - listpack (1 ms) [ok]: ZUNIONSTORE with weights - listpack (0 ms) [ok]: ZUNION with weights - listpack (1 ms) [ok]: ZUNIONSTORE with a regular set and weights - listpack (1 ms) [ok]: ZUNIONSTORE with AGGREGATE MIN - listpack (0 ms) [ok]: ZUNION/ZINTER with AGGREGATE MIN - listpack (1 ms) [ok]: ZUNIONSTORE with AGGREGATE MAX - listpack (0 ms) [ok]: ZUNION/ZINTER with AGGREGATE MAX - listpack (1 ms) [ok]: ZINTERSTORE basics - listpack (0 ms) [ok]: ZINTER basics - listpack (0 ms) [ok]: ZINTERCARD with illegal arguments (0 ms) [ok]: ZINTERCARD basics - listpack (0 ms) [ok]: ZINTER RESP3 - listpack (1 ms) [ok]: ZINTERSTORE with weights - listpack (1 ms) [ok]: ZINTER with weights - listpack (0 ms) [ok]: ZINTERSTORE with a regular set and weights - listpack (1 ms) [ok]: ZINTERSTORE with AGGREGATE MIN - listpack (0 ms) [ok]: ZINTERSTORE with AGGREGATE MAX - listpack (1 ms) [ok]: ZUNIONSTORE with +inf/-inf scores - listpack (1 ms) [ok]: ZUNIONSTORE with NaN weights - listpack (0 ms) [ok]: ZINTERSTORE with +inf/-inf scores - listpack (2 ms) [ok]: ZINTERSTORE with NaN weights - listpack (0 ms) [ok]: ZDIFFSTORE basics - listpack (0 ms) [ok]: ZDIFF basics - listpack (0 ms) [ok]: ZDIFFSTORE with a regular set - listpack (1 ms) [ok]: ZDIFF subtracting set from itself - listpack (0 ms) [ok]: ZDIFF algorithm 1 - listpack (1 ms) [ok]: ZDIFF algorithm 2 - listpack (1 ms) [ok]: BRPOPLPUSH timeout (1021 ms) [ok]: SWAPDB awakes blocked client (1 ms) [ok]: SET command will remove expire (0 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed (0 ms) [ok]: client total memory grows during client no-evict (131 ms) [ok]: SWAPDB wants to wake blocked client, but the key already expired (167 ms) [ok]: No response for multi commands in pipeline if client output buffer limit is enforced (1044 ms) [ok]: client total memory grows during maxmemory-clients disabled (127 ms) [ok]: Execute transactions completely even if client output buffer limit is enforced (15 ms) [ok]: XREAD with non empty second stream (1289 ms) [ok]: Obuf limit, HRANDFIELD with huge count stopped mid-run (24 ms) [ok]: Blocking XREAD waiting new data (2 ms) [ok]: Blocking XREAD waiting old data (0 ms) [35/132 done]: unit/client-eviction (20 seconds) Testing unit/type/incr [ok]: Blocking XREAD will not reply with an empty array (41 ms) [ok]: Obuf limit, KEYS stopped mid-run (60 ms) [ok]: GEOSEARCH fuzzy test - byradius (19926 ms) [ok]: INCR against non existing key (0 ms) [ok]: INCR against key created by incr itself (0 ms) [ok]: DECR against key created by incr (0 ms) [ok]: DECR against key is not exist and incr (1 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) (1 ms) [ok]: INCR fails against key with spaces (right) (0 ms) [ok]: INCR fails against key with spaces (both) (0 ms) [ok]: DECRBY negation overflow (0 ms) [ok]: INCR fails against a key holding a list (1 ms) [ok]: DECRBY over 32bit value with over 32bit increment, negative res (0 ms) [ok]: DECRBY against key is not exist (0 ms) [ok]: INCR can modify objects in-place (1 ms) [ok]: INCRBYFLOAT against non existing key (0 ms) [ok]: INCRBYFLOAT against key originally set with SET (0 ms) [ok]: INCRBYFLOAT over 32bit value (0 ms) [ok]: INCRBYFLOAT over 32bit value with over 32bit increment (0 ms) [ok]: INCRBYFLOAT fails against key with spaces (left) (0 ms) [ok]: INCRBYFLOAT fails against key with spaces (right) (0 ms) [ok]: INCRBYFLOAT fails against key with spaces (both) (0 ms) [ok]: INCRBYFLOAT fails against a key holding a list (0 ms) [ok]: INCRBYFLOAT does not allow NaN or Infinity (0 ms) [ok]: INCRBYFLOAT decrement (1 ms) [ok]: string to double with null terminator (0 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 (1 ms) [ok]: decr operation should update encoding from raw to int (1 ms) [ok]: incrby operation should update encoding from raw to int (1 ms) [ok]: decrby operation should update encoding from raw to int (0 ms) [ok]: Blocking XREAD for stream that ran dry (issue #5299) (101 ms) [ok]: XREAD last element from non-empty stream (0 ms) [ok]: XREAD last element from empty stream (1 ms) [ok]: XREAD last element blocking from empty stream (1 ms) [ok]: XREAD last element blocking from non-empty stream (0 ms) [ok]: XREAD last element from multiple streams (1 ms) [ok]: XREAD last element with count > 1 (1 ms) [ok]: XREAD: XADD + DEL should not awake client (2 ms) [ok]: XREAD: XADD + DEL + LPUSH should not awake client (2 ms) [ok]: XREAD with same stream name multiple times should work (1 ms) [ok]: XREAD + multiple XADD inside transaction (2 ms) [ok]: XDEL basic test (0 ms) [ok]: XDEL multiply id test (1 ms) [36/132 done]: unit/obuf-limits (18 seconds) Testing unit/type/list-3 [ok]: MULTI + LPUSH + EXPIRE + DEBUG SLEEP on blocked client, key already expired (300 ms) [37/132 done]: unit/type/incr (0 seconds) Testing unit/type/string [ok]: WAITAOF replica copy everysec with AOFRW (1004 ms) [ok]: Explicit regression for a list bug (0 ms) [ok]: SET and GET an item (0 ms) [ok]: SET and GET an empty item (1 ms) [ok]: Regression for quicklist #3343 bug (129 ms) [ok]: Very big payload in GET/SET (75 ms) [ok]: Check compression with recompress (87 ms) [ok]: Measures elapsed time os.clock() (1002 ms) [ok]: Prohibit dangerous lua methods in sandbox (0 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (1 ms) [ok]: Globals protection reading an undeclared global variable (1 ms) [ok]: Globals protection setting an undeclared global* (0 ms) [ok]: lua bit.tohex bug (0 ms) [ok]: Test an example script DECR_IF_GT (1 ms) [ok]: random numbers are random now (0 ms) [ok]: Scripting engine PRNG can be seeded correctly (1 ms) [ok]: Crash due to wrongly recompress after lrem (217 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element before it (43 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element after it (44 ms) [ok]: {standalone} SCAN regression test for issue #4906 (8239 ms) [ok]: {standalone} SCAN MATCH pattern implies cluster slot (31 ms) [ok]: intsets implementation stress testing (2016 ms) [38/133 done]: unit/type/set (8 seconds) Testing unit/type/stream-cgroups [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 (1 ms) [ok]: BLMPOP_LEFT when result key is created by SORT..STORE (1 ms) [ok]: BLPOP: timeout value out of range (0 ms) [ok]: BLPOP: with single empty list argument (1 ms) [ok]: BLPOP: with negative timeout (0 ms) [ok]: BLPOP: with non-integer timeout (0 ms) [ok]: BLPOP: with zero timeout should block indefinitely (1 ms) [ok]: XGROUP CREATE: creation and duplicate group name detection (0 ms) [ok]: XGROUP CREATE: with ENTRIESREAD parameter (1 ms) [ok]: XGROUP CREATE: automatic stream creation fails without MKSTREAM (1 ms) [ok]: XGROUP CREATE: automatic stream creation works with MKSTREAM (0 ms) [ok]: XREADGROUP will return only new elements (0 ms) [ok]: XREADGROUP can read the history of the elements we own (1 ms) [ok]: XPENDING is able to return pending items (1 ms) [ok]: XPENDING can return single consumer items (0 ms) [ok]: XPENDING only group (0 ms) [ok]: BLPOP: with 0.001 timeout should not block indefinitely (22 ms) [ok]: BLPOP: second argument is not a list (0 ms) [ok]: XPENDING with IDLE (21 ms) [ok]: XPENDING with exclusive range intervals works as expected (1 ms) [ok]: XACK is able to remove items from the consumer/group PEL (1 ms) [ok]: XACK can't remove the same item multiple times (1 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 (2 ms) [ok]: XREADGROUP will not report data on empty history. Bug #5577 (2 ms) [ok]: XREADGROUP history reporting of deleted entries. Bug #5570 (1 ms) [ok]: Blocking XREADGROUP will not reply with an empty array (33 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 (2 ms) [ok]: Blocking XREADGROUP: swapped DB, key doesn't exist (2 ms) [ok]: Blocking XREADGROUP: swapped DB, key is not a stream (2 ms) [ok]: XREAD and XREADGROUP against wrong parameter (1 ms) [ok]: Blocking XREAD: key deleted (1 ms) [ok]: Blocking XREAD: key type changed with SET (2 ms) [ok]: Blocking XREADGROUP for stream that ran dry (issue #5299) (12 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 (2 ms) [ok]: EVAL does not leak in the Lua stack (712 ms) [ok]: SPOP: We can call scripts rewriting client->argv from Lua (86 ms) [ok]: MGET: mget shouldn't be propagated in Lua (100 ms) [ok]: EXPIRE: We can call scripts rewriting client->argv from Lua (101 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-ttl) (3540 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed after loadaof (2003 ms) [ok]: GETEX use of PERSIST option should remove TTL (0 ms) [ok]: GETEX use of PERSIST option should remove TTL after loadaof (1 ms) [ok]: GETEX propagate as to replica as PERSIST, UNLINK, or nothing (75 ms) [ok]: EXPIRE with NX option on a key with ttl (1 ms) [ok]: EXPIRE with NX option on a key without ttl (0 ms) [ok]: EXPIRE with XX option on a key with ttl (1 ms) [ok]: EXPIRE with XX option on a key without ttl (0 ms) [ok]: EXPIRE with GT option on a key with lower ttl (0 ms) [ok]: EXPIRE with GT option on a key with higher ttl (1 ms) [ok]: EXPIRE with GT option on a key without ttl (0 ms) [ok]: EXPIRE with LT option on a key with higher ttl (1 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 (0 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 (0 ms) [ok]: Server should not propagate the read command on lazy expire (93 ms) [ok]: INCRBYFLOAT: We can call scripts expanding client->argv from Lua (325 ms) [ok]: Call Redis command with many args from Lua (issue #1764) (2 ms) [ok]: Number conversion precision test (issue #1118) (0 ms) [ok]: String containing number precision test (regression of issue #1118) (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 (0 ms) [ok]: CLUSTER RESET can not be invoke from within a script (1 ms) [ok]: Script with RESP3 map (1 ms) [ok]: SCAN: Lazy-expire should not be wrapped in MULTI/EXEC (100 ms) [ok]: Script return recursive object (153 ms) [ok]: RANDOMKEY: Lazy-expire should not be wrapped in MULTI/EXEC (100 ms) [ok]: import-source can be closed when import-mode is off (1 ms) [ok]: Script check unpack with massive arguments (46 ms) [ok]: Script read key with expiration set (0 ms) [ok]: Script del key with expiration set (0 ms) [ok]: Script ACL check (1 ms) [ok]: Binary code loading failed (0 ms) [ok]: Try trick global protection 1 (1 ms) [ok]: Try trick global protection 2 (0 ms) [ok]: Try trick global protection 3 (0 ms) [ok]: Try trick global protection 4 (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 (1 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (0 ms) [ok]: Test dofile are not available (0 ms) [ok]: Test print are not available (0 ms) [ok]: Import mode should forbid active expiration (111 ms) [ok]: WAITAOF replica copy everysec with slow AOFRW (2014 ms) [ok]: Import mode should forbid lazy expiration (12 ms) [ok]: BLPOP: timeout (1070 ms) [ok]: BLPOP: arguments are empty (2 ms) [ok]: BRPOP: with single empty list argument (1 ms) [ok]: BRPOP: with negative timeout (1 ms) [ok]: BRPOP: with non-integer timeout (1 ms) [ok]: BRPOP: with zero timeout should block indefinitely (1 ms) [ok]: BRPOP: with 0.001 timeout should not block indefinitely (21 ms) [ok]: BRPOP: second argument is not a list (1 ms) [ok]: WAITAOF replica copy everysec->always with AOFRW (103 ms) [ok]: WAITAOF replica copy appendfsync always (1 ms) [ok]: Client can visit expired key in import-source state (112 ms) [ok]: XDEL fuzz test (2255 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - reprocessing command (1093 ms) [ok]: XGROUP DESTROY should unblock XREADGROUP with -NOGROUP (3 ms) [ok]: RENAME can unblock XREADGROUP with data (2 ms) [ok]: RENAME can unblock XREADGROUP with -NOGROUP (1 ms) [ok]: Very big payload random access (2250 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (404 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (63 ms) [ok]: Timedout script does not cause a false dead client (90 ms) [ok]: {cluster} SCAN basic (84 ms) [ok]: XCLAIM can claim PEL items from another consumer (605 ms) [ok]: Timedout script link is still usable after Lua returns (147 ms) [ok]: {cluster} SCAN COUNT (78 ms) [ok]: {cluster} SCAN MATCH (59 ms) [ok]: WAITAOF replica copy if replica is blocked (900 ms) [ok]: {cluster} SCAN TYPE (90 ms) [ok]: {cluster} SCAN unknown type (53 ms) [ok]: {cluster} SCAN with expired keys (69 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]: XCLAIM without JUSTID increments delivery count (402 ms) [ok]: BLMPOP_LEFT: with 0.001 timeout should not block indefinitely (22 ms) [ok]: BLMPOP_LEFT: second argument is not a list (0 ms) [ok]: {cluster} SCAN with expired keys with TYPE filter (77 ms) [ok]: {cluster} SSCAN with encoding intset (3 ms) [ok]: {cluster} SSCAN with encoding listpack (2 ms) [ok]: {cluster} SSCAN with encoding hashtable (6 ms) [ok]: {cluster} HSCAN with encoding listpack (2 ms) [ok]: Timedout scripts and unblocked command (426 ms) [ok]: {cluster} HSCAN with encoding hashtable (90 ms) [ok]: {cluster} ZSCAN with encoding listpack (2 ms) [ok]: XCLAIM same consumer (202 ms) [ok]: {cluster} ZSCAN with encoding skiplist (81 ms) [ok]: {cluster} SCAN guarantees check under write load (26 ms) [ok]: {cluster} SSCAN with integer encoded object (issue #1345) (1 ms) [ok]: {cluster} SSCAN with PATTERN (0 ms) [ok]: {cluster} HSCAN with PATTERN (1 ms) [ok]: {cluster} HSCAN with NOVALUES (0 ms) [ok]: {cluster} ZSCAN with PATTERN (1 ms) [ok]: {cluster} ZSCAN with NOSCORES (0 ms) [ok]: Timedout scripts that modified data can't be killed by SCRIPT KILL (202 ms) [ok]: SHUTDOWN NOSAVE can kill a timedout script anyway (2 ms) [ok]: {cluster} ZSCAN scores: regression test for issue #2175 (118 ms) [ok]: Before the replica connects we issue two EVAL commands (0 ms) [ok]: MIGRATE can correctly transfer large values (8522 ms) [ok]: Connect a replica to the master instance (102 ms) [ok]: Now use EVALSHA against the master, with both SHAs (1 ms) [ok]: 'x' should be '4' for EVALSHA being replicated by effects (0 ms) [ok]: Replication of script multiple pushes to list with BLPOP (1 ms) [ok]: EVALSHA replication when first call is readonly (0 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: MIGRATE can correctly transfer hashes (218 ms) [ok]: XAUTOCLAIM can claim PEL items from another consumer (604 ms) [ok]: WAITAOF replica multiple clients unblock - reuse last result (1003 ms) [ok]: WAITAOF on promoted replica (1 ms) [ok]: SET 10000 numeric keys and access all them in reverse order (1589 ms) [ok]: DBSIZE should be 10000 now (0 ms) [ok]: SETNX target key missing (1 ms) [ok]: SETNX target key exists (0 ms) [ok]: SETNX against not-expired volatile key (0 ms) [ok]: XAUTOCLAIM as an iterator (202 ms) [ok]: XAUTOCLAIM COUNT must be > 0 (0 ms) [ok]: XCLAIM with XDEL (1 ms) [ok]: XCLAIM with trimming (2 ms) [ok]: XAUTOCLAIM with XDEL (1 ms) [ok]: XAUTOCLAIM with XDEL and count (2 ms) [ok]: XAUTOCLAIM with out of range count (0 ms) [ok]: XCLAIM with trimming (2 ms) [ok]: XINFO FULL output (5 ms) [ok]: ZDIFF fuzzing - listpack (4765 ms) [ok]: ZPOPMIN with the count 0 returns an empty array (0 ms) [ok]: ZPOPMIN with negative count (0 ms) [ok]: ZPOPMAX with the count 0 returns an empty array (0 ms) [ok]: ZPOPMAX with negative count (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX with a single key - listpack (2 ms) [ok]: ZPOPMIN/ZPOPMAX with count - listpack (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - listpack (2 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - listpack (1 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - listpack (2 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - listpack (2 ms) [ok]: BZPOPMIN/BZPOPMAX second sorted set has members - listpack (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 (2 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX second sorted set has members - listpack (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX - listpack RESP3 (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - listpack RESP3 (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX - listpack RESP3 (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - listpack RESP3 (1 ms) [ok]: BZPOPMIN/BZPOPMAX - listpack RESP3 (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX - listpack RESP3 (2 ms) [ok]: Check encoding - skiplist (1 ms) [ok]: ZSET basic ZADD and score update - skiplist (0 ms) [ok]: ZSET element can't be set to NaN with ZADD - skiplist (1 ms) [ok]: ZSET element can't be set to NaN with ZINCRBY - skiplist (0 ms) [ok]: ZADD with options syntax error with incomplete pair - skiplist (0 ms) [ok]: ZADD XX option without key - skiplist (1 ms) [ok]: ZADD XX existing key - skiplist (0 ms) [ok]: ZADD XX returns the number of elements actually added - skiplist (0 ms) [ok]: ZADD XX updates existing elements score - skiplist (1 ms) [ok]: ZADD GT updates existing elements when new scores are greater - skiplist (1 ms) [ok]: ZADD LT updates existing elements when new scores are lower - skiplist (1 ms) [ok]: ZADD GT XX updates existing elements when new scores are greater and skips new elements - skiplist (0 ms) [ok]: ZADD LT XX updates existing elements when new scores are lower and skips new elements - skiplist (1 ms) [ok]: ZADD XX and NX are not compatible - skiplist (0 ms) [ok]: ZADD NX with non existing key - skiplist (1 ms) [ok]: ZADD NX only add new elements without updating old ones - skiplist (0 ms) [ok]: ZADD GT and NX are not compatible - skiplist (1 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 (2 ms) [ok]: ZADD INCR works like ZINCRBY - skiplist (0 ms) [ok]: ZADD INCR works with a single score-element pair - skiplist (1 ms) [ok]: ZADD CH option changes return value to all changed elements - skiplist (0 ms) [ok]: ZINCRBY calls leading to NaN result in error - skiplist (0 ms) [ok]: ZINCRBY against invalid incr value - skiplist (1 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 (0 ms) [ok]: ZINCRBY does not work variadic even if shares ZADD implementation - skiplist (0 ms) [ok]: ZCARD basics - skiplist (1 ms) [ok]: ZREM removes key after last element is removed - skiplist (1 ms) [ok]: ZREM variadic version - skiplist (0 ms) [ok]: ZREM variadic version -- remove elements after key deletion - skiplist (1 ms) [ok]: ZRANGE basics - skiplist (2 ms) [ok]: ZREVRANGE basics - skiplist (2 ms) [ok]: ZRANK/ZREVRANK basics - skiplist (2 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]: BLMPOP_LEFT: timeout (1075 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 (0 ms) [ok]: BLMPOP_RIGHT: with non-integer timeout (0 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - skiplist (5 ms) [ok]: BLMPOP_RIGHT: with zero timeout should block indefinitely (1 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - skiplist (1 ms) [ok]: ZRANGEBYSCORE with LIMIT - skiplist (7 ms) [ok]: ZRANGEBYSCORE with LIMIT and WITHSCORES - skiplist (2 ms) [ok]: ZRANGEBYSCORE with non-value min or max - skiplist (0 ms) [ok]: ZRANGEBYLEX/ZREVRANGEBYLEX/ZLEXCOUNT basics - skiplist (4 ms) [ok]: ZLEXCOUNT advanced - skiplist (2 ms) [ok]: BLMPOP_RIGHT: with 0.001 timeout should not block indefinitely (22 ms) [ok]: ZRANGEBYLEX with LIMIT - skiplist (6 ms) [ok]: BLMPOP_RIGHT: second argument is not a list (1 ms) [ok]: ZRANGEBYLEX with invalid lex range specifiers - skiplist (1 ms) [ok]: ZREMRANGEBYSCORE basics - skiplist (8 ms) [ok]: ZREMRANGEBYSCORE with non-value min or max - skiplist (0 ms) [ok]: ZREMRANGEBYRANK basics - skiplist (4 ms) [ok]: ZREMRANGEBYLEX basics - skiplist (10 ms) [ok]: ZUNIONSTORE against non-existing key doesn't set destination - skiplist (1 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 (1 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 (1 ms) [ok]: ZINTERSTORE basics - skiplist (0 ms) [ok]: ZINTER basics - skiplist (0 ms) [ok]: ZINTERCARD with illegal arguments (1 ms) [ok]: ZINTERCARD basics - skiplist (0 ms) [ok]: ZINTER RESP3 - skiplist (1 ms) [ok]: ZINTERSTORE with weights - skiplist (0 ms) [ok]: ZINTER with weights - skiplist (0 ms) [ok]: ZINTERSTORE with a regular set and weights - skiplist (1 ms) [ok]: ZINTERSTORE with AGGREGATE MIN - skiplist (0 ms) [ok]: ZINTERSTORE with AGGREGATE MAX - skiplist (1 ms) [ok]: ZUNIONSTORE with +inf/-inf scores - skiplist (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 (0 ms) [ok]: ZDIFFSTORE basics - skiplist (0 ms) [ok]: ZDIFF basics - skiplist (0 ms) [ok]: ZDIFFSTORE with a regular set - skiplist (1 ms) [ok]: ZDIFF subtracting set from itself - skiplist (0 ms) [ok]: ZDIFF algorithm 1 - skiplist (1 ms) [ok]: ZDIFF algorithm 2 - skiplist (1 ms) [ok]: Consumer seen-time and active-time (204 ms) [ok]: XGROUP CREATECONSUMER: create consumer if does not exist (1 ms) [ok]: XGROUP CREATECONSUMER: group must exist (1 ms) [ok]: XREADGROUP with NOACK creates consumer (4 ms) [ok]: Consumer without PEL is present in AOF after AOFRW (107 ms) [ok]: MIGRATE timeout actually works (732 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 (7 ms) [ok]: Consumer group lag with XTRIM (8 ms) [ok]: Consumer group lag with XADD trimming (8 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 can migrate multiple keys at once (217 ms) [ok]: MIGRATE with multiple keys must have empty key arg (0 ms) [ok]: Connect a replica to the master instance (102 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]: Consumer group last ID propagation to slave (NOACK=0) (105 ms) [ok]: AOF rewrite during write load: RDB preamble=yes (20684 ms) [ok]: Consumer group last ID propagation to slave (NOACK=1) (103 ms) [ok]: MIGRATE with multiple keys migrate just existing ones (216 ms) [ok]: expire scan should skip dictionaries with lot's of empty buckets (907 ms) [39/133 done]: unit/expire (16 seconds) Testing unit/cluster/sharded-pubsub [ok]: MIGRATE with multiple keys: stress command rewriting (217 ms) [ok]: BLMPOP_RIGHT: timeout (1074 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]: Replication tests of XCLAIM with deleted entries (autoclaim=0) (105 ms) [ok]: Replication tests of XCLAIM with deleted entries (autoclaim=1) (4 ms) [ok]: XREADGROUP ACK would propagate entries-read (3 ms) [ok]: MIGRATE with multiple keys: delete just ack keys (217 ms) [ok]: BLMPOP propagate as pop with count command to replica (198 ms) [ok]: LPUSHX, RPUSHX - generic (1 ms) [ok]: LPUSHX, RPUSHX - quicklist (41 ms) [ok]: LINSERT - quicklist (45 ms) [ok]: LPUSHX, RPUSHX - listpack (1 ms) [ok]: LINSERT - listpack (1 ms) [ok]: LINSERT raise error on bad syntax (0 ms) [ok]: LINSERT against non-list value error (0 ms) [ok]: LINSERT against non existing key (0 ms) [ok]: LINDEX consistency test - listpack (53 ms) [ok]: Empty stream with no lastid can be rewrite into AOF correctly (104 ms) [ok]: LINDEX random access - listpack (42 ms) [ok]: MIGRATE AUTH: correct and wrong password cases (216 ms) [40/133 done]: unit/dump (27 seconds) Testing unit/cluster/failover2 [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (110 ms) [41/133 done]: unit/type/stream-cgroups (5 seconds) Testing unit/cluster/cluster-response-tls [42/133 done]: unit/cluster/cluster-response-tls (0 seconds) Testing unit/cluster/manual-takeover [ok]: LINDEX consistency test - listpack (123 ms) [ok]: WAITAOF master that loses a replica and backlog is dropped (2003 ms) [ok]: Test scripting debug protocol parsing (1 ms) [ok]: Test scripting debug lua stack overflow (1 ms) [ok]: Test scripting debug lua server invocations (1 ms) [ok]: LINDEX random access - listpack (83 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-random) (4832 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (167 ms) [ok]: LINDEX consistency test - quicklist (74 ms) [ok]: Lua scripts eviction does not generate many scripts (85 ms) [ok]: LINDEX random access - quicklist (45 ms) [ok]: Lua scripts eviction is plain LRU (48 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (111 ms) [ok]: Lua scripts eviction does not affect script load (114 ms) [ok]: Lua scripts promoted from eval to script load (92 ms) [ok]: LINDEX consistency test - quicklist (161 ms) [ok]: LINDEX random access - quicklist (102 ms) [ok]: LTRIM stress testing - quicklist (9062 ms) [ok]: test RESP2/2 big number protocol parsing (0 ms) [ok]: test RESP2/2 malformed big number protocol parsing (0 ms) [ok]: test RESP2/2 map protocol parsing (1 ms) [ok]: test RESP2/2 set protocol parsing (0 ms) [ok]: test RESP2/2 double protocol parsing (0 ms) [ok]: test RESP2/2 null protocol parsing (0 ms) [ok]: test RESP2/2 verbatim protocol parsing (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 (0 ms) [ok]: test RESP2/3 null protocol parsing (1 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 (1 ms) [ok]: test RESP3/3 map protocol parsing (0 ms) [ok]: test RESP3/3 set protocol parsing (0 ms) [ok]: test RESP3/3 double protocol parsing (0 ms) [ok]: test RESP3/3 null protocol parsing (1 ms) [ok]: test RESP3/3 verbatim protocol parsing (0 ms) [ok]: test RESP3/3 true protocol parsing (0 ms) [ok]: test RESP3/3 false protocol parsing (0 ms) [ok]: test resp3 attribute protocol parsing (1 ms) [ok]: Script block the time during execution (10 ms) [ok]: Script delete the expired key (3 ms) [ok]: TIME command using cached time (10 ms) [ok]: Script block the time in some expiration related commands (82 ms) [ok]: RESTORE expired keys with expiration time (11 ms) [ok]: SETNX against expired volatile key (2915 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (220 ms) [ok]: GETEX EX option (1 ms) [ok]: GETEX PX option (0 ms) [ok]: LLEN against non-list value error (0 ms) [ok]: LLEN against non existing key (0 ms) [ok]: GETEX EXAT option (1 ms) [ok]: LINDEX against non-list value error (0 ms) [ok]: LINDEX against non existing key (0 ms) [ok]: GETEX PXAT option (0 ms) [ok]: LPUSH against non-list value error (0 ms) [ok]: GETEX PERSIST option (1 ms) [ok]: RPUSH against non-list value error (1 ms) [ok]: GETEX no option (0 ms) [ok]: GETEX syntax errors (0 ms) [ok]: GETEX and GET expired key or not exist (3 ms) [ok]: GETEX no arguments (0 ms) [ok]: GETDEL command (0 ms) [ok]: RPOPLPUSH base case - quicklist (47 ms) [ok]: WAITAOF master without backlog, wait is released when the replica finishes full-sync (1004 ms) [ok]: GETDEL propagate as DEL command to replica (55 ms) [ok]: LMOVE left left base case - quicklist (46 ms) [ok]: LMOVE left right base case - quicklist (43 ms) [ok]: GETEX without argument does not propagate to replica (100 ms) [ok]: MGET (0 ms) [ok]: MGET against non existing key (0 ms) [ok]: MGET against non-string key (1 ms) [ok]: GETSET (set new value) (0 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 (1 ms) [ok]: MSETNX with already existing keys - same key twice (0 ms) [ok]: STRLEN against non-existing key (0 ms) [ok]: STRLEN against integer-encoded value (0 ms) [ok]: STRLEN against plain string (1 ms) [ok]: SETBIT against non-existing key (0 ms) [ok]: SETBIT against string-encoded key (1 ms) [ok]: SETBIT against integer-encoded key (0 ms) [ok]: SETBIT against key with wrong type (1 ms) [ok]: SETBIT with out of range bit offset (0 ms) [ok]: SETBIT with non-bit argument (1 ms) [ok]: Shebang support for lua engine (0 ms) [ok]: Unknown shebang option (1 ms) [ok]: Unknown shebang flag (0 ms) [ok]: LMOVE right left base case - quicklist (43 ms) [ok]: allow-oom shebang flag (2 ms) [ok]: no-writes shebang flag (0 ms) [ok]: LMOVE right right base case - quicklist (46 ms) [ok]: RPOPLPUSH with the same list as src and dst - quicklist (43 ms) [ok]: LMOVE left left with the same list as src and dst - quicklist (43 ms) [ok]: LMOVE left right with the same list as src and dst - quicklist (43 ms) [ok]: LMOVE right left with the same list as src and dst - quicklist (44 ms) [ok]: no-writes shebang flag on replica (104 ms) [ok]: LMOVE right right with the same list as src and dst - quicklist (43 ms) [ok]: not enough good replicas (2 ms) [ok]: RPOPLPUSH with quicklist source and existing target quicklist (86 ms) [ok]: LMOVE left left with quicklist source and existing target quicklist (90 ms) [ok]: SETBIT fuzzing (506 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 (2 ms) [ok]: SETRANGE against key with wrong type (1 ms) [ok]: SETRANGE with out of range offset (0 ms) [ok]: GETRANGE against non-existing key (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]: LMOVE left right with quicklist source and existing target quicklist (86 ms) [ok]: LMOVE right left with quicklist source and existing target quicklist (87 ms) [ok]: LMOVE right right with quicklist source and existing target quicklist (87 ms) [ok]: RPOPLPUSH with quicklist source and existing target listpack (47 ms) [ok]: LMOVE left left with quicklist source and existing target listpack (42 ms) [ok]: LMOVE left right with quicklist source and existing target listpack (46 ms) [ok]: WAITAOF master isn't configured to do AOF (1002 ms) [ok]: LMOVE right left with quicklist source and existing target listpack (47 ms) [ok]: LMOVE right right with quicklist source and existing target listpack (47 ms) [ok]: RPOPLPUSH base case - listpack (1 ms) [ok]: LMOVE left left base case - listpack (1 ms) [ok]: LMOVE left right base case - listpack (1 ms) [ok]: LMOVE right left base case - listpack (1 ms) [ok]: LMOVE right right base case - listpack (1 ms) [ok]: RPOPLPUSH with the same list as src and dst - listpack (1 ms) [ok]: LMOVE left left with the same list as src and dst - listpack (1 ms) [ok]: LMOVE left right with the same list as src and dst - listpack (1 ms) [ok]: LMOVE right left with the same list as src and dst - listpack (0 ms) [ok]: LMOVE right right with the same list as src and dst - listpack (0 ms) [ok]: WAITAOF replica isn't configured to do AOF (103 ms) [ok]: RPOPLPUSH with listpack source and existing target quicklist (44 ms) [ok]: LMOVE left left with listpack source and existing target quicklist (43 ms) [ok]: LMOVE left right with listpack source and existing target quicklist (43 ms) [ok]: LMOVE right left with listpack source and existing target quicklist (43 ms) [ok]: not enough good replicas state change during long script (825 ms) [ok]: allow-stale shebang flag (2 ms) [ok]: reject script do not cause a Lua stack leak (6 ms) [ok]: LMOVE right right with listpack source and existing target quicklist (44 ms) [ok]: RPOPLPUSH with listpack source and existing target listpack (1 ms) [ok]: LMOVE left left with listpack source and existing target listpack (2 ms) [ok]: LMOVE left right with listpack source and existing target listpack (1 ms) [ok]: LMOVE right left with listpack source and existing target listpack (1 ms) [ok]: LMOVE right right with listpack source and existing target listpack (1 ms) [ok]: RPOPLPUSH against non existing key (1 ms) [ok]: RPOPLPUSH against non list src key (0 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]: Basic LPOP/RPOP/LMPOP - quicklist (86 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 (2 ms) [ok]: Mass RPOP/LPOP - listpack (46 ms) [ok]: Consistent eval error reporting (11 ms) [ok]: LUA redis.error_reply API (0 ms) [ok]: LUA redis.error_reply API with empty string (1 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 (1 ms) [ok]: LUA test trim string as expected (0 ms) [ok]: EVAL - Scripts support NULL byte (0 ms) [ok]: Mass RPOP/LPOP - listpack (81 ms) [ok]: LMPOP with illegal argument (3 ms) [43/133 done]: unit/scripting (29 seconds) Testing unit/cluster/replica-in-sync [ok]: LMPOP single existing list - quicklist (132 ms) [ok]: GETRANGE fuzzing (1171 ms) [ok]: Coverage: SUBSTR (0 ms) [ok]: Extended SET can detect syntax errors (0 ms) [ok]: Extended SET NX option (1 ms) [ok]: Extended SET XX option (0 ms) [ok]: Extended SET GET option (1 ms) [ok]: Extended SET GET option with no previous value (0 ms) [ok]: Extended SET GET option with XX (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 (1 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 (1 ms) [ok]: SET with IFEQ conditional - non string current value with get (0 ms) [ok]: SET with IFEQ conditional - with xx (0 ms) [ok]: SET with IFEQ conditional - with nx (0 ms) [ok]: Extended SET EX option (1 ms) [ok]: Extended SET PX option (0 ms) [ok]: Extended SET EXAT option (0 ms) [ok]: Extended SET PXAT option (1 ms) [ok]: LMPOP multiple existing lists - quicklist (173 ms) [ok]: LMPOP single existing list - listpack (3 ms) [ok]: LMPOP multiple existing lists - listpack (4 ms) [ok]: LMPOP propagate as pop with count command to replica (8 ms) [ok]: SET EXAT / PXAT Expiration time is expired (102 ms) [ok]: Extended SET using multiple options at once (1 ms) [ok]: GETRANGE with huge ranges, Github issue #1844 (0 ms) [ok]: LCS basic (1 ms) [ok]: LCS len (0 ms) [ok]: LCS indexes (0 ms) [ok]: LRANGE basics - quicklist (42 ms) [ok]: LCS indexes with match len (1 ms) [ok]: LCS indexes with match len and minimum match len (1 ms) [ok]: SETRANGE with huge offset (0 ms) [ok]: APPEND modifies the encoding from int to raw (1 ms) [ok]: LRANGE inverted indexes - quicklist (43 ms) [ok]: LRANGE out of range indexes including the full list - quicklist (43 ms) [ok]: WAITAOF both local and replica got AOF enabled at runtime (902 ms) [44/133 done]: unit/type/string (9 seconds) Testing unit/cluster/replica-migration [ok]: LRANGE out of range negative end index - quicklist (43 ms) [ok]: LRANGE basics - listpack (2 ms) [ok]: LRANGE inverted indexes - listpack (1 ms) [ok]: LRANGE out of range indexes including the full list - listpack (0 ms) [ok]: LRANGE out of range negative end index - listpack (1 ms) [ok]: LRANGE against non existing key (0 ms) [ok]: LRANGE with start > end yields an empty array for backward compatibility (1 ms) [ok]: ZDIFF fuzzing - skiplist (4760 ms) [ok]: ZPOPMIN with the count 0 returns an empty array (0 ms) [ok]: ZPOPMIN with negative count (1 ms) [ok]: ZPOPMAX with the count 0 returns an empty array (0 ms) [ok]: ZPOPMAX with negative count (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX with a single key - skiplist (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - skiplist (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - skiplist (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist (1 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - skiplist (1 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - skiplist (2 ms) [ok]: BZPOPMIN/BZPOPMAX second sorted set has members - skiplist (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with a single existing sorted set - skiplist (2 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with multiple existing sorted sets - skiplist (2 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 (2 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX - skiplist RESP3 (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist RESP3 (2 ms) [ok]: BZPOPMIN/BZPOPMAX - skiplist RESP3 (2 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX - skiplist RESP3 (3 ms) [ok]: ZPOP/ZMPOP against wrong type (2 ms) [ok]: ZMPOP with illegal argument (2 ms) [ok]: ZMPOP propagate as pop with count command to replica (14 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP3 (1 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP3 (191 ms) [ok]: ZMPOP readraw in RESP3 (2 ms) [ok]: BZMPOP readraw in RESP3 (199 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP2 (2 ms) [ok]: LTRIM basics - quicklist (522 ms) [ok]: LTRIM out of range negative end index - quicklist (86 ms) [ok]: LSET - quicklist (47 ms) [ok]: LSET out of range index - quicklist (1 ms) [ok]: LTRIM basics - listpack (7 ms) [ok]: LTRIM out of range negative end index - listpack (2 ms) [ok]: LSET - listpack (0 ms) [ok]: LSET out of range index - listpack (0 ms) [ok]: LSET against non existing key (0 ms) [ok]: LSET against non list value (0 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP2 (198 ms) [ok]: ZMPOP readraw in RESP2 (2 ms) [ok]: LREM remove all the occurrences - quicklist (43 ms) [ok]: LREM remove the first occurrence - quicklist (0 ms) [ok]: LREM remove non existing element - quicklist (1 ms) [ok]: LREM starting from tail with negative count - quicklist (42 ms) [ok]: LREM starting from tail with negative count (2) - quicklist (0 ms) [ok]: LREM deleting objects that may be int encoded - quicklist (42 ms) [ok]: LREM remove all the occurrences - listpack (1 ms) [ok]: LREM remove the first occurrence - listpack (1 ms) [ok]: LREM remove non existing element - listpack (0 ms) [ok]: LREM starting from tail with negative count - listpack (1 ms) [ok]: LREM starting from tail with negative count (2) - listpack (1 ms) [ok]: LREM deleting objects that may be int encoded - listpack (0 ms) [ok]: Regression for bug 593 - chaining BRPOPLPUSH with other blocking cmds (2 ms) [ok]: BLPOP/BLMOVE should increase dirty (2 ms) [ok]: client unblock tests (4 ms) [ok]: client unblock tests (3 ms) [ok]: List listpack -> quicklist encoding conversion (4 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 (1 ms) [ok]: ZINTERSTORE #516 regression, mixed sets and ziplist zsets (0 ms) [ok]: List listpack -> quicklist encoding conversion (179 ms) [ok]: ZUNIONSTORE result is sorted (132 ms) [ok]: ZUNIONSTORE/ZINTERSTORE/ZDIFFSTORE error if using WITHSCORES (1 ms) [ok]: ZMSCORE retrieve (0 ms) [ok]: ZMSCORE retrieve from empty set (1 ms) [ok]: ZMSCORE retrieve with missing member (0 ms) [ok]: ZMSCORE retrieve single member (1 ms) [ok]: ZMSCORE retrieve requires one or more members (0 ms) [ok]: ZSET commands don't accept the empty strings as valid score (1 ms) [ok]: zunionInterDiffGenericCommand at least 1 input key (1 ms) [ok]: ZSCORE - listpack (37 ms) [ok]: XRANGE fuzzing (7975 ms) [ok]: XREVRANGE regression test for issue #5006 (1 ms) [ok]: XREAD streamID edge (no-blocking) (0 ms) [ok]: Stress tester for #3343-alike bugs comp: 2 (9585 ms) [ok]: XREAD streamID edge (blocking) (2 ms) [ok]: XADD streamID edge (0 ms) [ok]: ZMSCORE - listpack (35 ms) [ok]: ZSCORE after a DEBUG RELOAD - listpack (39 ms) [ok]: WAITAOF master sends PING after last write (1201 ms) [ok]: ZSET sorting stresser - listpack (45 ms) [ok]: XTRIM with MAXLEN option basic test (87 ms) [ok]: XADD with LIMIT consecutive calls (13 ms) [ok]: XTRIM with ~ is limited (12 ms) [ok]: XTRIM without ~ is not limited (10 ms) [ok]: XTRIM without ~ and with LIMIT (9 ms) [ok]: XTRIM with LIMIT delete entries no more than limit (1 ms) [ok]: List quicklist -> listpack encoding conversion (226 ms) [ok]: List encoding conversion when RDB loading (4 ms) [ok]: List invalid list-max-listpack-size config (92 ms) [ok]: List of various encodings (91 ms) [ok]: List of various encodings - sanitize dump (3 ms) [ok]: Unblock fairness is kept while pipelining (2 ms) [ok]: Unblock fairness is kept during nested unblock (2 ms) [ok]: Blocking command accounted only once in commandstats (1 ms) [ok]: Blocking command accounted only once in commandstats after timeout (1 ms) [ok]: XADD with MAXLEN > xlen can propagate correctly (12 ms) [ok]: Command being unblocked cause another command to get unblocked execution order test (17 ms) [45/133 done]: unit/type/list (15 seconds) Testing unit/cluster/slot-migration [ok]: XADD with MINID > lastid can propagate correctly (9 ms) [ok]: XADD with ~ MAXLEN can propagate correctly (16 ms) [ok]: XADD with ~ MAXLEN and LIMIT can propagate correctly (13 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-lru) (4948 ms) [ok]: {cluster} SCAN regression test for issue #4906 (7748 ms) [ok]: {cluster} SCAN MATCH pattern implies cluster slot (27 ms) [ok]: XADD with ~ MINID can propagate correctly (10 ms) [46/133 done]: unit/scan (20 seconds) Testing unit/cluster/many-slot-migration [ok]: WAITAOF master client didn't send any write command (1201 ms) [ok]: XADD with ~ MINID and LIMIT can propagate correctly (13 ms) [ok]: XTRIM with ~ MAXLEN can propagate correctly (13 ms) [ok]: XADD can CREATE an empty stream (0 ms) [ok]: XSETID can set a specific ID (1 ms) [ok]: XSETID cannot SETID with smaller ID (0 ms) [ok]: XSETID cannot SETID on non-existent key (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 (1 ms) [ok]: XSETID errors on negstive offset (0 ms) [ok]: XSETID cannot set the maximal tombstone with larger ID (0 ms) [ok]: XSETID cannot set the offset to less than the length (1 ms) [ok]: XSETID cannot set smaller ID than current MAXDELETEDID (1 ms) [ok]: XADD advances the entries-added counter and sets the recorded-first-entry-id (1 ms) [ok]: XDEL/TRIM are reflected by recorded first entry (4 ms) [ok]: Maximum XDEL ID behaves correctly (2 ms) [ok]: XADD with artial ID with maximal seq (0 ms) [ok]: Empty stream can be rewrite into AOF correctly (105 ms) [ok]: WAITAOF master client didn't send any command (1202 ms) [ok]: Stream can be rewrite into AOF correctly after XDEL lastid (104 ms) [ok]: XGROUP HELP should not have unexpected options (1 ms) [ok]: XINFO HELP should not have unexpected options (0 ms) [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 128 element sorted set - listpack (2675 ms) [47/133 done]: unit/type/stream (20 seconds) Testing unit/cluster/half-migrated-slot [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (316 ms) [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (304 ms) [ok]: ZSETs skiplist implementation backlink consistency test - listpack (32 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - listpack (866 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]: Cluster is up (115 ms) [ok]: LTRIM stress testing - listpack (8139 ms) [48/133 done]: unit/type/list-2 (17 seconds) Testing unit/cluster/base [ok]: GEOSEARCH fuzzy test - bybox (15272 ms) [ok]: GEOSEARCH box edges fuzzy test (48 ms) [ok]: Cluster is up (24 ms) [49/133 done]: unit/geo (35 seconds) Testing unit/cluster/misc [ok]: Half init migration in 'migrating' is fixable (28 ms) [ok]: Half init migration in 'importing' is fixable (30 ms) [ok]: Init migration and move key (72 ms) Time: 1002 [ok]: BZPOPMIN unblock but the key is expired and then block again - reprocessing command (1003 ms) [ok]: BZPOPMIN with same key multiple times should work (2 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZPOPMIN (1 ms) [ok]: BZPOPMIN with variadic ZADD (1 ms) [ok]: Move key again (5 ms) [ok]: Sharded pubsub publish behavior within multi/exec (0 ms) [ok]: Sharded pubsub within multi/exec with cross slot operation (0 ms) [ok]: Sharded pubsub publish behavior within multi/exec with read operation on primary (0 ms) [ok]: Sharded pubsub publish behavior within multi/exec with read operation on replica (1 ms) [ok]: Sharded pubsub publish behavior within multi/exec with write operation on primary (0 ms) [ok]: Sharded pubsub publish behavior within multi/exec with write operation on replica (0 ms) [ok]: Half-finish migration (68 ms) [ok]: Cluster nodes are reachable (1 ms) [ok]: Move key back (2 ms) [ok]: Half-finish importing (62 ms) [50/133 done]: unit/cluster/half-migrated-slot (3 seconds) Testing unit/cluster/cli [ok]: WAITAOF when replica switches between masters, fsync: no (3326 ms) [51/133 done]: unit/cluster/sharded-pubsub (11 seconds) Testing unit/cluster/manual-failover [ok]: BZPOPMIN with zero timeout should block indefinitely (1002 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZMPOP_MIN (1 ms) [ok]: BZMPOP_MIN with variadic ZADD (1 ms) [ok]: Cluster is up (87 ms) [ok]: Cluster is writable (83 ms) [ok]: Killing one primary node (14 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-lru) (5843 ms) [ok]: Cluster is up (119 ms) [ok]: Cluster is writable (59 ms) [ok]: BZMPOP_MIN with zero timeout should block indefinitely (1002 ms) [ok]: Killing majority of master nodes (42 ms) [ok]: ZSCORE - skiplist (18 ms) [ok]: ZMSCORE - skiplist (19 ms) [ok]: ZSCORE after a DEBUG RELOAD - skiplist (18 ms) [ok]: ZSET sorting stresser - skiplist (28 ms) [ok]: Create 1 node cluster (1922 ms) [ok]: Cluster Join and auto-discovery test (2576 ms) [ok]: Before slots allocation, all nodes report cluster failure (64 ms) [ok]: Different nodes have different IDs (2 ms) [ok]: WAITAOF when replica switches between masters, fsync: everysec (2326 ms) [ok]: Stress tester for #3343-alike bugs comp: 1 (8197 ms) [ok]: It is possible to perform slot allocation (257 ms) [ok]: After the join, every node gets a different config epoch (9 ms) [ok]: Cluster is up (23 ms) [ok]: Cluster is writable (60 ms) [ok]: Fill up primary with data (4 ms) [ok]: Add new node as replica (1 ms) [ok]: Check digest and replica state (1 ms) [ok]: Create 2 node cluster (1019 ms) [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 100 element sorted set - skiplist (1765 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (176 ms) [ok]: WAITAOF when replica switches between masters, fsync: always (1321 ms) [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (234 ms) [ok]: ZSETs skiplist implementation backlink consistency test - skiplist (18 ms) [ok]: Set many keys (4919 ms) [ok]: setup replication for following tests (102 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - skiplist (629 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]: Cluster should eventually be down (3311 ms) [ok]: Use takeover to bring slaves back (6 ms) [ok]: WAIT and WAITAOF replica multiple clients unblock - reuse last result (681 ms) [52/133 done]: unit/wait (29 seconds) Testing unit/cluster/announce-client-ip 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]: Slot migration states are replicated (5 ms) [ok]: Create 3 node cluster (1925 ms) [ok]: Run blocking command on cluster node3 (1 ms) [ok]: Perform a Resharding (6 ms) [ok]: Verify command got unblocked after resharding (38 ms) [ok]: Wait for cluster to be stable (12 ms) [ok]: use previous hostip in "cluster-preferred-endpoint-type unknown-endpoint" mode (6 ms) [ok]: Sanity test push cmd after resharding (1 ms) [ok]: Run blocking command again on cluster node1 (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 (2 ms) [ok]: BZMPOP_MIN with variadic ZADD (1 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-random) (6282 ms) [ok]: Kill a cluster node and wait for fail state (1734 ms) [ok]: Verify command got unblocked after cluster failure (1 ms) [ok]: Nodes should report cluster_state is ok now (4932 ms) [ok]: Sanity for CLUSTER COUNTKEYSINSLOT (0 ms) [ok]: BZMPOP_MIN with zero timeout should block indefinitely (1002 ms) [ok]: BZPOP/BZMPOP against wrong type (2 ms) [ok]: BZMPOP with illegal argument (2 ms) [ok]: BZMPOP with multiple blocked clients (5 ms) [ok]: It is possible to write and read from the cluster (96 ms) [ok]: CLUSTER RESET SOFT test (5 ms) [ok]: Coverage: CLUSTER HELP (0 ms) [ok]: Coverage: ASKING (0 ms) [ok]: CLUSTER SLAVES and CLUSTER REPLICAS with zero replicas (0 ms) [ok]: Wait for failover (6575 ms) [ok]: BZMPOP propagate as pop with count command to replica (183 ms) [ok]: BZMPOP should not blocks on non key arguments - #10762 (3 ms) [ok]: Killing the new primary node (16 ms) [ok]: Cluster should eventually be up again (89 ms) [ok]: Replica in loading state is hidden (4944 ms) [ok]: Cluster should eventually be up again (3101 ms) [53/133 done]: unit/cluster/base (9 seconds) Testing unit/cluster/no-failover-option [ok]: Cluster is writable (59 ms) [ok]: Instance #5, #6, #7 are now masters (1 ms) [ok]: Restarting the previously killed master nodes (2 ms) [ok]: Instance #0, #1, #2 gets converted into a slaves (7 ms) [ok]: Check disconnected replica not hidden from slots (103 ms) [ok]: ZSET skiplist order consistency when elements are moved (758 ms) [ok]: ZRANGESTORE basic (1 ms) [ok]: ZRANGESTORE RESP3 (0 ms) [ok]: ZRANGESTORE range (1 ms) [ok]: ZRANGESTORE BYLEX (0 ms) [ok]: ZRANGESTORE BYSCORE (1 ms) [ok]: ZRANGESTORE BYSCORE LIMIT (0 ms) [ok]: ZRANGESTORE BYSCORE REV LIMIT (0 ms) [ok]: ZRANGE BYSCORE REV LIMIT (1 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 (1 ms) [ok]: ZRANGESTORE with zset-max-listpack-entries 0 #10767 case (1 ms) [ok]: ZRANGESTORE with zset-max-listpack-entries 1 dst key should use skiplist encoding (1 ms) [ok]: ZRANGE invalid syntax (1 ms) [ok]: ZRANDMEMBER - listpack (10 ms) [ok]: ZRANDMEMBER - skiplist (9 ms) [ok]: ZRANDMEMBER with RESP3 (0 ms) [ok]: ZRANDMEMBER count of 0 is handled correctly (0 ms) [ok]: ZRANDMEMBER with against non existing key (0 ms) [ok]: ZRANDMEMBER count overflow (0 ms) [ok]: ZRANDMEMBER count of 0 is handled correctly - emptyarray (0 ms) [ok]: ZRANDMEMBER with against non existing key - emptyarray (0 ms) [ok]: ZRANDMEMBER with - skiplist (255 ms) [ok]: Migration target is auto-updated after failover in target shard (3239 ms) [54/133 done]: unit/cluster/replica-in-sync (16 seconds) Testing unit/cluster/pubsubshard-slot-migration [ok]: ZRANDMEMBER with - listpack (237 ms) [ok]: zset score double range (1 ms) [55/133 done]: unit/cluster/manual-takeover (19 seconds) Testing unit/cluster/cluster-reliable-meet [ok]: zunionInterDiffGenericCommand acts on SET and ZSET (16 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - single (8 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - multiple (1 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - single_multiple (2 ms) [56/133 done]: unit/type/zset (26 seconds) Testing unit/cluster/pubsub [ok]: Cluster nodes are reachable (0 ms) [ok]: Before slots allocation, all nodes report cluster failure (25 ms) [ok]: Cluster nodes haven't met each other (1 ms) [ok]: Allocate slots (40 ms) [ok]: Keys are accessible (5533 ms) [ok]: Key lazy expires during key migration (13 ms) [ok]: Coverage: Basic cluster commands (2 ms) [ok]: Init migration of many slots (1294 ms) [57/133 done]: unit/cluster/misc (12 seconds) Testing unit/cluster/human-announced-nodename [ok]: MEET is reliable when target drops the initial MEETs (1876 ms) [ok]: Functions are added to new node on valkey-cli cluster add-node (3011 ms) [ok]: AOF rewrite during write load: RDB preamble=no (22132 ms) [ok]: Stress tester for #3343-alike bugs comp: 0 (9069 ms) [ok]: Turning off AOF kills the background writing child if any (104 ms) [ok]: AOF rewrite of list with listpack encoding, string data (104 ms) [ok]: AOF rewrite of list with quicklist encoding, string data (196 ms) [ok]: Cluster is up (130 ms) [ok]: AOF rewrite of list with listpack encoding, int data (104 ms) [ok]: Migration source is auto-updated after failover in source shard (3244 ms) [ok]: Replica redirects key access in migrating slots (1 ms) [ok]: Replica of migrating node returns ASK redirect after READONLY (1 ms) [ok]: Replica of migrating node returns TRYAGAIN after READONLY (1 ms) [ok]: Replica of importing node returns TRYAGAIN after READONLY and ASKING (1 ms) [ok]: Cluster is writable (68 ms) [ok]: Instance #5 is a slave (0 ms) [ok]: Instance #5 synced with the master (1 ms) W[ok]: AOF rewrite of list with quicklist encoding, int data (132 ms) [ok]: AOF rewrite of set with intset encoding, string data (104 ms) W[ok]: New replica inherits migrating slot (392 ms) [ok]: AOF rewrite of set with hashtable encoding, string data (198 ms) W[ok]: AOF rewrite of set with intset encoding, int data (103 ms) [ok]: New replica inherits importing slot (288 ms) [ok]: AOF rewrite of set with hashtable encoding, int data (181 ms) W[ok]: AOF rewrite of hash with listpack encoding, string data (103 ms) W[ok]: AOF rewrite of hash with hashtable encoding, string data (229 ms) W[ok]: AOF rewrite of hash with listpack encoding, int data (103 ms) [ok]: Set cluster human announced nodename and let it propagate (104 ms) [ok]: AOF rewrite of hash with hashtable encoding, int data (215 ms) W[ok]: AOF rewrite of zset with listpack encoding, string data (55 ms) W[ok]: AOF rewrite of zset with skiplist encoding, string data (234 ms) [ok]: wait for new failover (6007 ms) [ok]: Restarting the previously killed primary nodes (1 ms) [ok]: Make sure there is no failover timeout (2 ms) [ok]: AOF rewrite of zset with listpack encoding, int data (103 ms) W[ok]: AOF rewrite of zset with skiplist encoding, int data (205 ms) W[ok]: AOF rewrite functions (53 ms) [ok]: Send CLUSTER FAILOVER to #5, during load (2141 ms) [ok]: Wait for failover (29 ms) [ok]: BGREWRITEAOF is delayed if BGSAVE is in progress (222 ms) [ok]: BGREWRITEAOF is refused if already in progress (17 ms) [58/133 done]: unit/aofrw (46 seconds) Testing unit/cluster/announced-endpoints [ok]: Cluster should eventually be up again (131 ms) [ok]: Cluster is writable (57 ms) [ok]: Instance #5 is now a master (1 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-ttl) (7419 ms) [ok]: Verify 50000 keys for consistency with logical content (1219 ms) [ok]: Instance #0 gets converted into a slave (20 ms) [ok]: Set cluster announced IPv4 to invalid IP (1 ms) [ok]: Set cluster announced IPv4 and check that it propagates (212 ms) [ok]: Clear announced client IPv4 and check that it propagates (208 ms) [ok]: Human nodenames are visible in log messages (3523 ms) [59/133 done]: unit/cluster/human-announced-nodename (6 seconds) Testing unit/cluster/shardid-propagation [ok]: Cluster nodes are reachable (0 ms) [ok]: Before slots allocation, all nodes report cluster failure (27 ms) [ok]: Cluster nodes haven't met each other (1 ms) [ok]: Fuzzing dense/sparse encoding: Server should always detect errors (48232 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 (0 ms) [ok]: PFMERGE with one empty input key, create an empty destkey (1 ms) [ok]: PFMERGE with one non-empty input key, dest key is actually one of the source keys (0 ms) [ok]: Allocate slots (41 ms) [ok]: Restart of node in cluster mode doesn't cause nodes.conf corruption due to shard id mismatch (257 ms) [60/133 done]: unit/cluster/shardid-propagation (1 seconds) Testing unit/cluster/slot-ownership [ok]: PFMERGE results with simd (1006 ms) [ok]: Cluster is up (75 ms) [ok]: Instance #3 is a replica (1 ms) [ok]: Instance #3 synced with the master (1 ms) [ok]: The nofailover flag is propagated (53 ms) [ok]: Killing one master node (13 ms) [ok]: Cluster is up (80 ms) [ok]: Migrate a slot, verify client receives sunsubscribe on primary serving the slot. (5 ms) [ok]: Client subscribes to multiple channels, migrate a slot, verify client receives sunsubscribe on primary serving the slot. (5 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. (35 ms) [ok]: Delete a slot, verify sunsubscribe message (1 ms) [ok]: Reset cluster, verify sunsubscribe message (5 ms) [ok]: Fix cluster (9493 ms) [ok]: Test publishing to master (5 ms) [ok]: Test publishing to slave (3 ms) [61/133 done]: unit/cluster/pubsubshard-slot-migration (11 seconds) Testing unit/cluster/info [ok]: ziplist implementation: value encoding and backlink (9294 ms) [ok]: Cluster should be still down after some time (3224 ms) [ok]: Instance #3 is still a replica (0 ms) [ok]: Restarting the previously killed master node (0 ms) [ok]: Migrated replica reports zero repl offset and rank, and fails to win election - shutdown (18147 ms) [62/133 done]: unit/cluster/no-failover-option (15 seconds) Testing unit/cluster/consistency-check [ok]: Handshake eventually succeeds after node handshake timeout on both sides with inconsistent view of the cluster (9244 ms) [ok]: Cluster should start ok (26 ms) [ok]: errorstats: rejected call due to MOVED Redirection (2 ms) [ok]: Migrate the last slot away from a node using valkey-cli (11159 ms) [ok]: PFCOUNT multiple-keys merge returns cardinality of union #1 (4989 ms) [ok]: Test cluster info stats for publish (1 ms) [ok]: Multiple slot migration states are replicated (6 ms) [63/133 done]: unit/cluster/pubsub (15 seconds) Testing unit/cluster/diskless-load-swapdb [ok]: New replica inherits multiple migrating slots (336 ms) [ok]: Slot finalization succeeds on both primary and replicas (6 ms) [ok]: Test change cluster-announce-port and cluster-announce-tls-port at runtime (204 ms) [ok]: Test change cluster-announce-bus-port at runtime (203 ms) [ok]: valkey-cli -4 --cluster create using 127.0.0.1 with cluster-port (1931 ms) [ok]: Keys are accessible (5211 ms) [64/133 done]: unit/cluster/announced-endpoints (12 seconds) Testing unit/cluster/transactions-on-replica [ok]: PFCOUNT multiple-keys merge returns cardinality of union #2 (2545 ms) [65/133 done]: unit/cluster/many-slot-migration (31 seconds) Testing unit/cluster/scripting [ok]: valkey-cli -4 --cluster add-node using 127.0.0.1 with cluster-port (1137 ms) [ok]: maxmemory - policy volatile-lru should only remove volatile keys. (12039 ms) [ok]: PFDEBUG GETREG returns the HyperLogLog raw registers (972 ms) [ok]: PFADD / PFCOUNT cache invalidation works (1 ms) [66/133 done]: unit/hyperloglog (61 seconds) Testing unit/cluster/cluster-multiple-meets [ok]: Cluster nodes are reachable (1 ms) [ok]: Before slots allocation, all nodes report cluster failure (26 ms) [ok]: Cluster nodes haven't met each other (1 ms) [ok]: Allocate slots (38 ms) [ok]: Set cluster announced IPv6 to invalid IP (0 ms) [ok]: Set cluster announced IPv6 and check that it propagates (213 ms) [ok]: Clear announced client IPv6 and check that it propagates (210 ms) [ok]: Cluster is up (124 ms) [ok]: Cluster is writable (66 ms) [ok]: Instance #5 is a slave (1 ms) [ok]: Instance #5 synced with the master (0 ms) [ok]: Make instance #0 unreachable without killing it (0 ms) [ok]: Send CLUSTER FAILOVER to instance #5 (0 ms) [ok]: Eval scripts with shebangs and functions default to no cross slots (1 ms) [ok]: Cross slot commands are allowed by default for eval scripts and with allow-cross-slot-keys flag (2 ms) [ok]: Cross slot commands are also blocked if they disagree with pre-declared keys (0 ms) [ok]: Cross slot commands are allowed by default if they disagree with pre-declared keys (1 ms) [ok]: Function no-cluster flag (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 (1 ms) [67/133 done]: unit/cluster/scripting (2 seconds) Testing unit/cluster/slave-selection [ok]: fail reason changed (3259 ms) [ok]: Verify that slot ownership transfer through gossip propagates deletes to replicas (121 ms) [68/133 done]: unit/cluster/info (9 seconds) Testing unit/cluster/slot-migration-response [ok]: valkey-cli -4 --cluster create using localhost with cluster-port (1927 ms) [ok]: Multiple MEETs from Node 1 to Node 0 should work (2676 ms) [69/133 done]: unit/cluster/cluster-multiple-meets (3 seconds) Testing unit/cluster/update-msg [ok]: Load cluster announced IPv4 config on server start (194 ms) [ok]: valkey-cli -4 --cluster add-node using localhost with cluster-port (1140 ms) [ok]: ziplist implementation: encoding stress testing (9856 ms) [70/133 done]: unit/type/list-3 (47 seconds) Testing unit/cluster/hostnames [ok]: Cluster is up (27 ms) [71/133 done]: unit/cluster/cli (31 seconds) Testing unit/cluster/slot-stats [ok]: Set many keys in the cluster (916 ms) [ok]: Test cluster responses during migration of slot x (2 ms) [72/133 done]: unit/cluster/slot-migration-response (3 seconds) Testing unit/cluster/faildet [ok]: Load cluster announced IPv6 config on server start (194 ms) [73/133 done]: unit/cluster/announce-client-ip (28 seconds) Testing unit/cluster/cluster-shards [ok]: Instance #5 is still a slave after some time (no failover) (5002 ms) [ok]: Handshake eventually succeeds after node handshake timeout on one side with inconsistent view of the cluster (8649 ms) [74/133 done]: unit/cluster/cluster-reliable-meet (25 seconds) Testing unit/cluster/pubsubshard [ok]: Primaries will not time out then they are elected in the same epoch (7848 ms) [ok]: Cluster should start ok (131 ms) [ok]: Cluster is writable (61 ms) [ok]: Cluster should start ok (26 ms) [ok]: Cluster is writable (56 ms) [75/134 done]: unit/cluster/failover2 (45 seconds) Testing unit/cluster/links [ok]: CLUSTER SLOT-STATS cpu-usec reset upon CONFIG RESETSTAT. (2438 ms) [ok]: Cluster should start ok (28 ms) [ok]: Can't read from replica without READONLY (1 ms) [ok]: Can't read from replica after READWRITE (0 ms) [ok]: Can read from replica after READONLY (1 ms) [ok]: Can perform HSET primary and HGET from replica (2 ms) [ok]: Can MULTI-EXEC transaction of HGET operations from replica (0 ms) [ok]: MULTI-EXEC with write operations is MOVED (1 ms) [ok]: Slot is auto-claimed by target after source relinquishes ownership (1005 ms) [ok]: Slave expired keys is loaded when restarted: appendonly=no (3132 ms) [ok]: Wait for instance #0 to return back alive (4997 ms) [ok]: write command is QUEUED, then EXEC should be MOVED after failover (2006 ms) [ok]: read-only blocking operations from replica (2 ms) [ok]: reply MOVED when eval from replica for update (0 ms) [76/134 done]: unit/cluster/transactions-on-replica (13 seconds) Testing unit/cluster/slave-stop-cond [ok]: CLUSTER SLOT-STATS cpu-usec reset upon slot migration. (4991 ms) [ok]: Slave expired keys is loaded when restarted: appendonly=yes (3127 ms) [ok]: Cluster is up (212 ms) [ok]: The first master has actually two slaves (1 ms) [ok]: CLUSTER SLAVES and CLUSTER REPLICAS output is consistent (1 ms) [ok]: Slaves of #0 are instance #5 and #10 as expected (1 ms) [ok]: Instance #5 and #10 synced with the master (1 ms) [ok]: Slaves are both able to receive and acknowledge writes (13 ms) [ok]: Cluster is up (136 ms) [ok]: Cluster is writable (63 ms) [ok]: Instance #5 is a slave (1 ms) [ok]: Instance #5 synced with the master (1 ms) [ok]: Killing one master node (20 ms) [77/134 done]: unit/cluster/consistency-check (19 seconds) Testing unit/cluster/failure-marking [ok]: maxmemory - policy volatile-lfu should only remove volatile keys. (15090 ms) [ok]: Set cluster hostnames and verify they are propagated (225 ms) [ok]: Migrated replica reports zero repl offset and rank, and fails to win election - sigstop (8188 ms) [ok]: Update hostnames and make sure they are all eventually propagated (224 ms) [ok]: Remove hostnames and make sure they are all eventually propagated (219 ms) [ok]: Verify cluster-preferred-endpoint-type behavior for redirects and info (123 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for non-slot specific commands. (2567 ms) [ok]: Cluster should start ok (134 ms) [ok]: Killing two slave nodes (27 ms) [ok]: Cluster should start ok (78 ms) [ok]: Cluster shards response is ok for shard 0 (2 ms) [ok]: Kill a node and tell the replica to immediately takeover (13 ms) [ok]: Cluster should be still up (133 ms) [ok]: Killing one master node (13 ms) [ok]: Cluster should be down now (135 ms) [ok]: Restarting master node (13 ms) [ok]: Verify the nodes configured with prefer hostname only show hostname for new nodes (1232 ms) [ok]: Cluster should be up again (138 ms) [ok]: Test restart will keep hostname information (230 ms) [ok]: Test hostname validation (0 ms) [ok]: Primary lost a slot during the shutdown waiting (4520 ms) [78/134 done]: unit/cluster/hostnames (14 seconds) Testing unit/cluster/failover [ok]: Pub/Sub shard basics (3 ms) [ok]: client can't subscribe to multiple shard channels across different slots in same call (0 ms) [ok]: client can subscribe to multiple shard channels across different slots in separate call (1 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 (5 ms) [ok]: PUBSUB channels/shardchannels (3 ms) Waiting for process 1443 to exit... [ok]: Broadcast message across a cluster shard while a cluster link is down (103 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for slot specific commands. (2584 ms) [79/134 done]: unit/cluster/pubsubshard (11 seconds) Testing unit/cluster/cluster-slots [ok]: Wait for failover (4135 ms) [ok]: Cluster should eventually be up again (190 ms) [ok]: Cluster is writable (60 ms) [ok]: Instance #5 is now a master (0 ms) [ok]: Killing the new master #5 (15 ms) Waiting for process 1443 to exit... [ok]: Verify health as fail for killed node (3131 ms) [ok]: CLUSTER SHARDS slot response is non-empty when primary node fails (1 ms) Waiting for process 1443 to exit... [80/134 done]: unit/cluster/cluster-shards (14 seconds) Testing unit/cluster/cluster-nodes-slots Waiting for process 1443 to exit... [ok]: CLUSTER SETSLOT with invalid timeouts (1 ms) [ok]: Each node has two links with each peer (4 ms) [ok]: Validate cluster links format (1 ms) Waiting for process 1443 to exit... [ok]: Cluster should be down now (3310 ms) [ok]: Restarting the old master node (0 ms) [ok]: Instance #0 gets converted into a slave (54 ms) [ok]: Restarting the new master node (0 ms) Waiting for process 1443 to exit... [ok]: Cluster is up again (1053 ms) [ok]: Cluster is up (144 ms) [ok]: The first master has actually one slave (1 ms) [ok]: Slaves of #0 is instance #5 as expected (0 ms) [ok]: Instance #5 synced with the master (1 ms) [ok]: Lower the slave validity factor of #5 to the value of 2 (0 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for blocking commands, unblocked on keyspace update. (5172 ms) [ok]: Write data while slave #10 is paused and can't receive it (10017 ms) [ok]: Cluster is up (211 ms) [ok]: Cluster is writable (63 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 (51 ms) Waiting for process 1443 to exit... [81/134 done]: unit/cluster/update-msg (22 seconds) Testing unit/cluster/noaddr Waiting for process 1443 to exit... Waiting for process 1443 to exit... [ok]: CLUSTER SLOT-STATS cpu-usec for blocking commands, unblocked on timeout. (3107 ms) [ok]: Wait for instance #5 (and not #10) to turn into a master (3890 ms) [ok]: Wait for the node #10 to return alive before ending the test (1 ms) [ok]: Cluster should eventually be up again (235 ms) [ok]: Node #10 should eventually replicate node #5 (0 ms) [ok]: Primary lost a slot during the manual failover pausing (36 ms) Waiting for process 1415 to exit... [ok]: Verify that single primary marks replica as failed (3191 ms) Waiting for process 1415 to exit... [ok]: Cluster is up (132 ms) [ok]: Cluster is writable (60 ms) [ok]: Instance #5 is a slave (1 ms) [ok]: Instance #5 synced with the master (1 ms) [ok]: Killing one master node (15 ms) Waiting for process 1415 to exit... [ok]: New non-empty replica reports zero repl offset and rank, and fails to win election - shutdown (3430 ms) [ok]: Disconnect link when send buffer limit reached (9210 ms) [ok]: Cluster should start ok (52 ms) [ok]: Continuous slots distribution (4 ms) [ok]: Discontinuous slots distribution (4 ms) Waiting for process 1415 to exit... [ok]: Link memory increases with publishes (711 ms) [82/134 done]: unit/cluster/cluster-nodes-slots (12 seconds) Testing unit/cluster/multi-slot-operations [ok]: Link memory resets after publish messages flush (531 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for transactions. (5225 ms) [83/134 done]: unit/cluster/links (24 seconds) Testing integration/psync2 Waiting for process 1415 to exit... [ok]: PSYNC2: --- CYCLE 1 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #1 as master (0 ms) [ok]: PSYNC2: Set #4 to replicate from #1 (0 ms) [ok]: Wait for failover (3932 ms) [ok]: Cluster should eventually be up again (142 ms) Waiting for process 1415 to exit... [ok]: Cluster is writable (57 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 (78 ms) [ok]: PSYNC2: Set #0 to replicate from #1 (0 ms) [ok]: maxmemory - policy volatile-random should only remove volatile keys. (18791 ms) [ok]: Wait for instance #0 to return back alive (9947 ms) [ok]: Continuous slots distribution (9 ms) [ok]: ADDSLOTS command with several boundary conditions test suite (1 ms) [ok]: ADDSLOTSRANGE command with several boundary conditions test suite (1 ms) [ok]: DELSLOTSRANGE command with several boundary conditions test suite (4 ms) Waiting for process 1415 to exit... [84/134 done]: unit/cluster/multi-slot-operations (2 seconds) Testing integration/replica-redirect [ok]: CLUSTER SLOT-STATS cpu-usec for lua-scripts, without cross-slot keys. (2571 ms) [ok]: PSYNC2: Set #2 to replicate from #4 (0 ms) [ok]: write command inside MULTI is QUEUED, EXEC should be REDIRECT (102 ms) [ok]: write command inside MULTI is REDIRECT, EXEC should be EXECABORT (0 ms) [ok]: replica allow read command by default (1 ms) [ok]: replica reply READONLY error for write command by default (0 ms) [ok]: replica redirect read and write command after CLIENT CAPA REDIRECT (0 ms) [ok]: CLIENT INFO (0 ms) [ok]: non-data access commands are not redirected (0 ms) [ok]: replica allow read command in READONLY mode (0 ms) [ok]: client paused during failover-in-progress (320 ms) Waiting for process 1415 to exit... [ok]: PSYNC2: Set #3 to replicate from #2 (0 ms) [85/134 done]: integration/replica-redirect (2 seconds) Testing integration/replication-psync [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: CLUSTER SETSLOT with an explicit timeout (3075 ms) Waiting for process 1415 to exit... [ok]: PSYNC2: cluster is consistent after failover (1 ms) [ok]: Detect write load to master (1001 ms) [ok]: NOADDR nodes will be marked as FAIL (1171 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: no, disabled, dual-channel: no, reconnect: 0) (92 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for lua-scripts, with cross-slot keys. (2638 ms) [86/134 done]: unit/cluster/noaddr (12 seconds) Testing integration/replication [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [87/134 done]: unit/cluster/faildet (33 seconds) Testing integration/replication-3 [ok]: Slave enters handshake (0 ms) [ok]: Slave enters wait_bgsave (0 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: Client blocked on XREADGROUP while stream's slot is migrated (3 ms) [ok]: Primary lost a slot during the client pause command (173 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for functions, without cross-slot keys. (2832 ms) [88/134 done]: unit/cluster/slot-ownership (49 seconds) Testing integration/dismiss-mem [ok]: dismiss all data types memory (1113 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 51809) (0 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (2 ms) [ok]: PSYNC2: --- CYCLE 2 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #4 as master (0 ms) [ok]: PSYNC2: Set #0 to replicate from #2 (0 ms) [ok]: Cluster is up (252 ms) [ok]: The first master has actually 5 slaves (1 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]: dismiss client output buffer (340 ms) [ok]: dismiss client query buffer (203 ms) [ok]: MASTER and SLAVE consistency with expire (4063 ms) [ok]: Master can replicate command longer than client-query-buffer-limit on replica (92 ms) [ok]: PSYNC2: Set #1 to replicate from #2 (1 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for functions, with cross-slot keys. (2637 ms) [ok]: dismiss replication backlog (1235 ms) [89/134 done]: integration/dismiss-mem (3 seconds) Testing integration/block-repl [ok]: Break master-slave link and prevent further reconnections (20016 ms) [ok]: Slave #5 is reachable and alive (26 ms) [ok]: PSYNC2: Set #2 to replicate from #4 (0 ms) [ok]: Test replication partial resync: ok psync (diskless: no, disabled, dual-channel: no, reconnect: 1) (6386 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [ok]: First server should have role slave after SLAVEOF (1001 ms) [ok]: PSYNC2: Set #3 to replicate from #2 (0 ms) [ok]: New non-empty replica reports zero repl offset and rank, and fails to win election - sigstop (3342 ms) [ok]: PSYNC2: cluster is consistent after failover (1 ms) [ok]: Verify that multiple primaries mark replica as failed (6131 ms) [ok]: Cluster is up (132 ms) [ok]: Cluster is writable (64 ms) [ok]: Killing the first primary node (15 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, multi bulk buffer processing. (2817 ms) [ok]: Slave is able to detect timeout during handshake (0 ms) [ok]: Slave is able to evict keys created in writable slaves (6001 ms) [ok]: Writable replica doesn't return expired keys (102 ms) [ok]: PFCOUNT updates cache on readonly replica (2 ms) [ok]: Set instance A as slave of B (101 ms) [ok]: INCRBYFLOAT replication, should not remove expire (2 ms) [ok]: GETSET replication (2 ms) [ok]: BRPOPLPUSH replication, when blocking against empty list (1 ms) [ok]: PFCOUNT doesn't use expired key on readonly replica (101 ms) [90/134 done]: integration/replication-3 (11 seconds) Testing integration/psync2-master-restart [ok]: BRPOPLPUSH replication, list exists (1002 ms) [ok]: BLMOVE (left, left) replication, when blocking against empty list (2 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields when offset is 0 (117 ms) [ok]: BLMOVE (left, left) replication, list exists (1003 ms) [ok]: BLMOVE (left, right) replication, when blocking against empty list (2 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, in-line buffer processing. (2745 ms) [ok]: Wait for failover (4233 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 101576) (1 ms) [ok]: Cluster should eventually be up again (174 ms) [ok]: Restarting the previously killed primary node (1 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (2 ms) [ok]: PSYNC2: --- CYCLE 3 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #3 as master (0 ms) [ok]: Slot migration is ok when the replicas are down (115 ms) [ok]: PSYNC2: Set #4 to replicate from #0 (0 ms) [ok]: Instance #0 gets converted into a replica (70 ms) [ok]: Make sure the replicas always get the different ranks (2 ms) [ok]: BLMOVE (left, right) replication, list exists (1002 ms) [ok]: BLMOVE (right, left) replication, when blocking against empty list (1 ms) [91/134 done]: unit/cluster/failover (33 seconds) Testing integration/shutdown [ok]: PSYNC2: Set #0 to replicate from #1 (1 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields with data (1117 ms) [92/134 done]: unit/cluster/slot-migration (84 seconds) Testing integration/convert-ziplist-hash-on-load [ok]: RDB load ziplist hash: converts to listpack when RDB loading (0 ms) [ok]: Manual failover vote is not limited by two times the node timeout - drop the auth ack (5185 ms) [ok]: RDB load ziplist hash: converts to hash table when hash-max-ziplist-entries is exceeded (0 ms) [93/134 done]: integration/convert-ziplist-hash-on-load (0 seconds) Testing integration/corrupt-dump [ok]: BLMOVE (right, left) replication, list exists (1003 ms) [ok]: BLMOVE (right, right) replication, when blocking against empty list (1 ms) [ok]: Test replication partial resync: no backlog (diskless: no, disabled, dual-channel: no, reconnect: 1) (8024 ms) [ok]: corrupt payload: #7445 - with sanitize (216 ms) [ok]: PSYNC2: Set #1 to replicate from #3 (1 ms) [ok]: corrupt payload: hash with valid zip list header, invalid entry len (216 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [ok]: corrupt payload: invalid zlbytes header (216 ms) [ok]: corrupt payload: valid zipped hash header, dup records (215 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields with expire (1440 ms) [ok]: BLMOVE (right, right) replication, list exists (1002 ms) [ok]: corrupt payload: quicklist big ziplist prev len (216 ms) [ok]: BLPOP followed by role change, issue #2473 (103 ms) [ok]: Replica output bytes metric (1 ms) [ok]: Shutting down master waits for replica to catch up (sigterm) (2019 ms) [ok]: Slave #5 should not be able to failover (10002 ms) [ok]: corrupt payload: quicklist small ziplist prev len (216 ms) [ok]: Cluster should be down (127 ms) [ok]: PSYNC2: Set #2 to replicate from #0 (0 ms) [ok]: corrupt payload: quicklist ziplist wrong count (216 ms) [ok]: Second server should have role master at first (0 ms) [ok]: SLAVEOF should start with link status "down" (1 ms) [ok]: The role should immediately be changed to "replica" (0 ms) [ok]: Sync should have transferred keys from master (0 ms) [ok]: The link status should be up (1 ms) [ok]: SET on the master should immediately propagate (0 ms) [ok]: corrupt payload: #3080 - quicklist (215 ms) [ok]: FLUSHDB / FLUSHALL should replicate (97 ms) [ok]: ROLE in master reports master with a slave (0 ms) [ok]: ROLE in slave reports slave in connected state (1 ms) [ok]: corrupt payload: quicklist with empty ziplist (217 ms) [94/134 done]: unit/cluster/slave-stop-cond (42 seconds) Testing integration/skip-rdb-checksum [ok]: corrupt payload: quicklist encoded_len is 0 (225 ms) [ok]: corrupt payload: quicklist listpack entry start with EOF (215 ms) [ok]: PSYNC2: cluster is consistent after failover (1 ms) [ok]: Skip RDB checksum sync - tls:0, repl_diskless_sync:yes, repl_diskless_load:on-empty-db (319 ms) [95/134 done]: integration/skip-rdb-checksum (1 seconds) Testing integration/logging [ok]: corrupt payload: #3080 - ziplist (226 ms) [ok]: corrupt payload: load corrupted rdb with no CRC - #3505 (109 ms) [ok]: Crash report generated on SIGABRT (102 ms) [ok]: Crash report generated on DEBUG SEGFAULT (2 ms) [ok]: PSYNC2: Full resync after Master restart when too many key expired (2029 ms) [ok]: corrupt payload: load corrupted rdb with empty keys (221 ms) [96/134 done]: integration/psync2-master-restart (6 seconds) Testing integration/valkey-benchmark [ok]: Stacktraces generated on SIGALRM (102 ms) [ok]: corrupt payload: load corrupted rdb with empty keys (222 ms) [ok]: Shutting down master waits for replica to catch up (shutdown) (1966 ms) [ok]: benchmark: set,get (5 ms) [ok]: benchmark: connecting using URI set,get (5 ms) [ok]: benchmark: connecting using URI with authentication set,get (5 ms) [ok]: benchmark: full test suite (84 ms) [ok]: Config hide-user-data-from-log is off (1 ms) [ok]: corrupt payload: listpack invalid size header (217 ms) [ok]: corrupt payload: listpack too long entry len (122 ms) [ok]: Config hide-user-data-from-log is on (1 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, blocking command. (5463 ms) [ok]: corrupt payload: listpack very long entry len (122 ms) [97/134 done]: integration/logging (1 seconds) Testing integration/replication-buffer [ok]: benchmark: multi-thread set,get (508 ms) [ok]: corrupt payload: listpack too long entry prev len (215 ms) [ok]: benchmark: pipelined full set,get (101 ms) [ok]: benchmark: arbitrary command (6 ms) [ok]: benchmark: keyspace length (18 ms) [ok]: benchmark: clients idle mode should return error when reached maxclients limit (2 ms) [ok]: benchmark: read last argument from stdin (6 ms) [98/134 done]: integration/valkey-benchmark (1 seconds) Testing integration/replication-4 [ok]: corrupt payload: stream with duplicate consumers (217 ms) [ok]: First server should have role slave after SLAVEOF (0 ms) [ok]: corrupt payload: hash ziplist with duplicate records (215 ms) [ok]: corrupt payload: hash listpack with duplicate records (215 ms) [ok]: corrupt payload: hash listpack with duplicate records - convert (122 ms) [ok]: maxmemory - policy volatile-ttl should only remove volatile keys. (23246 ms) [ok]: corrupt payload: hash ziplist uneven record count (214 ms) [ok]: corrupt payload: hash duplicate records (225 ms) [ok]: Shutting down master waits for replica timeout (1934 ms) [ok]: All replicas share one global replication buffer dualchannel yes (71 ms) [ok]: Replication buffer will become smaller when no replica uses dualchannel yes (3 ms) [ok]: corrupt payload: hash empty zipmap (216 ms) [ok]: corrupt payload: fuzzer findings - NPD in streamIteratorGetID (124 ms) [ok]: corrupt payload: fuzzer findings - listpack NPD on invalid stream (122 ms) [ok]: corrupt payload: fuzzer findings - NPD in quicklistIndex (217 ms) [ok]: corrupt payload: fuzzer findings - encoded entry header reach outside the allocation (217 ms) [ok]: corrupt payload: fuzzer findings - invalid ziplist encoding (215 ms) [ok]: Shutting down master waits for replica then fails (1236 ms) [ok]: corrupt payload: fuzzer findings - hash crash (217 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, multi-exec transaction. (2902 ms) [ok]: corrupt payload: fuzzer findings - uneven entry count in hash (226 ms) [ok]: corrupt payload: fuzzer findings - invalid read in lzf_decompress (214 ms) [ok]: Shutting down master waits for replica then aborted (526 ms) [ok]: corrupt payload: fuzzer findings - leak in rdbloading due to dup entry in set (216 ms) [ok]: corrupt payload: fuzzer findings - empty intset (217 ms) [ok]: Shutting down primary wait for replica after previous block (527 ms) [99/134 done]: integration/shutdown (9 seconds) Testing integration/corrupt-dump-fuzzer [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 146616) (0 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (1 ms) [ok]: PSYNC2: --- CYCLE 4 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #1 as master (0 ms) [ok]: PSYNC2: Set #0 to replicate from #2 (0 ms) [ok]: corrupt payload: fuzzer findings - zset ziplist entry lensize is 0 (217 ms) [ok]: corrupt payload: fuzzer findings - valgrind ziplist prevlen reaches outside the ziplist (217 ms) [ok]: corrupt payload: fuzzer findings - valgrind - bad rdbLoadDoubleValue (216 ms) [ok]: corrupt payload: fuzzer findings - valgrind ziplist prev too big (228 ms) [ok]: corrupt payload: fuzzer findings - lzf decompression fails, avoid valgrind invalid read (217 ms) [ok]: PSYNC2: Set #4 to replicate from #1 (1 ms) [ok]: All replicas share one global replication buffer dualchannel no (83 ms) [ok]: Replication buffer will become smaller when no replica uses dualchannel no (4 ms) [ok]: corrupt payload: fuzzer findings - stream bad lp_count (217 ms) [ok]: corrupt payload: fuzzer findings - stream bad lp_count - unsanitized (123 ms) [ok]: corrupt payload: fuzzer findings - stream integrity check issue (215 ms) [ok]: corrupt payload: fuzzer findings - infinite loop (124 ms) [ok]: corrupt payload: fuzzer findings - hash ziplist too long entry len (217 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, non slot specific command. (2773 ms) [ok]: PSYNC2: Set #2 to replicate from #4 (0 ms) [ok]: corrupt payload: fuzzer findings - zset ziplist invalid tail offset (217 ms) [ok]: Test replication with parallel clients writing in different DBs (5281 ms) [ok]: corrupt payload: fuzzer findings - negative reply length (125 ms) [ok]: corrupt payload: fuzzer findings - valgrind negative malloc (221 ms) [ok]: corrupt payload: fuzzer findings - valgrind invalid read (216 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: With min-slaves-to-write (1,3): master should be writable (1 ms) [ok]: With min-slaves-to-write (2,3): master should not be writable (0 ms) [ok]: With min-slaves-to-write function without no-write flag (1 ms) [ok]: With not enough good slaves, read in Lua script is still accepted (0 ms) [ok]: Test replication partial resync: ok after delay (diskless: no, disabled, dual-channel: no, reconnect: 1) (9563 ms) [ok]: corrupt payload: fuzzer findings - empty hash ziplist (216 ms) [ok]: corrupt payload: fuzzer findings - stream with no records (125 ms) [ok]: PSYNC2: Set #3 to replicate from #1 (1 ms) [ok]: corrupt payload: fuzzer findings - quicklist ziplist tail followed by extra data which start with 0xff (217 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [ok]: corrupt payload: fuzzer findings - dict init to huge size (216 ms) [ok]: corrupt payload: fuzzer findings - huge string (219 ms) [ok]: New Master down consecutively (21678 ms) [ok]: corrupt payload: fuzzer findings - stream PEL without consumer (217 ms) [ok]: corrupt payload: fuzzer findings - stream listpack valgrind issue (124 ms) [ok]: PSYNC2: cluster is consistent after failover (1 ms) [ok]: corrupt payload: fuzzer findings - stream with bad lpFirst (215 ms) [ok]: corrupt payload: fuzzer findings - stream listpack lpPrev valgrind issue (121 ms) [ok]: Replication backlog size can outgrow the backlog limit config dualchannel yes (2045 ms) [ok]: corrupt payload: fuzzer findings - stream with non-integer entry id (215 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, pub/sub. (2628 ms) [ok]: corrupt payload: fuzzer findings - empty quicklist (215 ms) [ok]: corrupt payload: fuzzer findings - empty zset (215 ms) [ok]: corrupt payload: fuzzer findings - hash with len of 0 (225 ms) [100/134 done]: unit/cluster/slave-selection (64 seconds) Testing integration/psync2-pingoff [ok]: With min-slaves-to-write: master not writable with lagged slave (2728 ms) [ok]: corrupt payload: fuzzer findings - hash listpack first element too long entry len (216 ms) [ok]: corrupt payload: fuzzer findings - stream double free listpack when insert dup node to rax returns 0 (217 ms) [ok]: corrupt payload: fuzzer findings - LCS OOM (215 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: corrupt payload: fuzzer findings - gcc asan reports false leak on assert (123 ms) [ok]: corrupt payload: fuzzer findings - lpFind invalid access (120 ms) [ok]: corrupt payload: fuzzer findings - invalid access in ziplist tail prevlen decoding (226 ms) [ok]: Replication of an expired key does not delete the expired key (519 ms) [ok]: PSYNC2 pingoff: setup (1002 ms) [ok]: PSYNC2 pingoff: write and wait replication (0 ms) [ok]: corrupt payload: fuzzer findings - zset zslInsert with a NAN score (217 ms) [ok]: corrupt payload: fuzzer findings - streamLastValidID panic (216 ms) [ok]: First server should have role slave after SLAVEOF (1 ms) [ok]: corrupt payload: fuzzer findings - valgrind fishy value warning (217 ms) [ok]: corrupt payload: fuzzer findings - empty set listpack (216 ms) [ok]: Replica could use replication buffer (beyond backlog config) for partial resynchronization dualchannel yes (2750 ms) [ok]: Only primary with slots has the right to mark a node as failed (19696 ms) [ok]: corrupt payload: fuzzer findings - set with duplicate elements causes sdiff to hang (217 ms) [101/134 done]: integration/corrupt-dump (15 seconds) Testing integration/convert-zipmap-hash-on-load [ok]: RDB load zipmap hash: converts to listpack (1 ms) [102/134 done]: unit/cluster/failure-marking (52 seconds) Testing integration/psync2-reg [ok]: RDB load zipmap hash: converts to hash table when hash-max-ziplist-entries is exceeded (0 ms) [ok]: RDB load zipmap hash: converts to hash table when hash-max-ziplist-value is exceeded (1 ms) [ok]: Replication backlog memory will become smaller if disconnecting with replica dualchannel yes (772 ms) [103/134 done]: integration/convert-zipmap-hash-on-load (1 seconds) Testing integration/cross-version-replication [ignore]: Other server path not provided [104/134 done]: integration/cross-version-replication (0 seconds) Testing integration/rdb [ok]: test old version rdb file (1 ms) [ok]: RDB encoding loading test (5 ms) [ok]: RDB future version loading, strict version check (0 ms) [ok]: RDB future version loading, relaxed version check (7 ms) [ok]: Manual failover vote is not limited by two times the node timeout - mixed failover (4822 ms) [ok]: Server started empty with non-existing RDB file (0 ms) [ok]: PSYNC2 #3899 regression: setup (1004 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 193841) (1 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (2 ms) [ok]: PSYNC2: --- CYCLE 5 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #3 as master (1 ms) [ok]: PSYNC2: Set #0 to replicate from #4 (1 ms) [ok]: Server started empty with empty RDB file (0 ms) [ok]: Test RDB stream encoding (119 ms) [ok]: Test RDB stream encoding - sanitize dump (10 ms) [ok]: Server should not start if RDB file can't be open (1 ms) [ok]: Server should not start if RDB is corrupted (1 ms) [ok]: Test replication with blocking lists and sorted sets operations (25004 ms) [105/134 done]: integration/block-repl (27 seconds) Testing integration/convert-ziplist-zset-on-load [ok]: Fuzzer corrupt restore payloads - sanitize_dump: no (9976 ms) [ok]: RDB load ziplist zset: converts to listpack when RDB loading (0 ms) [ok]: PSYNC2: Set #4 to replicate from #3 (0 ms) [ok]: RDB load ziplist zset: converts to skiplist when zset-max-ziplist-entries is exceeded (0 ms) [ok]: Test FLUSHALL aborts bgsave (372 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [106/134 done]: integration/convert-ziplist-zset-on-load (0 seconds) Testing integration/aof-multi-part [ok]: bgsave resets the change counter (102 ms) [ok]: Multi Part AOF can't load data when some file missing (109 ms) [ok]: bgsave cancel aborts save (126 ms) [ok]: bgsave cancel schedulled request (7 ms) [ok]: Multi Part AOF can't load data when the sequence not increase monotonically (109 ms) [ok]: Multi Part AOF can't load data when there are blank lines in the manifest file (109 ms) [ok]: Replication backlog size can outgrow the backlog limit config dualchannel no (2180 ms) [ok]: Multi Part AOF can't load data when there is a duplicate base file (110 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (type unknown) (111 ms) [ok]: Sub-replica reports zero repl offset and rank, and fails to win election - shutdown (13572 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (missing key) (112 ms) [ok]: PSYNC2: Set #1 to replicate from #2 (0 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (line too short) (111 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (line too long) (110 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (odd parameter) (113 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: PSYNC2 pingoff: pause replica and promote it (5001 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: Multi Part AOF can't load data when the manifest file is empty (113 ms) [ok]: client freed during loading (932 ms) [ok]: Multi Part AOF can start when no aof and no manifest (219 ms) [ok]: Multi Part AOF can start when we have en empty AOF dir (221 ms) [ok]: PSYNC2: Set #2 to replicate from #4 (0 ms) [ok]: Multi Part AOF can load data discontinuously increasing sequence (222 ms) [ok]: Test RDB load info (632 ms) [ok]: Multi Part AOF can load data when manifest add new k-v (221 ms) [ok]: Make the old master a replica of the new one and check conditions (1005 ms) [ok]: Multi Part AOF can load data when some AOFs are empty (222 ms) [ok]: Test replication partial resync: backlog expired (diskless: no, disabled, dual-channel: no, reconnect: 1) (9533 ms) [ok]: Multi Part AOF can load data from old version valkey (rdb preamble no) (326 ms) [ok]: PSYNC2: cluster is consistent after failover (0 ms) [ok]: Multi Part AOF can load data from old version valkey (rdb preamble yes) (325 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: no, swapdb, dual-channel: no, reconnect: 0) (9 ms) [ok]: Multi Part AOF can continue the upgrade from the interrupted upgrade state (223 ms) [ok]: Replica could use replication buffer (beyond backlog config) for partial resynchronization dualchannel no (2771 ms) [ok]: Multi Part AOF can be loaded correctly when both server dir and aof dir contain old AOF (226 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Multi Part AOF can't load data when the manifest contains the old AOF file name but the file does not exist in server dir and aof dir (115 ms) [ok]: Replication backlog memory will become smaller if disconnecting with replica dualchannel no (530 ms) [ok]: Multi Part AOF can upgrade when when two servers share the same server dir (server1) (106 ms) [ok]: Multi Part AOF can upgrade when when two servers share the same server dir (server2) (104 ms) [ok]: Test child sending info (1962 ms) [ok]: Multi Part AOF can upgrade when when two servers share the same server dir (630 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: script won't load anymore if it's in rdb (0 ms) [ok]: Multi Part AOF can handle appendfilename contains whitespaces (318 ms) [ok]: Detect write load to master (1002 ms) [ok]: Multi Part AOF can create BASE (RDB format) when server starts from empty (227 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: failed bgsave prevents writes (308 ms) [ok]: Multi Part AOF can create BASE (AOF format) when server starts from empty (219 ms) [107/134 done]: integration/rdb (7 seconds) Testing integration/replication-2 [ok]: First server should have role slave after SLAVEOF (102 ms) [ok]: If min-slaves-to-write is honored, write is accepted (0 ms) [ok]: No write if min-slaves-to-write is < attached slaves (0 ms) [ok]: If min-slaves-to-write is honored, write is accepted (again) (0 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: Changing aof-use-rdb-preamble during rewrite process (1335 ms) [ok]: Make sure aof manifest appendonly.aof.manifest not in aof directory (0 ms) [ok]: test various edge cases of repl topology changes with missing pings at the end (3520 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=no, replica diskless=disabled dual-channel-replication-enabled=no (21931 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: AOF enable will create manifest file (555 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 239409) (1 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (1 ms) [ok]: PSYNC2: Bring the master back again for next test (3 ms) [ok]: PSYNC2: Partial resync after restart using RDB aux fields (178 ms) Waiting for process 18223 to exit... [ok]: No write if min-slaves-max-lag is > of the slave lag (2826 ms) [ok]: min-slaves-to-write is ignored by slaves (1 ms) [ok]: Partial resynchronization is successful even client-output-buffer-limit is less than repl-backlog-size. dualchannel yes (4253 ms) [ok]: AOF multiple rewrite failures will open multiple INCR AOFs (1516 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: The update of replBufBlock's repl_offset is ok - Regression test for #11666 (2 ms) [108/134 done]: integration/psync2 (47 seconds) Testing integration/failover [ok]: AOF rewrite doesn't open new aof when AOF turn off (673 ms) [ok]: AOF enable/disable auto gc (206 ms) [ok]: failover command fails without connected replica (0 ms) [ok]: Replica client-output-buffer size is limited to backlog_limit/16 when no replication data is pending. dualchannel yes (1120 ms) [ok]: setup replication for following tests (103 ms) [ok]: failover command fails with invalid host (0 ms) [ok]: failover command fails with invalid port (0 ms) [ok]: failover command fails with just force and timeout (0 ms) [ok]: failover command fails when sent to a replica (0 ms) [ok]: failover command fails with force without timeout (0 ms) [ok]: AOF can produce consecutive sequence number after reload (144 ms) [ok]: Replication: commands with many arguments (issue #1221) (13062 ms) [ok]: Fuzzer corrupt restore payloads - sanitize_dump: yes (9936 ms) [109/134 done]: integration/corrupt-dump-fuzzer (20 seconds) Testing integration/aof-race [ok]: spopwithcount rewrite srem command (117 ms) [ok]: AOF enable during BGSAVE will not write data util AOFRW finish (301 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: Chained replicas disconnect when replica re-connect with the same master (2919 ms) [110/134 done]: integration/aof-race (0 seconds) Testing integration/aof [ok]: failover command to specific replica works (859 ms) [ok]: Unfinished MULTI: Server should start if load-truncated is yes (0 ms) [ok]: AOF will trigger limit when AOFRW fails many times (599 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, sharded pub/sub. (5775 ms) [ok]: Short read: Server should start if load-truncated is yes (0 ms) [ok]: Truncated AOF loaded: we expect foo to be equal to 5 (1 ms) [ok]: Append a new command after loading an incomplete AOF (0 ms) [ok]: Short read + command: Server should start (0 ms) [ok]: Truncated AOF loaded: we expect foo to be equal to 6 now (1 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: Test replication partial resync: ok psync (diskless: no, swapdb, dual-channel: no, reconnect: 1) (6432 ms) [ok]: Bad format: Server should have logged an error (0 ms) [ok]: Unfinished MULTI: Server should have logged an error (1 ms) [ok]: failover command to any replica works (855 ms) [111/134 done]: integration/psync2-pingoff (16 seconds) Testing integration/dual-channel-replication [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: Short read: Server should have logged an error (1 ms) [ok]: Short read: Utility should confirm the AOF is not valid (6 ms) [ok]: Short read: Utility should show the abnormal line num in AOF (6 ms) [ok]: Short read: Utility should be able to fix the AOF (6 ms) [ok]: Replication of SPOP command -- alsoPropagate() API (1563 ms) [ok]: Fixed AOF: Server should have been started (0 ms) [ok]: Fixed AOF: Keyspace should contain values that were parseable (1 ms) [ok]: Test dual-channel-replication-enabled replica enters handshake (0 ms) [ok]: Test dual-channel-replication-enabled enters wait_bgsave (0 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [ok]: AOF+SPOP: Server should have been started (0 ms) [ok]: AOF+SPOP: Set should have 1 member (1 ms) [ok]: failover to a replica with force works (451 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: Data divergence can happen under default conditions (3 ms) [ok]: Data divergence is allowed on writable replicas (1 ms) [ok]: AOF+SPOP: Server should have been started (1 ms) [ok]: AOF+SPOP: Set should have 1 member (0 ms) [112/134 done]: integration/replication-4 (26 seconds) Testing integration/valkey-cli [ok]: AOF+EXPIRE: Server should have been started (0 ms) [ok]: AOF+EXPIRE: List should be empty (1 ms) [ok]: Interactive CLI: INFO response should be printed raw (102 ms) [ok]: failover with timeout aborts if replica never catches up (583 ms) [ok]: failovers can be aborted (44 ms) [ok]: Server should not try to convert DEL into EXPIREAT for EXPIRE -1 (0 ms) [ok]: Interactive CLI: Status reply (100 ms) [ok]: Test dual-channel-replication-enabled replica is able to sync (907 ms) [ok]: Interactive CLI: Integer reply (100 ms) [ok]: Interactive CLI: Bulk reply (101 ms) [ok]: Partial resynchronization is successful even client-output-buffer-limit is less than repl-backlog-size. dualchannel no (3148 ms) [ok]: Interactive CLI: Multi-bulk reply (101 ms) [ok]: failover aborts if target rejects sync request (551 ms) [ok]: The update of replBufBlock's repl_offset is ok - Regression test for #11666 (2 ms) [ok]: Interactive CLI: Parsing quotes (705 ms) [ok]: AOF will open a temporary INCR AOF to accumulate data until the first AOFRW success when AOF is dynamically enabled (2939 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [113/134 done]: integration/aof-multi-part (13 seconds) [ok]: Replica client-output-buffer size is limited to backlog_limit/16 when no replication data is pending. dualchannel no (1123 ms) [114/134 done]: integration/replication-buffer (28 seconds) [115/134 done]: integration/failover (5 seconds) [ok]: Automatic failover vote is not limited by two times the node timeout - mixed failover (4129 ms) [ok]: Interactive CLI: Subscribed mode (966 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: Primary memory usage does not increase during dual-channel-replication sync (737 ms) [ok]: Steady state after dual channel sync (12 ms) [ok]: Interactive non-TTY CLI: Subscribed mode (655 ms) [ok]: Non-interactive TTY CLI: Status reply (3 ms) [ok]: Non-interactive TTY CLI: Integer reply (2 ms) [ok]: Non-interactive TTY CLI: Bulk reply (2 ms) [ok]: Non-interactive TTY CLI: Multi-bulk reply (2 ms) [ok]: Non-interactive TTY CLI: Read last argument from pipe (6 ms) [ok]: Non-interactive TTY CLI: Read last argument from file (4 ms) [ok]: Non-interactive TTY CLI: Escape character in JSON mode (18 ms) [ok]: Non-interactive non-TTY CLI: Status reply (2 ms) [ok]: Non-interactive non-TTY CLI: Integer reply (2 ms) [ok]: Non-interactive non-TTY CLI: Bulk reply (2 ms) [ok]: Non-interactive non-TTY CLI: Multi-bulk reply (2 ms) [ok]: Dual channel replication sync doesn't impair subsequent normal syncs (305 ms) [ok]: Non-interactive non-TTY CLI: ASK redirect test (53 ms) [ok]: Non-interactive non-TTY CLI: Quoted input arguments (2 ms) [ok]: Non-interactive non-TTY CLI: No accidental unquoting of input arguments (4 ms) [ok]: Non-interactive non-TTY CLI: Invalid quoted input arguments (3 ms) [ok]: Non-interactive non-TTY CLI: Read last argument from pipe (5 ms) [ok]: Non-interactive non-TTY CLI: Read last argument from file (4 ms) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - latest server (11 ms) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - no server (3 ms) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - old server (12 ms) [ok]: CLUSTER SLOT-STATS network-bytes-out, for non-slot specific commands. (2843 ms) [ok]: MASTER and SLAVE dataset should be identical after complex ops (7590 ms) [ok]: Sub-replica reports zero repl offset and rank, and fails to win election - sigstop (3346 ms) [ok]: Toggle dual-channel-replication-enabled: yes start (451 ms) [116/134 done]: integration/replication-2 (11 seconds) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: Dumping an RDB - functions only: no (2118 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: Dumping an RDB - functions only: yes (672 ms) [ok]: AOF fsync always barrier issue (5385 ms) [ok]: Scan mode (108 ms) [ok]: Online toggle dual-channel-replication-enabled on primary, starting with 'yes' (2142 ms) [ok]: GETEX should not append to AOF (1 ms) [ok]: CLUSTER SLOT-STATS network-bytes-out, for slot specific commands. (2706 ms) [ok]: Unknown command: Server should have logged an error (2 ms) [ok]: AOF+LMPOP/BLMPOP: pop elements from the list (102 ms) [ok]: Main db not affected when fail to diskless load (81168 ms) [ok]: AOF+LMPOP/BLMPOP: after pop elements from the list (1 ms) [ok]: PSYNC2 #3899 regression: verify consistency (38 ms) [ok]: AOF+ZMPOP/BZMPOP: pop elements from the zset (101 ms) [ok]: AOF+ZMPOP/BZMPOP: after pop elements from the zset (0 ms) [ok]: Test replication partial resync: no backlog (diskless: no, swapdb, dual-channel: no, reconnect: 1) (8019 ms) Waiting for process 48291 to exit... [117/134 done]: integration/psync2-reg (23 seconds) [ok]: Generate timestamp annotations in AOF (323 ms) [ok]: Successfully load AOF which has timestamp annotations inside (1 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Connecting as a replica (2123 ms) [ok]: Truncate AOF to specific timestamp (698 ms) Waiting for process 48291 to exit... [ok]: Detect write load to master (1001 ms) [ok]: Piping raw protocol (1568 ms) [ok]: Options -X with illegal argument (7 ms) [ok]: DUMP RESTORE with -x option (12 ms) [ok]: DUMP RESTORE with -X option (11 ms) Waiting for process 48291 to exit... [ok]: valkey-cli pubsub mode with single standard channel subscription (304 ms) [ok]: EVAL timeout with slow verbatim Lua script from AOF (1521 ms) [ok]: valkey-cli pubsub mode with multiple standard channel subscriptions (304 ms) [ok]: EVAL can process writes from AOF in read-only replicas (229 ms) [ok]: Test valkey-check-aof for old style resp AOF (6 ms) [ok]: Test valkey-check-aof for old style resp AOF - has data in the same format as manifest (7 ms) [ok]: Test valkey-check-aof for old style rdb-preamble AOF (7 ms) [ok]: Test valkey-check-aof for Multi Part AOF with resp AOF base (5 ms) [ok]: Test valkey-check-aof for Multi Part AOF with rdb-preamble AOF base (8 ms) [ok]: Test valkey-check-aof for Multi Part AOF contains a format error (6 ms) [ok]: Test valkey-check-aof only truncates the last file for Multi Part AOF in fix mode (12 ms) [ok]: Test valkey-check-aof only truncates the last file for Multi Part AOF in truncate-to-timestamp mode (7 ms) [ok]: valkey-cli pubsub mode with single shard channel subscription (303 ms) [ok]: FLUSHDB / FLUSHALL should persist in AOF (4 ms) [ok]: Turning appendonly on and off within a transaction (2 ms) Waiting for process 48291 to exit... [ok]: valkey-cli pubsub mode with multiple shard channel subscriptions (304 ms) [ok]: Test cluster slots / cluster shards in aof won't crash (228 ms) [ok]: valkey-cli pubsub mode with single pattern channel subscription (303 ms) [ok]: valkey-cli pubsub mode with multiple pattern channel subscriptions (243 ms) [ok]: CLUSTER SLOT-STATS network-bytes-out, blocking commands. (5227 ms) [ok]: Test command check in aof won't crash (360 ms) [118/134 done]: integration/aof (13 seconds) [ok]: valkey-cli pubsub mode when subscribing to the same channel (304 ms) Waiting for process 48291 to exit... [ok]: valkey-cli pubsub mode with multiple subscription types (658 ms) [ok]: valkey-cli make sure selected db survives connection drops (314 ms) [ok]: Valid Connection Scheme: redis:// (2 ms) [ok]: Valid Connection Scheme: valkey:// (2 ms) [119/134 done]: integration/valkey-cli (13 seconds) Waiting for process 48291 to exit... [ok]: Connect multiple replicas at the same time (issue #141), master diskless=no, replica diskless=swapdb dual-channel-replication-enabled=no (18593 ms) Waiting for process 48291 to exit... [ok]: slave buffer are counted correctly (39400 ms) Waiting for process 48291 to exit... Waiting for process 48291 to exit... [120/134 done]: unit/cluster/diskless-load-swapdb (102 seconds) [ok]: Online toggle dual-channel-replication-enabled on replica, starting with 'yes' (11143 ms) [ok]: Manual failover will reset the on-going election (5200 ms) [ok]: Test replication partial resync: ok after delay (diskless: no, swapdb, dual-channel: no, reconnect: 1) (9835 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (1001 ms) [ok]: replica buffer don't induce eviction (7075 ms) [ok]: Don't rehash if used memory exceeds maxmemory after rehash (184 ms) [ok]: client tracking don't cause eviction feedback loop (1385 ms) [ok]: propagation with eviction (97 ms) [ok]: CLUSTER SLOT-STATS network-bytes-out, replication stream egress. (2641 ms) [ok]: propagation with eviction in MULTI (94 ms) [ok]: lru/lfu value of the key just added (1 ms) [ok]: Import mode should forbid eviction (1 ms) [121/134 done]: unit/maxmemory (170 seconds) [ok]: valkey-cli make source node ignores NOREPLICAS error when doing the last CLUSTER SETSLOT - gossip (10069 ms) [ok]: Toggle dual-channel-replication-enabled: no start (10974 ms) [ok]: Test replication partial resync: backlog expired (diskless: no, swapdb, dual-channel: no, reconnect: 1) (9727 ms) [ok]: Online toggle dual-channel-replication-enabled on primary, starting with 'no' (2095 ms) [ok]: Broadcast PONG to the cluster when the node role changes (162 ms) [ok]: Slave should be able to synchronize with the master (805 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: yes, disabled, dual-channel: yes, reconnect: 0) (64 ms) [122/134 done]: unit/cluster/manual-failover (140 seconds) [ok]: Online toggle dual-channel-replication-enabled on replica, starting with 'no' (2152 ms) [ok]: Slave should be able to synchronize with the master (1812 ms) [ok]: Detect write load to master (1 ms) [ok]: dual-channel-replication with multiple replicas (4439 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=yes, replica diskless=disabled dual-channel-replication-enabled=yes (24341 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, disabled, dual-channel: yes, reconnect: 1) (6529 ms) [ok]: CLUSTER SLOT-STATS network-bytes-out, sharded pub/sub, single channel. (5084 ms) [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (0 ms) [ok]: valkey-cli make source node ignores NOREPLICAS error when doing the last CLUSTER SETSLOT - setslot (5022 ms) [ok]: Test diverse replica sync: dual-channel on/off (5541 ms) [ok]: Test replica's buffer limit reached (1515 ms) [ok]: CLUSTER SLOT-STATS network-bytes-out, sharded pub/sub, cross-slot channels. (5053 ms) [ok]: Empty primary will check and delete the dirty slots (55 ms) [123/134 done]: unit/cluster/replica-migration (162 seconds) [ok]: Test replication partial resync: no backlog (diskless: yes, disabled, dual-channel: yes, reconnect: 1) (8161 ms) [ok]: CLUSTER SLOT-STATS contains default value upon valkey-server startup (2504 ms) [ok]: Slave should be able to synchronize with the master (1813 ms) [ok]: Detect write load to master (1 ms) [ok]: dual-channel-replication fails when primary diskless disabled (1005 ms) [ok]: Test dual-channel-replication sync- psync established after rdb load (116 ms) [ok]: Cluster is up (175 ms) [ok]: Cluster is writable (79 ms) [ok]: Instance #5 is a slave (1 ms) [ok]: CLUSTER SLOT-STATS contains correct metrics upon key introduction (2580 ms) [ok]: CLUSTER SLOT-STATS contains correct metrics upon key mutation (2520 ms) [ok]: client do not break when cluster slot (3075 ms) [ok]: client can handle keys with hash tag (55 ms) [ok]: slot migration is valid from primary to another primary (63 ms) [ok]: slot migration is invalid from primary to replica (53 ms) [ok]: CLUSTER SLOT-STATS contains correct metrics upon key deletion (2562 ms) [ok]: dual-channel-replication: Primary COB growth with inactive replica (5054 ms) [ok]: Test dual-channel: primary tracking replica backlog refcount - start with empty backlog (115 ms) [ok]: Test dual-channel: primary tracking replica backlog refcount - start with backlog (536 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, disabled, dual-channel: yes, reconnect: 1) (9783 ms) [ok]: Psync established after rdb load - within grace period (148 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=yes, replica diskless=swapdb dual-channel-replication-enabled=yes (23200 ms) [ok]: CLUSTER SLOT-STATS slot visibility based on slot ownership changes (5056 ms) [ok]: Slave should be able to synchronize with the master (1812 ms) [ok]: Detect write load to master (0 ms) [ok]: Psync established after RDB load - beyond grace period (2782 ms) [ok]: CLUSTER SLOT-STATS SLOTSRANGE all slots present (1 ms) [ok]: CLUSTER SLOT-STATS SLOTSRANGE some slots missing (1 ms) Waiting for process 25279 to exit... Waiting for process 25279 to exit... [ok]: Test dual-channel-replication primary gets cob overrun before established psync (152 ms) [ok]: slot must be unbound on the owner when it is deleted (12523 ms) [124/134 done]: unit/cluster/cluster-slots (134 seconds) [ok]: Test dual-channel-replication primary gets cob overrun during replica rdb load (1033 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, disabled, dual-channel: yes, reconnect: 1) (10866 ms) [ok]: Slave should be able to synchronize with the master (807 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: yes, disabled, dual-channel: no, reconnect: 0) (64 ms) [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (0 ms) [ok]: CLUSTER SLOT-STATS ORDERBY DESC correct ordering (9920 ms) [ok]: Sync should continue if not all slaves dropped (11039 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, disabled, dual-channel: no, reconnect: 1) (6504 ms) [ok]: Slave should be able to synchronize with the master (1816 ms) [ok]: Detect write load to master (0 ms) [ok]: CLUSTER SLOT-STATS ORDERBY ASC correct ordering (10247 ms) [ok]: CLUSTER SLOT-STATS ORDERBY LIMIT correct response pagination, where limit is less than number of assigned slots (17 ms) [ok]: CLUSTER SLOT-STATS ORDERBY LIMIT correct response pagination, where limit is greater than number of assigned slots (6 ms) [ok]: CLUSTER SLOT-STATS ORDERBY arg sanity check. (1 ms) [ok]: Primary abort sync if all slaves dropped dual-channel-replication (7026 ms) [ok]: Master stream is correctly processed while the replica has a script in -BUSY state (27506 ms) [ok]: Diskless load swapdb (different replid): new database is exposed after swapping dual-channel=yes (1 ms) [ok]: Diskless load swapdb (different replid): replica enter loading dual-channel-replication-enabled=no (433 ms) [ok]: Diskless load swapdb (different replid): old database is exposed after replication fails dual-channel=no (0 ms) [ok]: Test dual-channel-replication replica main channel disconnected (1083 ms) [ok]: Test dual channel replication slave of no one after main conn kill (1 ms) [ok]: Test replication partial resync: no backlog (diskless: yes, disabled, dual-channel: no, reconnect: 1) (8159 ms) [ok]: Diskless load swapdb (async_loading): new database is exposed after swapping (0 ms) [ok]: Test dual-channel-replication replica rdb connection disconnected (1195 ms) [ok]: Test dual channel replication slave of no one after rdb conn kill (1 ms) [ok]: Slave should be able to synchronize with the master (807 ms) [ok]: Detect write load to master (0 ms) [ok]: Test dual-channel-replication primary reject set-rdb-client after client killed (1100 ms) [ok]: Diskless load swapdb (async_loading): replica enter async_loading (336 ms) [ok]: Diskless load swapdb (async_loading): old database is exposed while async replication is in progress (875 ms) [ok]: Test replica unable to join dual channel replication sync after started (1106 ms) [ok]: Busy script during async loading (875 ms) [ok]: Blocked commands and configs during async-loading (437 ms) [ok]: Diskless load swapdb (async_loading): old database is exposed after async replication fails (1 ms) Waiting for process 28487 to exit... [ok]: Replica recover rdb-connection killed (1083 ms) Waiting for process 28487 to exit... Waiting for process 28487 to exit... [ok]: Replica recover main-connection killed (1096 ms) Waiting for process 28487 to exit... [ok]: CLUSTER SLOT-STATS metrics replication for new keys (5120 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, disabled, dual-channel: no, reconnect: 1) (9685 ms) [ok]: Slave should be able to synchronize with the master (808 ms) [ok]: Detect write load to master (0 ms) [ok]: CLUSTER SLOT-STATS metrics replication for existing keys (5244 ms) [ok]: Replica notice main-connection killed during rdb load callback (6867 ms) [125/134 done]: integration/dual-channel-replication (112 seconds) [ok]: CLUSTER SLOT-STATS metrics replication for deleting keys (5329 ms) [126/134 done]: unit/cluster/slot-stats (192 seconds) [ok]: Test replication partial resync: backlog expired (diskless: yes, disabled, dual-channel: no, reconnect: 1) (9855 ms) [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (1 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: yes, swapdb, dual-channel: yes, reconnect: 0) (64 ms) [ok]: Slave should be able to synchronize with the master (807 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, swapdb, dual-channel: yes, reconnect: 1) (6506 ms) [ok]: Slave should be able to synchronize with the master (808 ms) [ok]: Detect write load to master (1 ms) [ok]: diskless loading short read (22780 ms) [ok]: Test replication partial resync: no backlog (diskless: yes, swapdb, dual-channel: yes, reconnect: 1) (8095 ms) [ok]: diskless no replicas drop during rdb pipe (7812 ms) [ok]: Slave should be able to synchronize with the master (808 ms) [ok]: Detect write load to master (0 ms) [ok]: diskless slow replicas drop during rdb pipe (3404 ms) [ok]: diskless fast replicas drop during rdb pipe (6330 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, swapdb, dual-channel: yes, reconnect: 1) (9696 ms) [ok]: diskless all replicas drop during rdb pipe (1868 ms) [ok]: Slave should be able to synchronize with the master (809 ms) [ok]: Detect write load to master (0 ms) [ok]: diskless timeout replicas drop during rdb pipe (5638 ms) [ok]: diskless replication child being killed is collected (1543 ms) [ok]: replication child dies when parent is killed - diskless: yes dual-channel-replication-enabled: yes (1163 ms) [ok]: replication child dies when parent is killed - diskless: no dual-channel-replication-enabled: no (1467 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, swapdb, dual-channel: yes, reconnect: 1) (9784 ms) [ok]: diskless replication read pipe cleanup (801 ms) [ok]: Slave should be able to synchronize with the master (808 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: yes, swapdb, dual-channel: no, reconnect: 0) (103 ms) [ok]: replicaof right after disconnection (1831 ms) [ok]: Kill rdb child process if its dumping RDB is not useful (932 ms) [ok]: Slave should be able to synchronize with the master (1814 ms) [ok]: Detect write load to master (1 ms) [ok]: Don't disconnect with replicas before loading transferred RDB when full sync with dual-channel-replication yes (4 ms) [ok]: Discard cache master before loading transferred RDB when full sync with dual-channel-replication yes (112 ms) [ok]: Don't disconnect with replicas before loading transferred RDB when full sync with dual-channel-replication no (4 ms) [ok]: Discard cache master before loading transferred RDB when full sync with dual-channel-replication no (111 ms) [ok]: replica can handle EINTR if use diskless load (657 ms) [ok]: replica do not write the reply to the replication link - SYNC (_addReplyToBufferOrList) (97 ms) [ok]: replica do not write the reply to the replication link - SYNC (addReplyDeferredLen) (147 ms) [ok]: replica do not write the reply to the replication link - PSYNC (_addReplyToBufferOrList) (58 ms) [ok]: replica do not write the reply to the replication link - PSYNC (addReplyDeferredLen) (107 ms) [ok]: PSYNC with wrong offset should throw error (3 ms) [ok]: Test replication with lazy expire (113 ms) [ok]: replica actually flushes db if use diskless load with flush-before-load dual-channel-replication-enabled=yes (615 ms) [ok]: replica actually flushes db if use diskless load with flush-before-load dual-channel-replication-enabled=no (615 ms) [ok]: Replica keep the old data if RDB file save fails in disk-based replication (115 ms) [127/134 done]: integration/replication (210 seconds) [ok]: Test replication partial resync: ok psync (diskless: yes, swapdb, dual-channel: no, reconnect: 1) (6524 ms) [ok]: Slave should be able to synchronize with the master (809 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no backlog (diskless: yes, swapdb, dual-channel: no, reconnect: 1) (8082 ms) [ok]: Slave should be able to synchronize with the master (1816 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, swapdb, dual-channel: no, reconnect: 1) (9725 ms) [ok]: Slave should be able to synchronize with the master (1815 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, swapdb, dual-channel: no, reconnect: 1) (9859 ms) [128/134 done]: integration/replication-psync (245 seconds) Testing solo test [ignore]: large memory flag not provided [ignore]: large memory flag not provided [ignore]: large memory flag not provided [ignore]: large memory flag not provided [ignore]: large memory flag not provided [ignore]: large memory flag not provided [129/134 done]: violations (1 seconds) Testing solo test [ignore]: large memory flag not provided [130/134 done]: bitops-large-memory (0 seconds) Testing solo test Jemalloc not available. Defrag tests skipped. [131/134 done]: defrag (0 seconds) Testing solo test [ignore]: large memory flag not provided [132/134 done]: list-large-memory (0 seconds) Testing solo test [ignore]: large memory flag not provided [133/134 done]: set-large-memory (0 seconds) Testing solo test [ok]: Multiple primary nodes are down, rank them based on the failed primary (18974 ms) [134/134 done]: cluster (40 seconds) The End Execution time of different units: 0 seconds - unit/oom-score-adj 0 seconds - unit/acl-v2 1 seconds - unit/pubsub 1 seconds - unit/replybufsize 1 seconds - unit/lazyfree 1 seconds - unit/protocol 1 seconds - unit/shutdown 1 seconds - unit/limits 1 seconds - unit/networking 1 seconds - unit/bitfield 1 seconds - unit/info-command 3 seconds - unit/acl 3 seconds - unit/info 4 seconds - unit/keyspace 1 seconds - unit/commandlog 1 seconds - unit/pubsubshard 2 seconds - unit/slowlog 6 seconds - unit/querybuf 3 seconds - unit/auth 10 seconds - unit/introspection-2 2 seconds - unit/tracking 11 seconds - unit/introspection 11 seconds - unit/sort 12 seconds - unit/other 0 seconds - unit/quit 0 seconds - unit/violations 13 seconds - unit/pause 7 seconds - unit/multi 0 seconds - unit/tls 3 seconds - unit/bitops 4 seconds - unit/functions 5 seconds - unit/memefficiency 19 seconds - unit/latency-monitor 5 seconds - unit/type/hash 20 seconds - unit/client-eviction 18 seconds - unit/obuf-limits 0 seconds - unit/type/incr 8 seconds - unit/type/set 16 seconds - unit/expire 27 seconds - unit/dump 5 seconds - unit/type/stream-cgroups 0 seconds - unit/cluster/cluster-response-tls 29 seconds - unit/scripting 9 seconds - unit/type/string 15 seconds - unit/type/list 20 seconds - unit/scan 20 seconds - unit/type/stream 17 seconds - unit/type/list-2 35 seconds - unit/geo 3 seconds - unit/cluster/half-migrated-slot 11 seconds - unit/cluster/sharded-pubsub 29 seconds - unit/wait 9 seconds - unit/cluster/base 16 seconds - unit/cluster/replica-in-sync 19 seconds - unit/cluster/manual-takeover 26 seconds - unit/type/zset 12 seconds - unit/cluster/misc 46 seconds - unit/aofrw 6 seconds - unit/cluster/human-announced-nodename 1 seconds - unit/cluster/shardid-propagation 11 seconds - unit/cluster/pubsubshard-slot-migration 15 seconds - unit/cluster/no-failover-option 15 seconds - unit/cluster/pubsub 12 seconds - unit/cluster/announced-endpoints 31 seconds - unit/cluster/many-slot-migration 61 seconds - unit/hyperloglog 2 seconds - unit/cluster/scripting 9 seconds - unit/cluster/info 3 seconds - unit/cluster/cluster-multiple-meets 47 seconds - unit/type/list-3 31 seconds - unit/cluster/cli 3 seconds - unit/cluster/slot-migration-response 28 seconds - unit/cluster/announce-client-ip 25 seconds - unit/cluster/cluster-reliable-meet 45 seconds - unit/cluster/failover2 13 seconds - unit/cluster/transactions-on-replica 19 seconds - unit/cluster/consistency-check 14 seconds - unit/cluster/hostnames 11 seconds - unit/cluster/pubsubshard 14 seconds - unit/cluster/cluster-shards 22 seconds - unit/cluster/update-msg 12 seconds - unit/cluster/cluster-nodes-slots 24 seconds - unit/cluster/links 2 seconds - unit/cluster/multi-slot-operations 2 seconds - integration/replica-redirect 12 seconds - unit/cluster/noaddr 33 seconds - unit/cluster/faildet 49 seconds - unit/cluster/slot-ownership 3 seconds - integration/dismiss-mem 11 seconds - integration/replication-3 33 seconds - unit/cluster/failover 84 seconds - unit/cluster/slot-migration 0 seconds - integration/convert-ziplist-hash-on-load 42 seconds - unit/cluster/slave-stop-cond 1 seconds - integration/skip-rdb-checksum 6 seconds - integration/psync2-master-restart 1 seconds - integration/logging 1 seconds - integration/valkey-benchmark 9 seconds - integration/shutdown 64 seconds - unit/cluster/slave-selection 15 seconds - integration/corrupt-dump 52 seconds - unit/cluster/failure-marking 1 seconds - integration/convert-zipmap-hash-on-load 0 seconds - integration/cross-version-replication 27 seconds - integration/block-repl 0 seconds - integration/convert-ziplist-zset-on-load 7 seconds - integration/rdb 47 seconds - integration/psync2 20 seconds - integration/corrupt-dump-fuzzer 0 seconds - integration/aof-race 16 seconds - integration/psync2-pingoff 26 seconds - integration/replication-4 13 seconds - integration/aof-multi-part 28 seconds - integration/replication-buffer 5 seconds - integration/failover 11 seconds - integration/replication-2 23 seconds - integration/psync2-reg 13 seconds - integration/aof 13 seconds - integration/valkey-cli 102 seconds - unit/cluster/diskless-load-swapdb 170 seconds - unit/maxmemory 140 seconds - unit/cluster/manual-failover 162 seconds - unit/cluster/replica-migration 134 seconds - unit/cluster/cluster-slots 112 seconds - integration/dual-channel-replication 192 seconds - unit/cluster/slot-stats 210 seconds - integration/replication 245 seconds - integration/replication-psync 1 seconds - violations 0 seconds - bitops-large-memory 0 seconds - defrag 0 seconds - list-large-memory 0 seconds - set-large-memory 40 seconds - cluster \o/ All tests passed without errors! Cleanup: may take some time... OK make[1]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/src' >>> valkey: Entering fakeroot... cd src && make install make[1]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/src' INSTALL valkey-sentinel INSTALL valkey-check-rdb Hint: It's a good idea to run 'make test' ;) INSTALL valkey-server INSTALL valkey-benchmark INSTALL valkey-cli INSTALL SYMLINK redis-server -> valkey-server INSTALL SYMLINK redis-cli -> valkey-cli INSTALL SYMLINK redis-benchmark -> valkey-benchmark INSTALL SYMLINK redis-check-rdb -> valkey-check-rdb INSTALL SYMLINK redis-check-aof -> valkey-check-aof INSTALL SYMLINK redis-sentinel -> valkey-sentinel make[1]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/src' >>> valkey-benchmark*: Running split function benchmark... 'usr/bin/valkey-benchmark' -> '/home/buildozer/aports/main/valkey/pkg/valkey-benchmark/usr/bin/valkey-benchmark' >>> valkey-benchmark*: Preparing subpackage valkey-benchmark... >>> valkey-benchmark*: Stripping binaries >>> valkey-benchmark*: Running postcheck for valkey-benchmark >>> valkey-cli*: Running split function cli... 'usr/bin/valkey-cli' -> '/home/buildozer/aports/main/valkey/pkg/valkey-cli/usr/bin/valkey-cli' >>> valkey-cli*: Preparing subpackage valkey-cli... >>> valkey-cli*: Stripping binaries >>> valkey-cli*: Running postcheck for valkey-cli >>> valkey-compat*: Running split function compat... 'usr/bin/redis-benchmark' -> '/home/buildozer/aports/main/valkey/pkg/valkey-compat/usr/bin/redis-benchmark' 'usr/bin/redis-check-aof' -> '/home/buildozer/aports/main/valkey/pkg/valkey-compat/usr/bin/redis-check-aof' 'usr/bin/redis-check-rdb' -> '/home/buildozer/aports/main/valkey/pkg/valkey-compat/usr/bin/redis-check-rdb' 'usr/bin/redis-cli' -> '/home/buildozer/aports/main/valkey/pkg/valkey-compat/usr/bin/redis-cli' 'usr/bin/redis-sentinel' -> '/home/buildozer/aports/main/valkey/pkg/valkey-compat/usr/bin/redis-sentinel' 'usr/bin/redis-server' -> '/home/buildozer/aports/main/valkey/pkg/valkey-compat/usr/bin/redis-server' >>> valkey-compat*: Preparing subpackage valkey-compat... >>> valkey-compat*: Script found. /bin/sh added as a dependency for valkey-compat-8.1.1-r0.apk >>> valkey-compat*: Adding .pre-install >>> valkey-compat*: Running postcheck for valkey-compat >>> valkey-openrc*: Running split function openrc... 'etc/conf.d' -> '/home/buildozer/aports/main/valkey/pkg/valkey-openrc/etc/conf.d' 'etc/init.d' -> '/home/buildozer/aports/main/valkey/pkg/valkey-openrc/etc/init.d' >>> valkey-openrc*: Preparing subpackage valkey-openrc... >>> valkey-openrc*: Running postcheck for valkey-openrc >>> valkey*: Running postcheck for valkey >>> valkey*: Preparing package valkey... >>> valkey*: Stripping binaries >>> valkey*: Script found. /bin/sh added as a dependency for valkey-8.1.1-r0.apk >>> valkey*: Adding .pre-install >>> valkey*: Adding .post-install >>> valkey-benchmark*: Scanning shared objects >>> valkey-cli*: Scanning shared objects >>> valkey-compat*: Scanning shared objects >>> valkey-openrc*: Scanning shared objects >>> valkey*: Scanning shared objects >>> valkey-benchmark*: Tracing dependencies... so:libc.musl-x86.so.1 so:libcrypto.so.3 so:libssl.so.3 >>> valkey-benchmark*: Package size: 301.7 KB >>> valkey-benchmark*: Compressing data... >>> valkey-benchmark*: Create checksum... >>> valkey-benchmark*: Create valkey-benchmark-8.1.1-r0.apk >>> valkey-cli*: Tracing dependencies... so:libc.musl-x86.so.1 so:libcrypto.so.3 so:libssl.so.3 >>> valkey-cli*: Package size: 489.3 KB >>> valkey-cli*: Compressing data... >>> valkey-cli*: Create checksum... >>> valkey-cli*: Create valkey-cli-8.1.1-r0.apk >>> valkey-compat*: Tracing dependencies... !redis !redict-compat /bin/sh valkey-cli=8.1.1-r0 valkey=8.1.1-r0 >>> valkey-compat*: Package size: 1.0 B >>> valkey-compat*: Compressing data... >>> valkey-compat*: Create checksum... >>> valkey-compat*: Create valkey-compat-8.1.1-r0.apk >>> valkey-openrc*: Tracing dependencies... >>> valkey-openrc*: Package size: 2.3 KB >>> valkey-openrc*: Compressing data... >>> valkey-openrc*: Create checksum... >>> valkey-openrc*: Create valkey-openrc-8.1.1-r0.apk >>> valkey*: Tracing dependencies... /bin/sh so:libc.musl-x86.so.1 so:libcrypto.so.3 so:libssl.so.3 >>> valkey*: Package size: 2.9 MB >>> valkey*: Compressing data... >>> valkey*: Create checksum... >>> valkey*: Create valkey-8.1.1-r0.apk >>> valkey: Build complete at Tue, 13 May 2025 23:37:13 +0000 elapsed time 0h 7m 11s >>> valkey: Cleaning up srcdir >>> valkey: Cleaning up pkgdir >>> valkey: Uninstalling dependencies... (1/8) Purging .makedepends-valkey (20250513.233002) (2/8) Purging linux-headers (6.14.2-r0) (3/8) Purging openssl-dev (3.5.0-r0) (4/8) Purging tcl (8.6.16-r0) (5/8) Purging tzdata (2025b-r0) (6/8) Purging procps-ng (4.0.4-r2) (7/8) Purging libintl (0.24.1-r0) (8/8) Purging libproc2 (4.0.4-r2) Executing busybox-1.37.0-r17.trigger OK: 400 MiB in 104 packages >>> valkey: Updating the main/x86 repository index... >>> valkey: Signing the index...