>>> valkey: Building main/valkey 8.1.1-r2 (using abuild 3.16.0_rc4-r0) started Fri, 17 Oct 2025 21:41:41 +0000 >>> valkey: Validating /home/buildozer/aports/main/valkey/APKBUILD... >>> valkey: Analyzing dependencies... >>> valkey: Installing for build: build-base linux-headers openssl-dev tcl procps ( 1/10) Installing linux-headers (6.16.12-r0) ( 2/10) Installing openssl-dev (3.5.4-r0) ( 3/10) Installing tzdata (2025b-r0) ( 4/10) Installing tcl (8.6.17-r0) ( 5/10) Installing libintl (0.24.1-r1) ( 6/10) Installing skalibs-libs (2.14.4.0-r0) ( 7/10) Installing utmps-libs (0.1.3.1-r0) ( 8/10) Installing libproc2 (4.0.4-r3) ( 9/10) Installing procps-ng (4.0.4-r3) (10/10) Installing .makedepends-valkey (20251017.214142) busybox-1.37.0-r24.trigger: Executing script... usr_merge_nag.sh: * WARNING: The current system is not /usr-merged. You are encouraged to usr_merge_nag.sh: * migrate manually to ensure the best-possible support. See usr_merge_nag.sh: * https://alpinelinux.org/posts/2025-10-01-usr-merge.html for more details OK: 301 MiB in 112 packages >>> valkey: Cleaning up srcdir >>> valkey: Cleaning up pkgdir >>> valkey: Cleaning up tmpdir >>> valkey: Fetching https://distfiles.alpinelinux.org/distfiles/v3.23/valkey-8.1.1.tar.gz /var/cache/distfiles/v3.23/valkey-8.1.1.tar.gz: OK /home/buildozer/aports/main/valkey/valkey.conf.patch: OK /home/buildozer/aports/main/valkey/sentinel.conf.patch: OK /home/buildozer/aports/main/valkey/valkey.initd: OK /home/buildozer/aports/main/valkey/valkey.confd: OK /home/buildozer/aports/main/valkey/valkey-sentinel.initd: OK /home/buildozer/aports/main/valkey/valkey-sentinel.confd: OK /home/buildozer/aports/main/valkey/CVE-2025-27151.patch: OK /home/buildozer/aports/main/valkey/CVE-2025-32023.patch: OK /home/buildozer/aports/main/valkey/CVE-2025-48367.patch: OK >>> valkey: Fetching https://distfiles.alpinelinux.org/distfiles/v3.23/valkey-8.1.1.tar.gz /var/cache/distfiles/v3.23/valkey-8.1.1.tar.gz: OK /home/buildozer/aports/main/valkey/valkey.conf.patch: OK /home/buildozer/aports/main/valkey/sentinel.conf.patch: OK /home/buildozer/aports/main/valkey/valkey.initd: OK /home/buildozer/aports/main/valkey/valkey.confd: OK /home/buildozer/aports/main/valkey/valkey-sentinel.initd: OK /home/buildozer/aports/main/valkey/valkey-sentinel.confd: OK /home/buildozer/aports/main/valkey/CVE-2025-27151.patch: OK /home/buildozer/aports/main/valkey/CVE-2025-32023.patch: OK /home/buildozer/aports/main/valkey/CVE-2025-48367.patch: OK >>> valkey: Unpacking /var/cache/distfiles/v3.23/valkey-8.1.1.tar.gz... >>> valkey: valkey.conf.patch patching file valkey.conf >>> valkey: sentinel.conf.patch patching file sentinel.conf >>> valkey: CVE-2025-27151.patch patching file src/valkey-check-aof.c >>> valkey: CVE-2025-32023.patch patching file src/hyperloglog.c Hunk #1 succeeded at 602 (offset -17 lines). Hunk #2 succeeded at 622 (offset -17 lines). Hunk #3 succeeded at 653 (offset -17 lines). Hunk #4 succeeded at 950 (offset -17 lines). Hunk #5 succeeded at 1255 (offset -114 lines). Hunk #6 succeeded at 1290 (offset -114 lines). patching file tests/unit/hyperloglog.tcl >>> valkey: CVE-2025-48367.patch patching file src/anet.c Hunk #1 succeeded at 639 (offset -20 lines). patching file src/anet.h Hunk #1 succeeded at 74 with fuzz 2. patching file src/cluster_legacy.c Hunk #1 succeeded at 1502 (offset -83 lines). patching file src/socket.c Hunk #1 succeeded at 322 (offset -1 lines). patching file src/tls.c Hunk #1 succeeded at 789 (offset -2 lines). patching file src/unix.c Hunk #1 succeeded at 107 (offset -11 lines). 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 -funwind-tables >> .make-settings echo LDFLAGS=-Wl,--as-needed,-O1,--sort-common >> .make-settings echo SERVER_CFLAGS= >> .make-settings echo SERVER_LDFLAGS= >> .make-settings echo PREV_FINAL_CFLAGS=-pedantic -std=gnu11 -Wall -W -Wno-missing-field-initializers -Werror=deprecated-declarations -Wstrict-prototypes -O3 -flto=auto -ffat-lto-objects -fno-omit-frame-pointer -g -ggdb -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -I../deps/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 -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 -funwind-tables" > .make-cflags) (echo "-Wl,--as-needed,-O1,--sort-common" > .make-ldflags) MAKE hiredis cd hiredis && make static USE_SSL=1 MAKE linenoise MAKE lua cd linenoise && make cd lua/src && make all CFLAGS="-Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 " MYLDFLAGS="-Wl,--as-needed,-O1,--sort-common" AR="ar rc" MAKE hdr_histogram cd hdr_histogram && make make[3]: Entering directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps/hiredis' 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 -funwind-tables -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 -funwind-tables -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/lua/src' cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lapi.o lapi.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lcode.o lcode.c 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 -funwind-tables -c fpconv_dtoa.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ldebug.o ldebug.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ldo.o ldo.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ldump.o ldump.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lfunc.o lfunc.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lgc.o lgc.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -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 -funwind-tables -O2 -c -o llex.o llex.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lmem.o lmem.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -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 -funwind-tables -O2 -c -o lobject.o lobject.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -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 -funwind-tables -O2 -c -o lopcodes.o lopcodes.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -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 -funwind-tables -O2 -c -o lparser.o lparser.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -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 -funwind-tables -O2 -c -o lstate.o lstate.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DHIREDIS_TEST_SSL -Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -g -ggdb -pedantic read.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lstring.o lstring.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -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 -funwind-tables -O2 -c -o ltable.o ltable.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -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 -funwind-tables -O2 -c -o ltm.o ltm.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lundump.o lundump.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lvm.o lvm.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lzio.o lzio.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o strbuf.o strbuf.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o fpconv.o fpconv.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lauxlib.o lauxlib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lbaselib.o lbaselib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ldblib.o ldblib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o liolib.o liolib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lmathlib.o lmathlib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o loslib.o loslib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ltablib.o ltablib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lstrlib.o lstrlib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o loadlib.o loadlib.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o linit.o linit.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lua_cjson.o lua_cjson.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lua_struct.o lua_struct.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lua_cmsgpack.o lua_cmsgpack.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lua_bit.o lua_bit.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lua.o lua.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o luac.o luac.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o print.o print.c 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/linenoise' make[3]: Leaving directory '/home/buildozer/aports/main/valkey/src/valkey-8.1.1/deps/hdr_histogram' ar rcs libhiredis.a alloc.o net.o hiredis.o sds.o async.o read.o sockcompat.o ar rc liblua.a lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o strbuf.o fpconv.o lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o loslib.o ltablib.o lstrlib.o loadlib.o linit.o lua_cjson.o lua_struct.o lua_cmsgpack.o lua_bit.o # DLL needs all object files ranlib liblua.a cc -o lua -Wl,--as-needed,-O1,--sort-common lua.o liblua.a -lm ar rcs libhiredis_ssl.a ssl.o cc -o luac -Wl,--as-needed,-O1,--sort-common luac.o print.o liblua.a -lm 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 CC rand.o CC memtest.o CC syscheck.o CC crcspeed.o CC crccombine.o CC crc64.o CC bitops.o CC sentinel.o CC notify.o CC setproctitle.o CC blocked.o CC hyperloglog.o CC latency.o CC sparkline.o CC valkey-check-rdb.o CC valkey-check-aof.o CC geo.o CC lazyfree.o CC module.o CC evict.o CC expire.o CC geohash.o CC geohash_helper.o CC childinfo.o CC allocator_defrag.o CC siphash.o CC defrag.o CC rax.o CC t_stream.o CC listpack.o CC localtime.o CC lolwut.o CC lolwut5.o CC lolwut6.o CC acl.o CC tracking.o valkey-check-aof.c: In function 'processAnnotations': valkey-check-aof.c:196:59: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 196 | printf("AOF %s has nothing before timestamp %ld, " | ~~^ | | | long int | %lld 197 | "aborting...\n", 198 | filename, to_timestamp); | ~~~~~~~~~~~~ | | | time_t {aka long long int} valkey-check-aof.c:202:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 202 | printf("Failed to truncate AOF %s to timestamp %ld to offset %ld because it is not the last file.\n", | ~~^ | | | long int | %lld 203 | filename, to_timestamp, (long int)epos); | ~~~~~~~~~~~~ | | | time_t {aka long long int} valkey-check-aof.c:211:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 211 | printf("Failed to truncate AOF %s to timestamp %ld\n", filename, to_timestamp); | ~~^ ~~~~~~~~~~~~ | | | | long int time_t {aka long long int} | %lld valkey-check-aof.c: In function 'checkSingleAof': valkey-check-aof.c:299:59: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 299 | printf("Truncate nothing in AOF %s to timestamp %ld\n", aof_filename, to_timestamp); | ~~^ ~~~~~~~~~~~~ | | | | long int time_t {aka long long int} | %lld valkey-check-aof.c: In function 'printAofStyle': valkey-check-aof.c:449:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 449 | printf("Successfully truncated AOF %s to timestamp %ld\n", aofFileName, to_timestamp); | ~~^ ~~~~~~~~~~~~ | | | | long int time_t {aka long long int} | %lld CC socket.o CC tls.o CC sha256.o CC timeout.o CC setcpuaffinity.o CC monotonic.o CC mt19937-64.o CC resp_parser.o CC call_reply.o CC script.o CC functions.o CC commands.o CC strl.o CC connection.o CC unix.o CC logreqres.o CC rdma.o CC lua/script_lua.o CC scripting_engine.o CC lua/function_lua.o CC lua/engine_lua.o CC lua/debug_lua.o CC valkey-cli.o CC serverassert.o CC cli_common.o CC cli_commands.o CC valkey-benchmark.o tracking.c: In function 'enableTracking': tracking.c:181:6: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 181 | void enableTracking(client *c, uint64_t redirect_to, struct ClientFlags options, robj **prefix, size_t numprefix) { | ^~~~~~~~~~~~~~ networking.c: In function 'acceptCommonHandler': networking.c:1488:6: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 1488 | void acceptCommonHandler(connection *conn, struct ClientFlags flags, char *ip) { | ^~~~~~~~~~~~~~~~~~~ LINK valkey-benchmark networking.c: In function 'clientTrackingCommand': networking.c:4167:9: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 4167 | enableTracking(c, redir, options, prefix, numprefix); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ LINK valkey-server LINK valkey-cli tracking.c: In function 'enableTracking': tracking.c:181:6: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 181 | void enableTracking(client *c, uint64_t redirect_to, struct ClientFlags options, robj **prefix, size_t numprefix) { | ^ networking.c: In function 'acceptCommonHandler': networking.c:1488:6: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 1488 | void acceptCommonHandler(connection *conn, struct ClientFlags flags, char *ip) { | ^ networking.c: In function 'clientTrackingCommand': networking.c:4167:9: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 4167 | enableTracking(c, redir, options, prefix, numprefix); | ^ INSTALL valkey-check-rdb INSTALL valkey-sentinel 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 tracking.c: In function 'enableTracking': tracking.c:181:6: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 181 | void enableTracking(client *c, uint64_t redirect_to, struct ClientFlags options, robj **prefix, size_t numprefix) { | ^ networking.c: In function 'acceptCommonHandler': networking.c:1488:6: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 1488 | void acceptCommonHandler(connection *conn, struct ClientFlags flags, char *ip) { | ^ networking.c: In function 'clientTrackingCommand': networking.c:4167:9: note: parameter passing for argument of type 'struct ClientFlags' changed in GCC 9.1 4167 | enableTracking(c, redir, options, prefix, numprefix); | ^ INSTALL valkey-check-aof Cleanup: may take some time... OK Starting test server at port 21079 [ready]: 69713 Testing unit/introspection-2 [ready]: 69715 Testing unit/aofrw [ready]: 69714 Testing unit/protocol [ready]: 69717 Testing unit/obuf-limits [ready]: 69716 Testing unit/scan [ready]: 69719 Testing unit/scripting [ready]: 69718 Testing unit/hyperloglog [ready]: 69720 Testing unit/functions [ready]: 69721 Testing unit/wait [ready]: 69723 Testing unit/commandlog [ready]: 69722 Testing unit/other [ready]: 69724 Testing unit/replybufsize [ready]: 69725 Testing unit/keyspace [ready]: 69726 Testing unit/oom-score-adj [ready]: 69727 Testing unit/memefficiency [ready]: 69728 Testing unit/pubsub [ignore]: CVE-2025-32023: Sparse HLL XZERO overflow triggers crash: large memory flag not provided [ok]: CONFIG SET client-output-buffer-limit (1 ms) [ok]: COMMANDLOG - check that it starts with an empty log (0 ms) [ok]: The microsecond part of the TIME command will not overflow (0 ms) [ok]: FUNCTION - Basic usage (1 ms) [ok]: DEL against a single item (0 ms) [ok]: FUNCTION - Load with unknown argument (0 ms) [ok]: FUNCTION - Create an already exiting library raise error (0 ms) [ok]: FUNCTION - Create an already exiting library raise error (case insensitive) (0 ms) [ok]: FUNCTION - Create a library with wrong name format (0 ms) [ok]: Vararg DEL (0 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (1 ms) [ok]: FUNCTION - Create library with unexisting engine (1 ms) [ok]: FUNCTION - Test uncompiled script (0 ms) [ok]: Untagged multi-key commands (0 ms) [ok]: EVAL - Return _G (0 ms) [ok]: Coverage: HELP commands (2 ms) [ok]: FUNCTION - test replace argument (0 ms) [ok]: Pub/Sub PING on RESP2 (0 ms) [ok]: EVAL - Return table with a metatable that raise error (0 ms) [ok]: FUNCTION - test function case insensitive (0 ms) [ok]: KEYS with pattern (0 ms) [ok]: FUNCTION - test replace argument with failure keeps old libraries (0 ms) [ok]: EVAL - Return table with a metatable that call server (0 ms) [ok]: Coverage: MEMORY MALLOC-STATS (0 ms) [ok]: KEYS to get all keys (0 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (0 ms) [ok]: FUNCTION - test function delete (0 ms) [ok]: DBSIZE (0 ms) [ok]: Coverage: MEMORY PURGE (1 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (0 ms) [ok]: FUNCTION - test fcall bad arguments (0 ms) [ok]: Coverage: ECHO (0 ms) [ok]: FUNCTION - test fcall bad number of keys arguments (0 ms) [ok]: Pub/Sub PING on RESP3 (0 ms) [ok]: EVAL - Lua true boolean -> Redis protocol type conversion (0 ms) [ok]: FUNCTION - test fcall negative number of keys (0 ms) [ok]: FUNCTION - test delete on not exiting library (0 ms) [ok]: EVAL - Lua false boolean -> Redis protocol type conversion (0 ms) [ok]: KEYS with hashtag (0 ms) [ok]: FUNCTION - test function kill when function is not running (0 ms) [ok]: EVAL - Lua status code reply -> Redis protocol type conversion (0 ms) [ok]: FUNCTION - test wrong subcommand (0 ms) [ok]: EVAL - Lua error reply -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua table -> Redis protocol type conversion (1 ms) [ok]: PUBLISH/SUBSCRIBE basics (1 ms) [ok]: DEL all keys (1 ms) [ok]: EVAL - Are the KEYS and ARGV arrays populated correctly? (0 ms) [ok]: KEYS with empty DB (0 ms) [ok]: EVAL - is Lua able to call Redis API? (0 ms) [ok]: PUBLISH/SUBSCRIBE with two clients (0 ms) [ok]: EVAL - Redis integer -> Lua type conversion (0 ms) [ok]: SAVE - make sure there are all the types as values (2 ms) [ok]: EVAL - Lua number -> Redis integer conversion (0 ms) [ok]: FUNCTION - test loading from rdb (2 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (0 ms) [ok]: PUBLISH/SUBSCRIBE after UNSUBSCRIBE without arguments (0 ms) [ok]: EVAL - Redis multi bulk -> Lua type conversion (1 ms) [ok]: SUBSCRIBE to one channel more than once (1 ms) [ok]: EVAL - Redis status reply -> Lua type conversion (0 ms) [ok]: UNSUBSCRIBE from non-subscribed channels (0 ms) [ok]: EVAL - Redis error reply -> Lua type conversion (0 ms) [ok]: EVAL - Redis nil bulk reply -> Lua type conversion (0 ms) [ok]: EVAL - Is the Lua client using the currently selected DB? (1 ms) [ok]: FUNCTION - test debug reload different options (2 ms) [ok]: EVAL - SELECT inside Lua should not affect the caller (0 ms) [ok]: PUBLISH/PSUBSCRIBE basics (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]: PUBLISH/PSUBSCRIBE with two clients (1 ms) [ok]: EVAL - Scripts do not block on brpoplpush command (0 ms) [ok]: EVAL - Scripts do not block on blmove command (0 ms) [ok]: PUBLISH/PSUBSCRIBE after PUNSUBSCRIBE without arguments (0 ms) [ok]: FUNCTION - test debug reload with nosave and noflush (2 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (1 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (0 ms) [ok]: FUNCTION - test flushall and flushdb do not clean functions (0 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (0 ms) [ok]: FUNCTION - test function dump and restore (1 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (1 ms) [ok]: FUNCTION - test function dump and restore with flush argument (0 ms) [ok]: CONFIG SET oom-score-adj works as expected (8 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (0 ms) [ok]: FUNCTION - test function dump and restore with append argument (1 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (1 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option -- non empty stream (0 ms) [ok]: FUNCTION - test function dump and restore with replace argument (0 ms) [ok]: EVAL - Scripts can run non-deterministic commands (0 ms) [ok]: CONFIG SET oom-score-adj handles configuration failures (0 ms) [ok]: FUNCTION - test function restore with bad payload do not drop existing functions (1 ms) [ok]: EVAL - No arguments to redis.call/pcall is considered an error (0 ms) [ok]: FUNCTION - test function restore with wrong number of arguments (0 ms) [ok]: CONFIG SET oom-score-adj-values doesn't touch proc when disabled (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: FUNCTION - test fcall_ro with write command (0 ms) [ok]: CONFIG SET oom score restored on disable (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: FUNCTION - test fcall_ro with read only commands (0 ms) [ok]: CONFIG SET oom score relative and absolute (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ignore]: EVAL - JSON string encoding a string larger than 2GB: large memory flag not provided [ok]: FUNCTION - test keys and argv (1 ms) [ok]: EVAL - JSON numeric decoding (1 ms) [ok]: CONFIG SET out-of-range oom score (1 ms) [ok]: FUNCTION - test command get keys on fcall (0 ms) [ok]: FUNCTION - test command get keys on fcall_ro (0 ms) [ok]: EVAL - JSON string decoding (0 ms) [ok]: EVAL - JSON smoke test (0 ms) [ok]: EVAL - cmsgpack can pack double? (0 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [ok]: Handle an empty query (43 ms) [ok]: {standalone} SCAN basic (50 ms) [ok]: Negative multibulk length (41 ms) [ok]: Out of range multibulk length (0 ms) [ok]: Wrong multibulk payload header (1 ms) [ok]: Negative multibulk payload length (0 ms) [ok]: Out of range multibulk payload length (1 ms) [ok]: Non-number multibulk payload length (0 ms) [ok]: Multi bulk request not followed by bulk arguments (0 ms) [ok]: Generic wrong number of args (1 ms) [ok]: Unbalanced number of quotes (0 ms) [ok]: PubSub messages with CLIENT REPLY OFF (84 ms) [ok]: PUNSUBSCRIBE from non-subscribed channels (1 ms) [ok]: NUMSUB returns numbers, not strings (#1561) (0 ms) [ok]: NUMPATs returns the number of unique patterns (1 ms) [ok]: Mix SUBSCRIBE and PSUBSCRIBE (0 ms) [ok]: PUNSUBSCRIBE and UNSUBSCRIBE should always reply (0 ms) [1/128 done]: unit/oom-score-adj (0 seconds) Testing unit/querybuf [ok]: {standalone} SCAN COUNT (53 ms) [ok]: Protocol desync regression test #1 (41 ms) [ok]: Keyspace notifications: we receive keyspace notifications (42 ms) [ok]: {standalone} SCAN MATCH (44 ms) [ok]: Protocol desync regression test #2 (41 ms) [ok]: Keyspace notifications: we receive keyevent notifications (42 ms) [ok]: Keyspace notifications: we can receive both kind of events (1 ms) [ok]: Keyspace notifications: we are able to mask events (0 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 (0 ms) [ok]: Keyspace notifications: hash events test (1 ms) [ok]: Keyspace notifications: stream events test (1 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (180 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (0 ms) [ok]: EVAL - Numerical sanity check from bitop (1 ms) [ok]: EVAL - Verify minimal bitop functionality (1 ms) [ok]: EVAL - Able to parse trailing comments (0 ms) [ok]: EVAL_RO - Successful case (0 ms) [ok]: EVAL_RO - Cannot run write commands (1 ms) [ok]: redis.sha1hex() implementation (0 ms) [ok]: COMMANDLOG - only logs commands exceeding the threshold (201 ms) [ok]: COMMANDLOG - zero max length is correctly handled (5 ms) [ok]: Protocol desync regression test #3 (41 ms) [ok]: {standalone} SCAN TYPE (64 ms) [ok]: COMMANDLOG - max entries is correctly handled (5 ms) [ok]: COMMANDLOG - GET optional argument to limit output len works (5 ms) [ok]: Setup slave (101 ms) [ok]: COMMANDLOG - RESET subcommand works (0 ms) [ok]: WAIT out of range timeout (milliseconds) (1 ms) [ok]: WAIT should acknowledge 1 additional copy of the data (0 ms) [ok]: Protocol desync regression test #4 (41 ms) [ok]: raw protocol response (0 ms) [ok]: raw protocol response - deferred (0 ms) [ok]: raw protocol response - multiline (0 ms) [ok]: RESP3 attributes (1 ms) [ok]: RESP3 attributes readraw (0 ms) [ok]: RESP3 attributes on RESP2 (0 ms) [ok]: test big number parsing (1 ms) [ok]: {standalone} SCAN unknown type (41 ms) [ok]: test bool parsing (0 ms) [ok]: test verbatim str parsing (0 ms) [ok]: test large number of args (30 ms) [ok]: test argument rewriting - issue 9598 (1 ms) [ok]: {standalone} SCAN with expired keys (52 ms) [ok]: Memory efficiency with values in range 32 (332 ms) [ok]: {standalone} SCAN with expired keys with TYPE filter (52 ms) [ok]: {standalone} SSCAN with encoding intset (1 ms) [ok]: {standalone} SSCAN with encoding listpack (2 ms) [ok]: {standalone} SSCAN with encoding hashtable (2 ms) [ok]: {standalone} HSCAN with encoding listpack (2 ms) [ok]: Keyspace notifications: expired events (triggered expire) (201 ms) [ok]: HELLO without protover (1 ms) [ok]: HELLO and availability-zone (0 ms) [ok]: FUNCTION - test function kill (404 ms) [ok]: COMMANDLOG - logged entry sanity check (201 ms) [ok]: COMMANDLOG slow - Certain commands are omitted that contain sensitive information (2 ms) [ok]: COMMANDLOG slow - Some commands can redact sensitive fields (1 ms) [ok]: FUZZ stresser with data model binary (416 ms) [ok]: COMMANDLOG slow - Rewritten commands are logged as their original command (3 ms) [ok]: COMMANDLOG slow - commands with too many arguments are trimmed (0 ms) [ok]: COMMANDLOG slow - too long arguments are trimmed (1 ms) [ok]: {standalone} HSCAN with encoding hashtable (72 ms) [ok]: {standalone} ZSCAN with encoding listpack (2 ms) [ok]: HyperLogLog self test passes (480 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 (1 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 (0 ms) [ok]: Keyspace notifications: expired events (background expire) (109 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 (0 ms) [ok]: publish to self inside multi (1 ms) [ok]: publish to self inside script (0 ms) [ok]: unsubscribe inside multi, and publish to self (1 ms) [ok]: {standalone} ZSCAN with encoding skiplist (72 ms) [ok]: {standalone} SCAN guarantees check under write load (15 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 (0 ms) [ok]: {standalone} ZSCAN with PATTERN (1 ms) [ok]: {standalone} ZSCAN with NOSCORES (0 ms) [2/128 done]: unit/pubsub (0 seconds) Testing unit/pubsubshard [ok]: COMMANDLOG slow - EXEC is not logged, just executed commands (201 ms) [ok]: Regression for a crash with blocking ops and pipelining (1 ms) [ok]: verify reply buffer limits (646 ms) [ok]: Memory efficiency with values in range 64 (336 ms) [3/128 done]: unit/replybufsize (0 seconds) Testing unit/info-command [ok]: SPUBLISH/SSUBSCRIBE basics (1 ms) [ok]: SPUBLISH/SSUBSCRIBE with two clients (1 ms) [ok]: SPUBLISH/SSUBSCRIBE after UNSUBSCRIBE without arguments (1 ms) [ok]: SSUBSCRIBE to one channel more than once (0 ms) [ok]: SUNSUBSCRIBE from non-subscribed channels (1 ms) [ok]: PUBSUB command basics (0 ms) [4/128 done]: unit/protocol (0 seconds) Testing unit/networking [ok]: SPUBLISH/SSUBSCRIBE with two clients (1 ms) [ok]: SPUBLISH/SSUBSCRIBE with PUBLISH/SUBSCRIBE (1 ms) [ok]: PubSubShard with CLIENT REPLY OFF (83 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]: FUNCTION - test script kill not working on function (404 ms) [ok]: info command with multiple sub-sections (1 ms) [ok]: COMMANDLOG slow - can clean older entries (201 ms) [ok]: HyperLogLogs are promote from sparse to dense (355 ms) [ok]: Change hll-sparse-max-bytes (0 ms) [ok]: FUZZ stresser with data model alpha (438 ms) [ok]: Hyperloglog promote to dense well in different hll-sparse-max-bytes (36 ms) [5/128 done]: unit/info-command (1 seconds) Testing unit/sort [ok]: CONFIG SET port number (216 ms) [ok]: {standalone} ZSCAN scores: regression test for issue #2175 (436 ms) [ok]: Memory efficiency with values in range 128 (340 ms) [ok]: Listpack: SORT BY key (1 ms) [ok]: Listpack: SORT BY key with limit (0 ms) [ok]: Listpack: SORT BY hash field (0 ms) [ok]: DEL against expired key (1101 ms) [ok]: EXISTS (1 ms) [ok]: Zero length value in key. SET/GET/EXISTS (0 ms) [ok]: Commands pipelining (0 ms) [ok]: Non existing command (0 ms) [ok]: RENAME basic usage (1 ms) [ok]: RENAME source key should no longer exist (0 ms) [ok]: RENAME against already existing key (0 ms) [ok]: RENAMENX basic usage (0 ms) [ok]: RENAMENX against already existing key (1 ms) [ok]: RENAMENX against already existing key (2) (0 ms) [ok]: RENAME against non existing source key (0 ms) [ok]: RENAME where source and dest key are the same (existing) (0 ms) [ok]: RENAMENX where source and dest key are the same (existing) (0 ms) [ok]: RENAME where source and dest key are the same (non existing) (0 ms) [ok]: RENAME with volatile key, should move the TTL as well (1 ms) [ok]: RENAME with volatile key, should not inherit TTL of target key (0 ms) [ok]: DEL all keys again (DB 0) (1 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 (1 ms) [ok]: COPY basic usage for list - quicklist (43 ms) [ok]: COPY basic usage for list - listpack (0 ms) [ok]: COPY basic usage for $type set (0 ms) [ok]: COPY basic usage for $type set (1 ms) [ok]: setup replication for following tests (101 ms) [ok]: publish message to master and receive on replica (1 ms) [ok]: CONFIG SET bind address (218 ms) [ok]: COPY basic usage for $type set (11 ms) [ok]: COPY basic usage for listpack sorted set (1 ms) [ok]: COPY basic usage for skiplist sorted set (7 ms) [ok]: COPY basic usage for listpack hash (1 ms) [ok]: COPY basic usage for hashtable hash (11 ms) [ok]: Quicklist: SORT BY key (9 ms) [ok]: Measures elapsed time os.clock() (1003 ms) [ok]: Prohibit dangerous lua methods in sandbox (1 ms) [ok]: Quicklist: SORT BY key with limit (1 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]: Quicklist: SORT BY hash field (9 ms) [ok]: FUNCTION - test function kill not working on eval (404 ms) [ok]: FUNCTION - test function flush (1 ms) [ok]: FUNCTION - test function wrong argument (0 ms) [ok]: COMMANDLOG slow - can be disabled (401 ms) [ok]: COMMANDLOG slow - count must be >= -1 (0 ms) [ok]: COMMANDLOG slow - get all slow logs (1 ms) [ok]: COMMANDLOG slow - blocking command is reported only after unblocked (2 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 (0 ms) [ok]: FUZZ stresser with data model compr (401 ms) [ok]: COPY basic usage for stream (79 ms) [ok]: COPY basic usage for stream-cgroups (5 ms) [ok]: MOVE basic usage (0 ms) [ok]: MOVE against key existing in the target DB (0 ms) [ok]: MOVE against non-integer DB (#1428) (0 ms) [ok]: MOVE can move key expire metadata as well (1 ms) [ok]: MOVE does not create an expire if it does not exist (1 ms) [ok]: SET/GET keys in different DBs (0 ms) [ok]: RANDOMKEY (5 ms) [ok]: RANDOMKEY against empty DB (1 ms) [ok]: RANDOMKEY regression 1 (0 ms) [ok]: KEYS * two times with long key, Github issue #1208 (0 ms) [ok]: Regression for pattern matching long nested loops (0 ms) [ok]: Coverage: basic SWAPDB test and unhappy path (1 ms) [ok]: Coverage: SWAPDB and FLUSHDB (1 ms) [ok]: WAIT should not acknowledge 2 additional copies of the data (1079 ms) [6/128 done]: unit/commandlog (1 seconds) Testing unit/tls [ok]: Regression for pattern matching very long nested loops (84 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]: Memory efficiency with values in range 1024 (389 ms) [ok]: HyperLogLog sparse encoding stress test (645 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Additional at tail (0 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Broken magic (1 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Invalid encoding (0 ms) [ok]: Corrupted dense HyperLogLogs are detected: Wrong length (0 ms) [ok]: BGSAVE (53 ms) [ok]: SELECT an out of range DB (0 ms) [7/128 done]: unit/tls (0 seconds) Testing unit/tracking [ok]: Connect a replica to the master instance (102 ms) [ok]: FUNCTION - creation is replicated to replica (0 ms) [ok]: FUNCTION - call on replica (0 ms) [ok]: FUNCTION - restore is replicated to replica (1 ms) [ok]: FUNCTION - delete is replicated to replica (0 ms) [ok]: FUNCTION - flush is replicated to replica (1 ms) [ok]: Clients are able to enable tracking and redirect it (0 ms) [ok]: The other connection is able to get invalidations (0 ms) [ok]: The client is now able to disable tracking (0 ms) [ok]: Clients can enable the BCAST mode with the empty prefix (1 ms) [ok]: The connection gets invalidation messages about all the keys (0 ms) [ok]: Clients can enable the BCAST mode with prefixes (0 ms) [ok]: Adding prefixes to BCAST mode works (0 ms) [ok]: Tracking NOLOOP mode in standard mode works (0 ms) [ok]: Tracking NOLOOP mode in BCAST mode works (1 ms) [ok]: CONFIG SET bind-source-addr (522 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 (0 ms) [ok]: FUNCTION - create on read only replica (1 ms) [ok]: FUNCTION - delete on read only replica (0 ms) [ok]: FUNCTION - function effect is replicated to replica (0 ms) [ok]: FUNCTION - modify key space of read only replica (0 ms) [ok]: EVAL does not leak in the Lua stack (725 ms) [ok]: Call Redis command with many args from Lua (issue #1764) (1 ms) [ok]: Number conversion precision test (issue #1118) (0 ms) [ok]: String containing number precision test (regression of issue #1118) (0 ms) [ok]: Verify negative arg count is error instead of crash (issue #1842) (0 ms) [ok]: Scripts can handle commands with incorrect arity (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) [8/128 done]: unit/pubsubshard (2 seconds) Testing unit/multi [ok]: Default bind address configuration handling (213 ms) [ok]: Protected mode works as expected (4 ms) [ok]: Check consistency of different data types after a reload (493 ms) [ok]: Script return recursive object (103 ms) [ok]: MULTI / EXEC basics (0 ms) [ok]: DISCARD (1 ms) [ok]: Nested MULTI are not allowed (0 ms) [ok]: MULTI where commands alter argc/argv (1 ms) [ok]: WATCH inside MULTI is not allowed (0 ms) [ok]: EXEC fails if there are errors while queueing commands #1 (0 ms) [ok]: EXEC fails if there are errors while queueing commands #2 (1 ms) [ok]: If EXEC aborts, the client MULTI state is cleared (1 ms) [ok]: EXEC works on WATCHed key not modified (0 ms) [ok]: EXEC fail on WATCHed key modified (1 key of 1 watched) (0 ms) [ok]: EXEC fail on WATCHed key modified (1 key of 5 watched) (1 ms) [ok]: EXEC fail on WATCHed key modified by SORT with STORE even if the result is empty (0 ms) [ok]: Script check unpack with massive arguments (60 ms) [ok]: Script read key with expiration set (0 ms) [ok]: Script del key with expiration set (1 ms) [ok]: Script ACL check (1 ms) [ok]: Binary code loading failed (0 ms) [ok]: Try trick global protection 1 (0 ms) [ok]: Try trick global protection 2 (0 ms) [ok]: Try trick global protection 3 (0 ms) [ok]: Try trick global protection 4 (0 ms) [ok]: Try trick readonly table on valkey table (0 ms) [ok]: Try trick readonly table on json table (0 ms) [ok]: Try trick readonly table on cmsgpack table (0 ms) [ok]: Try trick readonly table on bit table (1 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]: EXEC fail on lazy expired WATCHed key (102 ms) [ok]: WATCH stale keys should not fail EXEC (2 ms) [ok]: Delete WATCHed stale keys should not fail EXEC (3 ms) [ok]: FLUSHDB while watching stale keys should not fail EXEC (3 ms) [ok]: After successful EXEC key is no longer watched (0 ms) [ok]: After failed EXEC key is no longer watched (1 ms) [ok]: It is possible to UNWATCH (0 ms) [ok]: UNWATCH when there is nothing watched works as expected (0 ms) [ok]: FLUSHALL is able to touch the watched keys (1 ms) [ok]: FLUSHALL does not touch non affected keys (0 ms) [ok]: FLUSHDB is able to touch the watched keys (0 ms) [ok]: FLUSHDB does not touch non affected keys (1 ms) [ok]: SWAPDB is able to touch the watched keys that exist (0 ms) [ok]: SWAPDB is able to touch the watched keys that do not exist (1 ms) [ok]: SWAPDB does not touch watched stale keys (2 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 (1 ms) [ok]: Same dataset digest if saving/reloading as AOF? (184 ms) [ok]: EXPIRES after a reload (snapshot + append only file rewrite) (104 ms) [9/128 done]: unit/networking (2 seconds) Testing unit/acl [ok]: WAIT should not acknowledge 1 additional copy if slave is blocked (1103 ms) [ok]: Connections start with the default user (0 ms) [ok]: It is possible to create new users (0 ms) [ok]: Coverage: ACL USERS (0 ms) [ok]: Usernames can not contain spaces or null characters (0 ms) [ok]: New users start disabled (0 ms) [ok]: Enabling the user allows the login (1 ms) [ok]: Only the set of correct passwords work (0 ms) [ok]: It is possible to remove passwords from the set of valid ones (0 ms) [ok]: Test password hashes can be added (0 ms) [ok]: Test password hashes validate input (1 ms) [ok]: ACL GETUSER returns the password hash instead of the actual password (0 ms) [ok]: Test hashed passwords removal (0 ms) [ok]: By default users are not able to access any command (0 ms) [ok]: By default users are not able to access any key (0 ms) [ok]: It's possible to allow the access of a subset of keys (0 ms) [ok]: By default, only default user is able to publish to any channel (0 ms) [ok]: By default, only default user is not able to publish to any shard channel (0 ms) [ok]: By default, only default user is able to subscribe to any channel (0 ms) [ok]: By default, only default user is able to subscribe to any shard channel (1 ms) [ok]: By default, only default user is able to subscribe to any pattern (0 ms) [ok]: It's possible to allow publishing to a subset of channels (1 ms) [ok]: It's possible to allow publishing to a subset of shard channels (0 ms) [ok]: Validate subset of channels is prefixed with resetchannels flag (1 ms) [ok]: In transaction queue publish/subscribe/psubscribe to unauthorized channel will fail (0 ms) [ok]: It's possible to allow subscribing to a subset of channels (1 ms) [ok]: It's possible to allow subscribing to a subset of shard channels (0 ms) [ok]: It's possible to allow subscribing to a subset of channel patterns (1 ms) [ok]: Subscribers are killed when revoked of channel permission (0 ms) [ok]: Subscribers are killed when revoked of channel permission (1 ms) [ok]: Subscribers are killed when revoked of pattern permission (0 ms) [ok]: Subscribers are killed when revoked of allchannels permission (0 ms) [ok]: Subscribers are pardoned if literal permissions are retained and/or gaining allchannels (1 ms) [ok]: blocked command gets rejected when reprocessed after permission change (1 ms) [ok]: Users can be configured to authenticate with any password (0 ms) [ok]: ACLs can exclude single commands (0 ms) [ok]: ACLs can include or exclude whole classes of commands (0 ms) [ok]: ACLs can include single subcommands (1 ms) [ok]: ACLs can exclude single subcommands, case 1 (0 ms) [ok]: ACLs can exclude single subcommands, case 2 (0 ms) [ok]: ACLs cannot include a subcommand with a specific arg (0 ms) [ok]: ACLs cannot exclude or include a container commands with a specific arg (0 ms) [ok]: ACLs cannot exclude or include a container command with two args (1 ms) [ok]: ACLs including of a type includes also subcommands (0 ms) [ok]: ACLs can block SELECT of all but a specific DB (1 ms) [ok]: ACLs can block all DEBUG subcommands except one (0 ms) [ok]: ACLs set can include subcommands, if already full command exists (1 ms) [ok]: ACLs set can exclude subcommands, if already full command exists (2 ms) [ok]: ACL SETUSER RESET reverting to default newly created user (1 ms) [ok]: ACL GETUSER is able to translate back command permissions (0 ms) [ok]: ACL GETUSER provides reasonable results (10 ms) [ok]: ACL GETUSER provides correct results (3 ms) [ok]: ACL CAT with illegal arguments (0 ms) [ok]: ACL CAT without category - list all categories (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 (1 ms) [ok]: ACL LOG aggregates similar errors together and assigns unique entry-id to new errors (3 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) (1 ms) [ok]: ACL can log errors in the context of Lua scripting (1 ms) [ok]: ACL LOG can accept a numerical argument to show less entries (1 ms) [ok]: ACL LOG can log failed auth attempts (1 ms) [ok]: ACLLOG - zero max length is correctly handled (1 ms) [ok]: ACL LOG entries are limited to a maximum amount (1 ms) [ok]: ACL LOG entries are still present on update of max len config (1 ms) [ok]: When default user is off, new connections are not authenticated (0 ms) [ok]: When default user has no command permission, hello command still works for other users (1 ms) [ok]: When an authentication chain is used in the HELLO cmd, the last auth cmd has precedence (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]: Delete a user that the client doesn't use (0 ms) [ok]: Delete a user that the client is using (1 ms) [ok]: ACL GENPASS command failed test (0 ms) [ok]: Default user can not be removed (0 ms) [ok]: ACL load non-existing configured ACL file (0 ms) [ok]: ACL-Metrics user AUTH failure (3 ms) [ok]: ACL-Metrics invalid command accesses (2 ms) [ok]: ACL-Metrics invalid key accesses (2 ms) [ok]: ACL-Metrics invalid channels accesses (2 ms) [ok]: Memory efficiency with values in range 16384 (1178 ms) [10/129 done]: unit/memefficiency (2 seconds) Testing unit/bitops [ok]: Tracking gets notification of expired keys (1001 ms) [ok]: default: load from include file, can access any channels (0 ms) [ok]: default: with config acl-pubsub-default allchannels after reset, can access any channels (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 (1 ms) [ok]: ACL LOAD disconnects clients of deleted users (1 ms) [ok]: ACL load and save (2 ms) [ok]: ACL load and save with restricted channels (1 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (402 ms) [ok]: BITCOUNT against wrong type (0 ms) [ok]: BITCOUNT returns 0 against non existing key (1 ms) [ok]: BITCOUNT returns 0 with out of range indexes (0 ms) [ok]: BITCOUNT returns 0 with negative indexes where start > end (0 ms) [ok]: BITCOUNT against test vector #1 (0 ms) [ok]: BITCOUNT against test vector #2 (1 ms) [ok]: BITCOUNT against test vector #3 (0 ms) [ok]: BITCOUNT against test vector #4 (0 ms) [ok]: BITCOUNT against test vector #5 (0 ms) [ok]: FUNCTION can processes create, delete and flush commands in AOF when doing "debug loadaof" in read-only slaves (320 ms) [ok]: query buffer resized correctly (2557 ms) [ok]: Tracking gets notification of lazy expired keys (101 ms) [ok]: HELLO 3 reply is correct (0 ms) [ok]: RESP3 based basic invalidation (1 ms) [ok]: RESP3 tracking redirection (0 ms) [ok]: Invalidations of previous keys can be redirected after switching to RESP3 (1 ms) [ok]: Invalidations of new keys can be redirected after switching to RESP3 (0 ms) [ok]: 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 (0 ms) [ok]: Different clients using different protocols can track the same key (1 ms) [ok]: No invalidation message when using OPTIN option (0 ms) [ok]: Invalidation message sent when using OPTIN option with CLIENT CACHING yes (1 ms) [ok]: Invalidation message sent when using OPTOUT option (0 ms) [ok]: No invalidation message when using OPTOUT option with CLIENT CACHING no (1 ms) [ok]: Able to redirect to a RESP3 client (0 ms) [ok]: After switching from normal tracking to BCAST mode, no invalidation message is produced for pre-BCAST keys (1 ms) [ok]: BCAST with prefix collisions throw errors (1 ms) [ok]: hdel deliver invalidate message after response in the same connection (0 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (86 ms) [ok]: query buffer resized correctly when not idle (68 ms) [ok]: LIBRARIES - test shared function can access default globals (0 ms) [ok]: LIBRARIES - usage and code sharing (1 ms) [ok]: LIBRARIES - test registration failure revert the entire load (0 ms) [ok]: LIBRARIES - test registration function name collision (0 ms) [ok]: LIBRARIES - test registration function name collision on same library (0 ms) [ok]: LIBRARIES - test registration with no argument (1 ms) [ok]: LIBRARIES - test registration with only name (0 ms) [ok]: LIBRARIES - test registration with to many arguments (0 ms) [ok]: LIBRARIES - test registration with no string name (0 ms) [ok]: LIBRARIES - test registration with wrong name format (0 ms) [ok]: LIBRARIES - test registration with empty name (1 ms) [ok]: LIBRARIES - math.random from function load (0 ms) [ok]: LIBRARIES - redis.call from function load (0 ms) [ok]: LIBRARIES - redis.setresp from function load (0 ms) [ok]: LIBRARIES - redis.set_repl from function load (0 ms) [ok]: LIBRARIES - redis.acl_check_cmd from function load (0 ms) [ok]: LIBRARIES - malicious access test (1 ms) [ok]: LIBRARIES - delete removed all functions on library (0 ms) [ok]: LIBRARIES - register function inside a function (0 ms) [ok]: LIBRARIES - register library with no functions (1 ms) [ok]: Timedout script does not cause a false dead client (86 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 (2 ms) [ok]: Unblocked BLMOVE gets notification after response (1 ms) [ok]: Default user has access to all channels irrespective of flag (1 ms) [ok]: Update acl-pubsub-default, existing users shouldn't get affected (0 ms) [ok]: Single channel is valid (1 ms) [ok]: Single channel is not valid with allchannels (0 ms) [ok]: Tracking gets notification on tracking table key eviction (76 ms) [ok]: BITCOUNT fuzzing without start/end (241 ms) [ok]: Invalidation message received for flushall (1 ms) [ok]: Invalidation message received for flushdb (1 ms) [ok]: Test ASYNC flushall (2 ms) [ok]: flushdb tracking invalidation message is not interleaved with transaction response (2 ms) [ok]: TTL, TYPE and EXISTS do not alter the last access time of a key (3002 ms) [ok]: Timedout script link is still usable after Lua returns (143 ms) [ok]: Only default user has access to all channels irrespective of flag (0 ms) [ok]: Server is able to evacuate enough keys when num of keys surpasses limit by more than defined initial effort (200 ms) [ok]: Tracking info is correct (2 ms) [ok]: CLIENT GETREDIR provides correct client id (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking off (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking on (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking on with options (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking optin (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking optout (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking bcast mode (1 ms) [ok]: Big Quicklist: SORT BY key (456 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking redir broken (1 ms) [ok]: Regression test for #11715 (2 ms) [ok]: RESP3 based basic invalidation with client reply off (1 ms) [ok]: Big Quicklist: SORT BY key with limit (11 ms) [ok]: RESP2 based basic invalidation with client reply off (43 ms) [ok]: RESP3 based basic redirect invalidation with client reply off (2 ms) [ok]: RESP3 based basic tracking-redir-broken with client reply off (1 ms) [ok]: WATCH will consider touched expired keys (1106 ms) [ok]: DISCARD should clear the WATCH dirty flag on the client (1 ms) [ok]: DISCARD should UNWATCH all the keys (1 ms) [ok]: default: load from config file, without channel permission default user can't access any channels (0 ms) [ok]: MULTI / EXEC is not propagated (single write command) (60 ms) [ok]: BITCOUNT fuzzing with start/end (392 ms) [ok]: BITCOUNT with just start (0 ms) [ok]: BITCOUNT with start, end (1 ms) [ok]: BITCOUNT with illegal arguments (1 ms) [ok]: BITCOUNT against non-integer value (0 ms) [ok]: BITCOUNT regression test for github issue #582 (1 ms) [ok]: BITCOUNT misaligned prefix (0 ms) [ok]: BITCOUNT misaligned prefix + full words + remainder (0 ms) [ok]: BITOP NOT (empty string) (0 ms) [ok]: BITOP NOT (known string) (0 ms) [ok]: BITOP where dest and target are the same key (0 ms) [ok]: BITOP AND|OR|XOR don't change the string with single input key (0 ms) [ok]: BITOP missing key is considered a stream of zero (1 ms) [ok]: BITOP shorter keys are zero-padded to the key with max length (0 ms) [ok]: LIBRARIES - load timeout (502 ms) [ok]: LIBRARIES - verify global protection on the load run (0 ms) [ok]: LIBRARIES - named arguments (0 ms) [ok]: LIBRARIES - named arguments, bad function name (0 ms) [ok]: LIBRARIES - named arguments, bad callback type (0 ms) [ok]: LIBRARIES - named arguments, bad description (0 ms) [ok]: LIBRARIES - named arguments, unknown argument (0 ms) [ok]: LIBRARIES - named arguments, missing function name (0 ms) [ok]: LIBRARIES - named arguments, missing callback (0 ms) [ok]: FUNCTION - test function restore with function name collision (2 ms) [ok]: FUNCTION - test function list with code (0 ms) [ok]: FUNCTION - test function list with pattern (0 ms) [ok]: FUNCTION - test function list wrong argument (0 ms) [ok]: FUNCTION - test function list with bad argument to library name (0 ms) [ok]: FUNCTION - test function list withcode multiple times (0 ms) [ok]: FUNCTION - test function list libraryname multiple times (0 ms) [ok]: FUNCTION - verify OOM on function load and function restore (1 ms) [ok]: FUNCTION - verify allow-omm allows running any command (0 ms) [ok]: CLIENT TRACKINGINFO when start (0 ms) [ok]: Coverage: Basic CLIENT CACHING (0 ms) [ok]: Coverage: Basic CLIENT REPLY (1 ms) [ok]: Coverage: Basic CLIENT TRACKINGINFO (0 ms) [ok]: Coverage: Basic CLIENT GETREDIR (0 ms) [ok]: Timedout scripts and unblocked command (384 ms) [ok]: KEYS with empty DB in cluster mode (0 ms) [ok]: KEYS with empty slot in cluster mode (0 ms) [ok]: MULTI / EXEC is propagated correctly (multiple commands) (101 ms) [ok]: WAIT implicitly blocks on client pause since ACKs aren't sent (1102 ms) [11/129 done]: unit/tracking (2 seconds) Testing unit/auth [ok]: WAIT replica multiple clients unblock - reuse last result (8 ms) [12/129 done]: unit/keyspace (3 seconds) Testing unit/geo [ok]: default: load from config file with all channels permissions (1 ms) [ok]: MULTI / EXEC is propagated correctly (multiple commands with SELECT) (100 ms) [ok]: FUNCTION - wrong flags type named arguments (0 ms) [ok]: FUNCTION - wrong flag type (0 ms) [ok]: FUNCTION - unknown flag (1 ms) [ok]: FUNCTION - write script on fcall_ro (0 ms) [ok]: FUNCTION - write script with no-writes flag (0 ms) [ok]: FUNCTION - deny oom (1 ms) [ok]: FUNCTION - deny oom on no-writes function (0 ms) [ok]: FUNCTION - allow stale (1 ms) [ok]: FUNCTION - valkey version api (0 ms) [ok]: FUNCTION - function stats (1 ms) [ok]: FUNCTION - function stats reloaded correctly from rdb (1 ms) [ok]: FUNCTION - function stats delete library (0 ms) [ok]: FUNCTION - test function stats on loading failure (1 ms) [ok]: FUNCTION - function stats cleaned after flush (0 ms) [ok]: AUTH fails if there is no password configured server side (0 ms) [ok]: FUNCTION - function test empty engine (0 ms) [ok]: Arity check for auth command (0 ms) [ok]: FUNCTION - function test unknown metadata value (0 ms) [ok]: FUNCTION - function test no name (0 ms) [ok]: FUNCTION - function test multiple names (0 ms) [ok]: FUNCTION - function test name with quotes (0 ms) [ok]: FUNCTION - trick global protection 1 (0 ms) [ok]: FUNCTION - test getmetatable on script load (0 ms) [ok]: BITOP and fuzzing (246 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 (3 ms) [ok]: GEO with wrong type src key (1 ms) [ok]: GEO with non existing src key (0 ms) [ok]: GEO BYLONLAT with empty search (1 ms) [ok]: GEO BYMEMBER with non existing member (0 ms) [ok]: GEOADD create (0 ms) [ok]: GEOADD update (0 ms) [ok]: GEOADD update with CH option (1 ms) [ok]: GEOADD update with NX option (0 ms) [ok]: GEOADD update with XX option (0 ms) [ok]: GEOADD update with CH NX option (0 ms) [ok]: GEOADD update with CH XX option (0 ms) [ok]: GEOADD update with XX NX option will return syntax error (0 ms) [ok]: GEOADD update with invalid option (0 ms) [ok]: GEOADD invalid coordinates (0 ms) [ok]: GEOADD multi add (0 ms) [ok]: Check geoset values (0 ms) [ok]: GEORADIUS simple (sorted) (0 ms) [ok]: GEORADIUS_RO simple (sorted) (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 (1 ms) [ok]: GEORADIUS withdist (sorted) (0 ms) [ok]: GEOSEARCH withdist (sorted) (0 ms) [ok]: GEORADIUS with COUNT (0 ms) [ok]: GEORADIUS with multiple WITH* tokens (1 ms) [ok]: GEORADIUS with ANY not sorted by default (0 ms) [ok]: GEORADIUS with ANY sorted by ASC (0 ms) [ok]: GEORADIUS with ANY but no COUNT (0 ms) [ok]: GEORADIUS with COUNT but missing integer argument (0 ms) [ok]: GEORADIUS with COUNT DESC (0 ms) [ok]: GEORADIUS HUGE, issue #2767 (1 ms) [ok]: GEORADIUSBYMEMBER simple (sorted) (0 ms) [ok]: GEORADIUSBYMEMBER_RO simple (sorted) (0 ms) [ok]: GEORADIUSBYMEMBER 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]: Big Quicklist: SORT BY hash field (458 ms) [ok]: GEOSEARCH vs GEORADIUS (0 ms) [ok]: GEOSEARCH non square, long and narrow (0 ms) [ok]: GEOSEARCH corner point test (0 ms) [ok]: GEORADIUSBYMEMBER withdist (sorted) (1 ms) [ok]: GEOHASH is able to return geohash strings (0 ms) [ok]: GEOHASH with only key as argument (0 ms) [ok]: GEOPOS simple (1 ms) [ok]: GEOPOS missing element (0 ms) [ok]: GEOPOS with only key as argument (0 ms) [ok]: GEODIST simple & unit (1 ms) [ok]: GEODIST missing elements (0 ms) [ok]: GEORADIUS STORE option: syntax error (0 ms) [ok]: GEOSEARCHSTORE STORE option: syntax error (0 ms) [ok]: Intset: SORT BY key (0 ms) [ok]: Intset: SORT BY key with limit (1 ms) [ok]: Intset: SORT BY hash field (0 ms) [ok]: GEORANGE STORE option: incompatible options (1 ms) [ok]: MULTI / EXEC is propagated correctly (empty transaction) (100 ms) [ok]: GEORANGE STORE option: plain usage (0 ms) [ok]: GEORADIUSBYMEMBER STORE/STOREDIST option: plain usage (1 ms) [ok]: GEOSEARCHSTORE STORE option: plain usage (0 ms) [ok]: GEORANGE STOREDIST option: plain usage (0 ms) [ok]: GEOSEARCHSTORE STOREDIST option: plain usage (0 ms) [ok]: GEORANGE STOREDIST option: COUNT ASC and DESC (0 ms) [ok]: GEOSEARCH the box spans -180° or 180° (1 ms) [ok]: GEOSEARCH with small distance (0 ms) [13/129 done]: unit/functions (3 seconds) Testing unit/maxmemory [ok]: Setup a new replica (103 ms) [ok]: MULTI / EXEC is propagated correctly (read-only commands) (101 ms) [ok]: Test loading an ACL file with duplicate users (2 ms) [ok]: Test loading an ACL file with duplicate default user (2 ms) [ok]: Test loading duplicate users in config on startup (10 ms) [ok]: BITOP or fuzzing (164 ms) [ok]: Hash table: SORT BY key (9 ms) [ok]: Hash table: SORT BY key with limit (1 ms) [ok]: AUTH fails when a wrong password is given (0 ms) [ok]: Arbitrary command gives an error when AUTH is required (0 ms) [ok]: AUTH succeeds when the right password is given (0 ms) [ok]: Once AUTH succeeded we can actually send commands to the server (1 ms) [ok]: For unauthenticated clients multibulk and bulk length are limited (0 ms) [ok]: For unauthenticated clients output buffer is limited (0 ms) [ok]: For once authenticated clients output buffer is NOT limited (1 ms) [ok]: Hash table: SORT BY hash field (9 ms) [ok]: Before the replica connects we issue two EVAL commands (1 ms) [ok]: MULTI / EXEC is propagated correctly (write command, no effect) (101 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: false (39 ms) [ok]: BITOP xor fuzzing (155 ms) [ok]: BITOP NOT fuzzing (25 ms) [ok]: BITOP with integer encoded source objects (0 ms) [ok]: BITOP with non string source key (0 ms) [ok]: BITOP with empty string after non empty string (issue #529) (0 ms) [ok]: BITPOS against wrong type (0 ms) [ok]: BITPOS will illegal arguments (1 ms) [ok]: Connect a replica to the master instance (101 ms) [ok]: MULTI / EXEC with REPLICAOF (101 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]: Replication of script multiple pushes to list with BLPOP (1 ms) [ok]: BITPOS bit=0 with string less than 1 word works (0 ms) [ok]: BITPOS bit=1 with string less than 1 word works (0 ms) [ok]: BITPOS bit=0 starting at unaligned address (0 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: DISCARD should not fail during OOM (1 ms) [ok]: BITPOS bit=1 starting at unaligned address (0 ms) [ok]: BITPOS bit=0 unaligned+full word+reminder (1 ms) [ok]: BITPOS bit=1 unaligned+full word+reminder (1 ms) [ok]: BITPOS bit=1 returns -1 if string is all 0 bits (3 ms) [ok]: BITPOS bit=0 works with intervals (0 ms) [ok]: BITPOS bit=1 works with intervals (1 ms) [ok]: BITPOS bit=0 changes behavior if end is given (0 ms) [ok]: SETBIT/BITFIELD only increase dirty when the value changed (3 ms) [ok]: Client output buffer hard limit is enforced (4018 ms) [ok]: AUTH fails when binary password is wrong (0 ms) [ok]: AUTH succeeds when binary password is correct (0 ms) [ok]: BITPOS bit=1 fuzzy testing using SETBIT (149 ms) [ok]: ACL from config file and config rewrite (204 ms) [ok]: ACL still denies individual renamed commands (0 ms) [ok]: ACL command classes aren't affected by command renaming (1 ms) [ok]: BITPOS bit=0 fuzzy testing using SETBIT (191 ms) [ok]: ACL GETUSER provides correct results when commands renamed (2 ms) [ok]: MULTI and script timeout (403 ms) [ok]: EXPIRES after AOF reload (without rewrite) (2106 ms) [ok]: BITPOS/BITCOUNT fuzzy testing using SETBIT (166 ms) [ok]: WAIT in script will work (810 ms) [ok]: Test ACL LOAD works on primary (3 ms) [14/130 done]: unit/bitops (2 seconds) Testing unit/bitfield [ok]: BITFIELD signed SET and GET basics (0 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 (0 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 (0 ms) [ok]: Test ACL LOAD works on replica (103 ms) [ok]: EXEC and script timeout (406 ms) [ok]: BITFIELD overflow detection fuzzing (169 ms) [ok]: WAITAOF local copy before fsync (94 ms) [15/130 done]: unit/acl (3 seconds) Testing unit/pause [ok]: WAITAOF local copy everysec (100 ms) [ok]: WAITAOF local copy with appendfsync always (1 ms) [ok]: WAITAOF local wait and then stop aof (2 ms) [ok]: WAITAOF local on server with aof disabled (0 ms) [ok]: BITFIELD overflow wrap fuzzing (227 ms) [ok]: BITFIELD regression for #3221 (0 ms) [ok]: BITFIELD regression for #3564 (1 ms) [ok]: BITFIELD_RO with only key as argument (0 ms) [ok]: BITFIELD_RO fails when write option is used (1 ms) [ok]: primaryauth test with binary password dualchannel = yes (908 ms) [ok]: Connect a replica to the master instance (101 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 (0 ms) [ok]: PIPELINING stresser (also a regression for the old epoll bug) (743 ms) [ok]: APPEND basics (0 ms) [ok]: APPEND basics, integer encoded values (1 ms) [ok]: MULTI-EXEC body and script timeout (403 ms) [ok]: WAITAOF local if AOFRW was postponed (302 ms) [ok]: APPEND fuzzing (188 ms) [ok]: FLUSHDB (0 ms) [ok]: Perform a final SAVE to leave a clean DB on disk (2 ms) [ok]: RESET clears client state (0 ms) [ok]: RESET clears MONITOR state (1 ms) [ok]: RESET clears and discards MULTI state (0 ms) [ok]: RESET clears Pub/Sub state (0 ms) [ok]: RESET clears authenticated state (0 ms) [ok]: Subcommand syntax error crash (issue #10070) (0 ms) [ok]: Extended Redis Compatibility config (1 ms) [ok]: AUTH fails when binary password is wrong (0 ms) [ok]: AUTH succeeds when binary password is correct (0 ms) [ok]: WAITAOF on demoted master gets unblocked with an error (1 ms) [ok]: BITFIELD: setup slave (103 ms) [ok]: BITFIELD: write on master, read on slave (1 ms) [ok]: BITFIELD_RO with only key as argument on read-only replica (0 ms) [ok]: BITFIELD_RO fails when write option is used on read-only replica (1 ms) [ok]: 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 (5 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]: WAITAOF replica copy before fsync (79 ms) [16/130 done]: unit/bitfield (1 seconds) Testing unit/lazyfree [ok]: MULTI propagation of PUBLISH (93 ms) [ok]: query buffer resized correctly with fat argv (2931 ms) [17/130 done]: unit/querybuf (6 seconds) Testing unit/limits [ok]: MULTI propagation of SCRIPT LOAD (101 ms) [ok]: Big Hash table: SORT BY key (457 ms) [ok]: Big Hash table: SORT BY key with limit (12 ms) [ok]: Don't rehash if server has child process (331 ms) [ok]: MULTI propagation of EVAL (101 ms) [ok]: MULTI propagation of SCRIPT FLUSH (101 ms) [ok]: test RESP2/2 big number protocol parsing (0 ms) [ok]: test RESP2/2 malformed big number protocol parsing (1 ms) [ok]: test RESP2/2 map protocol parsing (0 ms) [ok]: test RESP2/2 set protocol parsing (0 ms) [ok]: test RESP2/2 double protocol parsing (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 (0 ms) [ok]: test RESP2/2 false protocol parsing (1 ms) [ok]: test RESP2/3 big number protocol parsing (0 ms) [ok]: test RESP2/3 malformed big number protocol parsing (0 ms) [ok]: test RESP2/3 map protocol parsing (0 ms) [ok]: test RESP2/3 set protocol parsing (0 ms) [ok]: test RESP2/3 double protocol parsing (0 ms) [ok]: test RESP2/3 null protocol parsing (0 ms) [ok]: test RESP2/3 verbatim protocol parsing (0 ms) [ok]: test RESP2/3 true protocol parsing (0 ms) [ok]: test RESP2/3 false protocol parsing (0 ms) [ok]: test RESP3/2 big number protocol parsing (0 ms) [ok]: test RESP3/2 malformed big number protocol parsing (0 ms) [ok]: test RESP3/2 map protocol parsing (0 ms) [ok]: test RESP3/2 set protocol parsing (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]: TOUCH alters the last access time of a key (3003 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 (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 (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]: 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]: Process title set as expected (1 ms) [ok]: UNLINK can reclaim memory in background (278 ms) [ok]: MULTI propagation of XREADGROUP (101 ms) [ok]: MULTI with SAVE (0 ms) [ok]: MULTI with SHUTDOWN (1 ms) [ok]: Script block the time in some expiration related commands (81 ms) [ok]: RESTORE expired keys with expiration time (10 ms) [ok]: MULTI with BGREWRITEAOF (203 ms) [ok]: Big Hash table: SORT BY hash field (455 ms) [ok]: SORT GET # (1 ms) [ok]: SORT GET (0 ms) [ok]: SORT_RO GET (0 ms) [ok]: SORT GET (key and hash) with sanity check (3 ms) [ok]: SORT BY key STORE (0 ms) [ok]: SORT BY hash field STORE (1 ms) [ok]: SORT extracts STORE correctly (0 ms) [ok]: SORT_RO get keys (0 ms) [ok]: SORT extracts multiple STORE correctly (0 ms) [ok]: SORT DESC (1 ms) [ok]: SORT ALPHA against integer encoded strings (0 ms) [ok]: SORT sorted set (1 ms) [ok]: SORT sorted set BY nosort should retain ordering (0 ms) [ok]: SORT sorted set BY nosort + LIMIT (1 ms) [ok]: SORT sorted set BY nosort works as expected from scripts (1 ms) [ok]: SORT sorted set: +inf and -inf handling (0 ms) [ok]: SORT regression for issue #19, sorting floats (1 ms) [ok]: SORT with STORE returns zero if result is empty (github issue 224) (0 ms) [ok]: SORT with STORE does not create empty lists (github issue 224) (1 ms) [ok]: SORT with STORE removes key if result is empty (github issue 227) (0 ms) [ok]: SORT with BY and STORE should still order output (0 ms) [ok]: SORT will complain with numerical sorting and bad doubles (1) (1 ms) [ok]: SORT will complain with numerical sorting and bad doubles (2) (0 ms) [ok]: SORT BY sub-sorts lexicographically if score is the same (1 ms) [ok]: SORT GET with pattern ending with just -> does not get hash field (0 ms) [ok]: SORT by nosort retains native order for lists (0 ms) [ok]: SORT by nosort plus store retains native order for lists (1 ms) [ok]: SORT by nosort with limit returns based on original list order (0 ms) [ok]: SORT_RO - Successful case (0 ms) [ok]: SORT_RO - Cannot run with STORE arg (0 ms) [ok]: FLUSHDB ASYNC can reclaim memory in background (249 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (0 ms) [ok]: EVAL - Return _G (0 ms) [ok]: EVAL - Return table with a metatable that raise error (0 ms) [ok]: EVAL - Return table with a metatable that call server (0 ms) [ok]: EVAL - Lua integer -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua string -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua true boolean -> Redis protocol type conversion (1 ms) [ok]: EVAL - Lua false boolean -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua status code reply -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua error reply -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua table -> Redis protocol type conversion (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 (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? (1 ms) [ok]: EVAL - SELECT inside Lua should not affect the caller (0 ms) [ok]: EVAL - Scripts do not block on blpop command (0 ms) [ok]: EVAL - Scripts do not block on brpop command (1 ms) [ok]: EVAL - Scripts do not block on brpoplpush command (0 ms) [ok]: EVAL - Scripts do not block on blmove command (0 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (1 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (0 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (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 (0 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option -- non empty stream (1 ms) [ok]: EVAL - Scripts can run non-deterministic commands (0 ms) [ok]: EVAL - No arguments to redis.call/pcall is considered an error (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (1 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (0 ms) [ignore]: EVAL - JSON string encoding a string larger than 2GB: large memory flag not provided [ok]: EVAL - JSON numeric decoding (0 ms) [ok]: EVAL - JSON string decoding (0 ms) [ok]: EVAL - JSON smoke test (1 ms) [ok]: WAITAOF replica copy everysec (719 ms) [ok]: EVAL - cmsgpack can pack double? (0 ms) [ok]: EVAL - cmsgpack can pack negative int64? (0 ms) [ok]: SORT speed, 100 element list BY key, 100 times (18 ms) [ok]: SORT speed, 100 element list BY hash field, 100 times (22 ms) [ok]: lazy free a stream with all types of metadata (57 ms) [ok]: lazy free a stream with deleted cgroup (1 ms) [ok]: {standalone} SCAN regression test for issue #4906 (5425 ms) [ok]: SORT speed, 100 element list directly, 100 times (14 ms) [ok]: SORT speed, 100 element list BY , 100 times (11 ms) [18/130 done]: unit/lazyfree (1 seconds) Testing unit/slowlog [ok]: SETRANGE with huge offset (2 ms) [ok]: {standalone} SCAN MATCH pattern implies cluster slot (17 ms) [ok]: primaryauth test with binary password dualchannel = no (910 ms) [ok]: SORT STORE quicklist with the right options (55 ms) [ok]: MULTI with config set appendonly (204 ms) [ok]: MULTI with config error (0 ms) [ok]: Flushall while watching several keys by one client (0 ms) [ok]: SLOWLOG - check that it starts with an empty log (0 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (183 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (0 ms) [ok]: EVAL - Numerical sanity check from bitop (1 ms) [ok]: EVAL - Verify minimal bitop functionality (0 ms) [ok]: EVAL - Able to parse trailing comments (0 ms) [ok]: EVAL_RO - Successful case (0 ms) [ok]: EVAL_RO - Cannot run write commands (1 ms) [ok]: redis.sha1hex() implementation (0 ms) [19/130 done]: unit/auth (3 seconds) Testing unit/dump [ok]: DUMP / RESTORE are able to serialize / unserialize a simple key (1 ms) [ok]: RESTORE can set an arbitrary expire to the materialized key (0 ms) [ok]: RESTORE can set an expire that overflows a 32 bit integer (1 ms) [ok]: RESTORE can set an absolute expire (0 ms) [ok]: RESTORE with ABSTTL in the past (1 ms) [ok]: RESTORE can set LRU (0 ms) [ok]: RESTORE can set LFU (1 ms) [ok]: RESTORE returns an error of the key already exists (0 ms) [ok]: RESTORE can overwrite an existing key with REPLACE (1 ms) [ok]: RESTORE can detect a syntax error for unrecognized options (0 ms) [ok]: MULTI with FLUSHALL and AOF (3 ms) [ok]: SLOWLOG - only logs commands taking more time than specified (201 ms) [ok]: SLOWLOG - zero max length is correctly handled (5 ms) [ok]: SLOWLOG - max entries is correctly handled (4 ms) [ok]: SLOWLOG - GET optional argument to limit output len works (1 ms) [ok]: SLOWLOG - RESET subcommand works (0 ms) [ok]: RESTORE should not store key that are already expired, with REPLACE will propagate it as DEL or UNLINK (91 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]: Check if maxclients works refusing connections (905 ms) [20/130 done]: unit/limits (1 seconds) Testing unit/info [ok]: SLOWLOG - logged entry sanity check (201 ms) [ok]: SLOWLOG - Certain commands are omitted that contain sensitive information (1 ms) [ok]: SLOWLOG - Some commands can redact sensitive fields (1 ms) [ok]: SLOWLOG - Rewritten commands are logged as their original command (3 ms) [ok]: SLOWLOG - commands with too many arguments are trimmed (0 ms) [ok]: SLOWLOG - too long arguments are trimmed (0 ms) [ok]: MIGRATE is caching connections (215 ms) [ok]: latencystats: disable/enable (1 ms) [ok]: latencystats: configure percentiles (1 ms) [ok]: latencystats: bad configure percentiles (2 ms) [ok]: latencystats: blocking commands (2 ms) [ok]: SLOWLOG - EXEC is not logged, just executed commands (201 ms) [ok]: latencystats: subcommands (1 ms) [ok]: eviction due to input buffer of a dead client, client eviction: false (3274 ms) [ok]: Test check paused info in info clients (2101 ms) [ok]: Test read commands are not blocked by client pause (1 ms) [ok]: latencystats: measure latency (51 ms) [ok]: errorstats: failed call authentication error (1 ms) [ok]: errorstats: failed call within MULTI/EXEC (2 ms) [ok]: errorstats: failed call within LUA (2 ms) [ok]: errorstats: failed call NOSCRIPT error (1 ms) [ok]: errorstats: failed call NOGROUP error (0 ms) [ok]: errorstats: rejected call unknown command (0 ms) [ok]: errorstats: rejected call within MULTI/EXEC (1 ms) [ok]: errorstats: rejected call due to wrong arity (1 ms) [ok]: errorstats: rejected call by OOM error (1 ms) [ok]: errorstats: rejected call by authorization error (2 ms) [ok]: errorstats: blocking commands (1 ms) [ok]: errorstats: limit errors will not increase indefinitely (86 ms) [ok]: SLOWLOG - can clean older entries (200 ms) [ok]: WAITAOF replica copy everysec with AOFRW (1004 ms) [ok]: stats: eventloop metrics (111 ms) [ok]: Test old pause-all takes precedence over new pause-write (less restrictive) (349 ms) [ok]: Measures elapsed time os.clock() (1003 ms) [ok]: Prohibit dangerous lua methods in sandbox (1 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (2 ms) [ok]: Globals protection reading an undeclared global variable (0 ms) [ok]: Globals protection setting an undeclared global* (0 ms) [ok]: lua bit.tohex bug (1 ms) [ok]: Test an example script DECR_IF_GT (1 ms) [ok]: Test new pause time is smaller than old one, then old time preserved (102 ms) [ok]: Test write commands are paused by RO (0 ms) [ok]: Test special commands are paused by RO (2 ms) [ok]: Test read/admin multi-execs are not blocked by pause RO (1 ms) [ok]: Test write multi-execs are blocked by pause RO (0 ms) [ok]: Test scripts are blocked by pause RO (0 ms) [ok]: Test RO scripts are not blocked by pause RO (1 ms) [ok]: Test read-only scripts in multi-exec are not blocked by pause RO (1 ms) [ok]: Test write scripts in multi-exec are blocked by pause RO (1 ms) [ok]: Test may-replicate commands are rejected in RO scripts (0 ms) [ok]: Test multiple clients can be queued up and unblocked (1 ms) [ok]: Test clients with syntax errors will get responses immediately (1 ms) [ok]: Test eviction is skipped during client pause (1 ms) [ok]: Test both active and passive expires are skipped during client pause (102 ms) [ok]: Test that client pause starts at the end of a transaction (1 ms) [ok]: SLOWLOG - can be disabled (401 ms) [ok]: SLOWLOG - count must be >= -1 (0 ms) [ok]: SLOWLOG - get all slow logs (1 ms) [ok]: SLOWLOG - blocking command is reported only after unblocked (1 ms) [ok]: SLOWLOG - the commands in script are recorded normally - is_eval: 0 (1 ms) [ok]: SLOWLOG - the commands in script are recorded normally - is_eval: 1 (0 ms) [ok]: Client output buffer soft limit is enforced if time is overreached (3761 ms) [21/130 done]: unit/slowlog (2 seconds) Testing unit/expire [ok]: eviction due to output buffers of pubsub, client eviction: false (761 ms) [ok]: Test when replica paused, offset would not grow (3 ms) [ok]: Test replica offset would grow after unpause (4 ms) [ok]: EXPIRE - set timeouts multiple times (0 ms) [ok]: EXPIRE - It should be still possible to read 'x' (0 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: true (52 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]: EVAL does not leak in the Lua stack (614 ms) [ok]: Call Redis command with many args from Lua (issue #1764) (1 ms) [ok]: Number conversion precision test (issue #1118) (0 ms) [ok]: String containing number precision test (regression of issue #1118) (0 ms) [ok]: Verify negative arg count is error instead of crash (issue #1842) (0 ms) [ok]: Scripts can handle commands with incorrect arity (0 ms) [ok]: Correct handling of reused argv (issue #1939) (1 ms) [ok]: Functions in the Redis namespace are able to report errors (0 ms) [ok]: CLUSTER RESET can not be invoke from within a script (0 ms) [ok]: Script with RESP3 map (1 ms) [ok]: Script return recursive object (103 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 (1 ms) [ok]: Script ACL check (0 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 (0 ms) [ok]: {cluster} SCAN basic (55 ms) [ok]: {cluster} SCAN COUNT (60 ms) [ok]: sort by in cluster mode (0 ms) [ok]: sort get in cluster mode (1 ms) [ok]: sort_ro by in cluster mode (0 ms) [ok]: sort_ro get in cluster mode (0 ms) [ok]: {cluster} SCAN MATCH (47 ms) [22/130 done]: unit/sort (7 seconds) Testing unit/shutdown [ok]: {cluster} SCAN TYPE (72 ms) [ok]: {cluster} SCAN unknown type (42 ms) [ok]: {cluster} SCAN with expired keys (55 ms) [ok]: {cluster} SCAN with expired keys with TYPE filter (55 ms) [ok]: {cluster} SSCAN with encoding intset (2 ms) [ok]: {cluster} SSCAN with encoding listpack (1 ms) [ok]: {cluster} SSCAN with encoding hashtable (3 ms) [ok]: {cluster} HSCAN with encoding listpack (1 ms) [ok]: Regression test for multi-exec with RANDOMKEY accessing the wrong per-slot dictionary (0 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (404 ms) [ok]: Temp rdb will be deleted if we use bg_unlink when shutdown (111 ms) [ok]: {cluster} HSCAN with encoding hashtable (71 ms) [ok]: {cluster} ZSCAN with encoding listpack (1 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (84 ms) [23/130 done]: unit/multi (7 seconds) Testing unit/quit [ok]: {cluster} ZSCAN with encoding skiplist (71 ms) [ok]: TOUCH alters the last access time of a key in no-touch mode (3003 ms) [ok]: {cluster} SCAN guarantees check under write load (15 ms) [ok]: {cluster} SSCAN with integer encoded object (issue #1345) (0 ms) [ok]: {cluster} SSCAN with PATTERN (0 ms) [ok]: {cluster} HSCAN with PATTERN (0 ms) [ok]: {cluster} HSCAN with NOVALUES (1 ms) [ok]: {cluster} ZSCAN with PATTERN (0 ms) [ok]: {cluster} ZSCAN with NOSCORES (0 ms) [ok]: SHUTDOWN ABORT can cancel SIGTERM (12 ms) [ok]: Timedout script does not cause a false dead client (84 ms) [ok]: QUIT returns OK (0 ms) [ok]: Pipelined commands after QUIT must not be executed (1 ms) [ok]: Pipelined commands after QUIT that exceed read buffer size (1 ms) [ok]: Temp rdb will be deleted in signal handle (83 ms) [24/130 done]: unit/quit (0 seconds) Testing unit/acl-v2 [ok]: Timedout script link is still usable after Lua returns (140 ms) [ok]: RDB save will be failed in shutdown (2 ms) [ok]: Test basic multiple selectors (1 ms) [ok]: Test ACL selectors by default have no permissions (0 ms) [ok]: Test deleting selectors (1 ms) [ok]: Test selector syntax error reports the error in the selector context (1 ms) [ok]: Test flexible selector definition (1 ms) [ok]: Test separate read permission (1 ms) [ok]: Test separate write permission (0 ms) [ok]: Test separate read and write permissions (1 ms) [ok]: Validate read and write permissions format (0 ms) [ok]: Validate key permissions format - empty and omitted pattern (1 ms) [ok]: Test separate read and write permissions on different selectors are not additive (1 ms) [ok]: Test SET with separate read permission (1 ms) [ok]: Test SET with separate write permission (1 ms) [ok]: Test SET with read and write permissions (1 ms) [ok]: Test BITFIELD with separate read permission (0 ms) [ok]: Test BITFIELD with separate write permission (1 ms) [ok]: Test BITFIELD with read and write permissions (0 ms) [ok]: Test ACL log correctly identifies the relevant item when selectors are used (2 ms) [ok]: Test ACL GETUSER response information (0 ms) [ok]: Test ACL list idempotency (1 ms) [ok]: Test R+W is the same as all permissions (0 ms) [ok]: Test basic dry run functionality (1 ms) [ok]: Test various commands for command permissions (0 ms) [ok]: Test various odd commands for key permissions (3 ms) [ok]: Existence test commands are not marked as access (1 ms) [ok]: Intersection cardinaltiy commands are access commands (0 ms) [ok]: Test general keyspace commands require some type of permission to execute (1 ms) [ok]: Cardinality commands require some type of permission to execute (2 ms) [ok]: Test sharded channel permissions (0 ms) [ok]: Test sort with ACL permissions (1 ms) [ok]: Test DRYRUN with wrong number of arguments (1 ms) [ok]: SHUTDOWN will abort if rdb save failed on signal (96 ms) [ok]: SHUTDOWN will abort if rdb save failed on shutdown command (1 ms) [ok]: SHUTDOWN can proceed if shutdown command was with nosave (2 ms) [ok]: Clean up rdb same named folder (0 ms) [ok]: WAITAOF replica copy everysec with slow AOFRW (2010 ms) [ok]: stats: instantaneous metrics (2002 ms) [ok]: {cluster} ZSCAN scores: regression test for issue #2175 (434 ms) [ok]: WAITAOF replica copy everysec->always with AOFRW (103 ms) [ok]: WAITAOF replica copy appendfsync always (1 ms) [ok]: Test behavior of loading ACLs (1 ms) [ok]: stats: debug metrics (111 ms) [ok]: SHUTDOWN SIGTERM will abort if there's an initial AOFRW - default (99 ms) [ok]: stats: client input and output buffer limit disconnections (27 ms) [ok]: clients: pubsub clients (1 ms) [ok]: clients: watching clients (6 ms) [ok]: Timedout scripts and unblocked command (381 ms) [25/130 done]: unit/acl-v2 (0 seconds) Testing unit/client-eviction [26/130 done]: unit/shutdown (1 seconds) Testing unit/introspection [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]: client evicted due to large argv (46 ms) [ok]: PING (0 ms) [ok]: CLIENT LIST (0 ms) [ok]: CLIENT LIST with IDs (1 ms) [ok]: CLIENT INFO (0 ms) [ok]: CLIENT LIST with ADDR filter (0 ms) [ok]: CLIENT LIST with LADDR filter (1 ms) [ok]: CLIENT LIST with MAXAGE filter (0 ms) [ok]: CLIENT LIST with TYPE filter (0 ms) [ok]: CLIENT LIST with USER filter (0 ms) [ok]: CLIENT LIST with SKIPME filter (1 ms) [ok]: CLIENT LIST with multiple IDs and TYPE filter (1 ms) [ok]: CLIENT LIST with filters matching no clients (0 ms) [ok]: CLIENT LIST with illegal arguments (0 ms) [ok]: client input output and command process statistics (2 ms) [ok]: CLIENT KILL with illegal arguments (1 ms) [ok]: client evicted due to large query buf (31 ms) [ok]: client evicted due to percentage of maxmemory (9 ms) [ok]: memory: database and pubsub overhead and rehashing dict count (3 ms) [ok]: client evicted due to large multi buf (97 ms) [27/130 done]: unit/info (3 seconds) Testing unit/violations [ok]: Before the replica connects we issue two EVAL commands (0 ms) [ok]: Server can trigger resizing (1800 ms) [ok]: SORT adds integer field to list (0 ms) [ok]: EXPIRE - After 2.1 seconds the key should no longer be here (2101 ms) [ok]: EXPIRE - write on expire should work (0 ms) [ok]: EXPIREAT - Check for EXPIRE alike behavior (1 ms) [ok]: SETEX - Set + Expire combo operation. Check for TTL (0 ms) [ok]: SETEX - Check value (0 ms) [ok]: SETEX - Overwrite old key (0 ms) [ok]: Connect a replica to the master instance (101 ms) [ok]: Replication of script multiple pushes to list with BLPOP (1 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: Operations in no-touch mode do not alter the last access time of a key (1101 ms) [ok]: TOUCH returns the number of existing keys specified (0 ms) [ok]: command stats for GEOADD (1 ms) [ok]: errors stats for GEOADD (0 ms) [ok]: command stats for EXPIRE (0 ms) [ok]: command stats for BRPOP (0 ms) [ok]: command stats for MULTI (1 ms) [ok]: command stats for scripts (2 ms) [ok]: COMMAND COUNT get total number of commands (0 ms) [ok]: COMMAND GETKEYS GET (0 ms) [ok]: COMMAND GETKEYSANDFLAGS (1 ms) [ok]: COMMAND GETKEYS MEMORY USAGE (0 ms) [ok]: COMMAND GETKEYS XGROUP (0 ms) [ok]: COMMAND GETKEYS EVAL with keys (0 ms) [ok]: COMMAND GETKEYS EVAL without keys (0 ms) [ok]: COMMAND GETKEYS LCS (0 ms) [ok]: COMMAND GETKEYS MORE THAN 256 KEYS (2 ms) [ok]: COMMAND LIST syntax error (0 ms) [ok]: COMMAND LIST WITHOUT FILTERBY (3 ms) [ok]: COMMAND LIST FILTERBY ACLCAT against non existing category (0 ms) [ok]: COMMAND LIST FILTERBY ACLCAT - list all commands/subcommands (1 ms) [ok]: COMMAND LIST FILTERBY PATTERN - list all commands/subcommands (1 ms) [ok]: COMMAND LIST FILTERBY MODULE against non existing module (0 ms) [ok]: COMMAND INFO of invalid subcommands (0 ms) [ok]: SET command will not be marked with movablekeys (1 ms) [ok]: GET command will not be marked with movablekeys (0 ms) [ok]: MSET command will not be marked with movablekeys (0 ms) [ok]: BITFIELD command will not be marked with movablekeys (0 ms) [ok]: LMOVE command will not be marked with movablekeys (0 ms) [ok]: LPOP command will not be marked with movablekeys (0 ms) [ok]: BLPOP command will not be marked with movablekeys (0 ms) [ok]: PING command will not be marked with movablekeys (1 ms) [ok]: MEMORY command will not be marked with movablekeys (0 ms) [ok]: MEMORY|USAGE command will not be marked with movablekeys (1 ms) [ok]: RENAME command will not be marked with movablekeys (0 ms) [ok]: GEORADIUS_RO command will not be marked with movablekeys (1 ms) [ok]: ZUNIONSTORE command is marked with movablekeys (0 ms) [ok]: XREAD command is marked with movablekeys (1 ms) [ok]: EVAL command is marked with movablekeys (0 ms) [ok]: SORT command is marked with movablekeys (1 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) [28/131 done]: unit/violations (0 seconds) Testing unit/latency-monitor [29/131 done]: unit/introspection-2 (10 seconds) Testing unit/type/list-2 [ok]: LATENCY HISTOGRAM with empty histogram (0 ms) [ok]: LATENCY HISTOGRAM all commands (1 ms) [ok]: LATENCY HISTOGRAM sub commands (0 ms) [ok]: LATENCY HISTOGRAM with a subset of commands (0 ms) [ok]: LATENCY HISTOGRAM command (1 ms) [ok]: LATENCY HISTOGRAM with wrong command name skips the invalid one (1 ms) [ok]: client evicted due to watched key list (456 ms) [ok]: WAITAOF replica copy if replica is blocked (900 ms) [ok]: Server can rewind and trigger smaller slot resizing (694 ms) [ok]: Server can resize empty dict (14 ms) [ok]: test unixsocket options are set correctly (0 ms) [30/131 done]: unit/other (11 seconds) Testing unit/type/list [ok]: SETEX - Wait for the key to expire (1101 ms) [ok]: SETEX - Wrong time parameter (0 ms) [ok]: PERSIST can undo an EXPIRE (0 ms) [ok]: PERSIST returns 0 against non existing or non volatile keys (1 ms) [ok]: Connect a replica to the master instance (101 ms) [ok]: Redis.replicate_commands() can be issued anywhere now (1 ms) [ok]: Redis.set_repl() can be issued before replicate_commands() now (0 ms) [ok]: Redis.set_repl() don't accept invalid values (0 ms) [ok]: Test selective replication of certain commands from Lua (1 ms) [ok]: PRNG is seeded randomly for command replication (1 ms) [ok]: Using side effects is not a problem with command replication (0 ms) [ok]: eviction due to input buffer of a dead client, client eviction: true (3271 ms) [ok]: packed node check compression with insert and pop (2 ms) [ok]: packed node check compression combined with trim (0 ms) [ok]: packed node check compression with lset (1 ms) [ok]: WAITAOF replica multiple clients unblock - reuse last result (1002 ms) [ok]: WAITAOF on promoted replica (0 ms) [ok]: client evicted due to pubsub subscriptions (1174 ms) [ok]: plain node check compression with insert and pop (329 ms) [ok]: client evicted due to tracking redirection (79 ms) [ok]: plain node check compression combined with trim (123 ms) [ok]: CLIENT KILL maxAGE will kill old clients (2002 ms) [ok]: CLIENT KILL SKIPME YES/NO will kill all clients (2 ms) [ok]: CLIENT command unhappy path coverage (2 ms) [ok]: plain node check compression with lset (166 ms) [ok]: CLIENT KILL close the client connection during bgsave (104 ms) [ok]: CLIENT REPLY OFF/ON: disable all commands reply (41 ms) [ok]: eviction due to output buffers of pubsub, client eviction: true (718 ms) [ok]: CLIENT REPLY SKIP: skip the next command reply (41 ms) [ok]: CLIENT REPLY ON: unset SKIP flag (41 ms) [ok]: MONITOR can log executed commands (1 ms) [ok]: MONITOR can log commands issued by the scripting engine (0 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 (0 ms) [ok]: MONITOR correctly records SET EX in MULTI-EXEC (0 ms) [ok]: MONITOR log blocked command only once (2 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 (0 ms) [ok]: CLIENT SETINFO can set a library name to this connection (1 ms) [ok]: CLIENT SETINFO invalid args (0 ms) [ok]: RESET does NOT clean library name (0 ms) [ok]: CLIENT SETINFO can clear library name (0 ms) [ok]: Test LPUSH and LPOP on plain nodes (3 ms) [ok]: Test LINDEX and LINSERT on plain nodes (1 ms) [ok]: Test LTRIM on plain nodes (1 ms) [ok]: Test LREM on plain nodes (1 ms) [ok]: Test LPOS on plain nodes (0 ms) [ok]: Test LMOVE on plain nodes (1 ms) [ok]: test RESP2/2 big number protocol parsing (0 ms) [ok]: test RESP2/2 malformed big number protocol parsing (0 ms) [ok]: test RESP2/2 map protocol parsing (0 ms) [ok]: test RESP2/2 set protocol parsing (1 ms) [ok]: test RESP2/2 double protocol parsing (0 ms) [ok]: test RESP2/2 null protocol parsing (0 ms) [ok]: test RESP2/2 verbatim protocol parsing (1 ms) [ok]: test RESP2/2 true protocol parsing (0 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (0 ms) [ok]: test RESP2/3 malformed big number protocol parsing (0 ms) [ok]: test RESP2/3 map protocol parsing (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 (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 (0 ms) [ok]: test RESP3/2 double protocol parsing (1 ms) [ok]: test RESP3/2 null protocol parsing (0 ms) [ok]: test RESP3/2 verbatim protocol parsing (0 ms) [ok]: test RESP3/2 true protocol parsing (0 ms) [ok]: test RESP3/2 false protocol parsing (0 ms) [ok]: test RESP3/3 big number protocol parsing (0 ms) [ok]: test RESP3/3 malformed big number protocol parsing (0 ms) [ok]: test RESP3/3 map protocol parsing (0 ms) [ok]: test RESP3/3 set protocol parsing (0 ms) [ok]: test RESP3/3 double protocol parsing (0 ms) [ok]: test RESP3/3 null protocol parsing (0 ms) [ok]: test RESP3/3 verbatim protocol parsing (0 ms) [ok]: test RESP3/3 true protocol parsing (0 ms) [ok]: test RESP3/3 false protocol parsing (0 ms) [ok]: test resp3 attribute protocol parsing (1 ms) [ok]: Script block the time during execution (10 ms) [ok]: Script delete the expired key (3 ms) [ok]: TIME command using cached time (10 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-random) (111 ms) [ok]: Script block the time in some expiration related commands (82 ms) [ok]: RESTORE expired keys with expiration time (10 ms) [ok]: Test LSET with packed / plain combinations (167 ms) [ok]: Test LSET with packed is split in the middle (1 ms) [ok]: EXPIRE precision is now the millisecond (1102 ms) [ok]: PSETEX can set sub-second expires (101 ms) [ok]: Test LSET with packed consist only one item (167 ms) [ok]: Crash due to delete entry from a compress quicklist node (0 ms) [ok]: Crash due to split quicklist node wrongly (1 ms) [ok]: Test LPUSH and LPOP on plain nodes (3 ms) [ok]: Test LINDEX and LINSERT on plain nodes (0 ms) [ok]: Test LTRIM on plain nodes (1 ms) [ok]: Test LREM on plain nodes (1 ms) [ok]: Test LPOS on plain nodes (0 ms) [ok]: Test LMOVE on plain nodes (1 ms) [ok]: 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 (0 ms) [ok]: EVAL - Lua status code reply -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua error reply -> Redis protocol type conversion (0 ms) [ok]: EVAL - Lua table -> Redis protocol type conversion (0 ms) [ok]: EVAL - Are the KEYS and ARGV arrays populated correctly? (0 ms) [ok]: EVAL - is Lua able to call Redis API? (0 ms) [ok]: EVAL - Redis integer -> Lua type conversion (1 ms) [ok]: EVAL - Lua number -> Redis integer conversion (0 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (0 ms) [ok]: EVAL - Redis multi bulk -> Lua type conversion (0 ms) [ok]: EVAL - Redis status reply -> Lua type conversion (0 ms) [ok]: EVAL - Redis error reply -> Lua type conversion (1 ms) [ok]: PEXPIRE can set sub-second expires (102 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 (0 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (1 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (0 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (1 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (1 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option -- non empty stream (0 ms) [ok]: EVAL - Scripts can run non-deterministic commands (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]: Test LSET with packed / plain combinations (168 ms) [ok]: Test LSET with packed is split in the middle (1 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (178 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (0 ms) [ok]: EVAL - Numerical sanity check from bitop (0 ms) [ok]: EVAL - Verify minimal bitop functionality (0 ms) [ok]: EVAL - Able to parse trailing comments (0 ms) [ok]: EVAL_RO - Successful case (0 ms) [ok]: EVAL_RO - Cannot run write commands (1 ms) [ok]: redis.sha1hex() implementation (0 ms) [ok]: PEXPIREAT can set sub-second expires (201 ms) [ok]: EXPIRE / EXPIREAT / PEXPIRE / PEXPIREAT Expiration time is already expired (2 ms) [ok]: TTL returns time to live in seconds (0 ms) [ok]: PTTL returns time to live in milliseconds (0 ms) [ok]: TTL / PTTL / EXPIRETIME / PEXPIRETIME return -1 if key has no expire (1 ms) [ok]: TTL / PTTL / EXPIRETIME / PEXPIRETIME return -2 if key does not exit (0 ms) [ok]: EXPIRETIME returns absolute expiration time in seconds (0 ms) [ok]: PEXPIRETIME returns absolute expiration time in milliseconds (1 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lru) (524 ms) [ok]: Test LSET with packed consist only one item (166 ms) [ok]: Crash due to delete entry from a compress quicklist node (0 ms) [ok]: Crash due to split quicklist node wrongly (1 ms) [ok]: Client output buffer soft limit is not enforced too early and is enforced when no traffic (5062 ms) [ok]: CONFIG save params special case handled properly (885 ms) [ok]: CONFIG sanity (16 ms) [ok]: LPOS basic usage - quicklist (41 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 (1 ms) [ok]: LPOS no match (0 ms) [ok]: No response for single command if client output buffer hard limit is enforced (114 ms) [ok]: LPOS MAXLEN (0 ms) [ok]: LPOS when RANK is greater than matches (0 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - quicklist (81 ms) [ok]: LPOP/RPOP with wrong number of arguments (0 ms) [ok]: RPOP/LPOP with the optional count argument - quicklist (41 ms) [ok]: LPOS basic usage - listpack (0 ms) [ok]: LPOS RANK (positive, negative and zero rank) option (0 ms) [ok]: LPOS COUNT option (1 ms) [ok]: LPOS COUNT + RANK option (0 ms) [ok]: LPOS non existing key (0 ms) [ok]: LPOS no match (0 ms) [ok]: LPOS MAXLEN (1 ms) [ok]: LPOS when RANK is greater than matches (0 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - listpack (1 ms) [ok]: LPOP/RPOP with wrong number of arguments (0 ms) [ok]: RPOP/LPOP with the optional count argument - listpack (1 ms) [ok]: LPOP/RPOP with the count 0 returns an empty array in RESP3 (0 ms) [ok]: LPOP/RPOP against non existing key in RESP3 (1 ms) [ok]: LPOP/RPOP with against non existing key in RESP3 (0 ms) [ok]: LPOP/RPOP with the count 0 returns an empty array in RESP2 (0 ms) [ok]: LPOP/RPOP against non existing key in RESP2 (0 ms) [ok]: LPOP/RPOP with against non existing key in RESP2 (0 ms) [ok]: Variadic RPUSH/LPUSH (1 ms) [ok]: DEL a list (0 ms) [ok]: CONFIG REWRITE sanity (191 ms) [ok]: BLPOP: single existing list - quicklist (42 ms) [ok]: BLPOP: multiple existing lists - quicklist (83 ms) [ok]: BLPOP: second list has an entry - quicklist (41 ms) [ok]: Server should actively expire keys incrementally (602 ms) [ok]: BLMPOP_LEFT: single existing list - quicklist (43 ms) [ok]: WAITAOF master that loses a replica and backlog is dropped (2003 ms) [ok]: BLMPOP_LEFT: multiple existing lists - quicklist (83 ms) [ok]: BLMPOP_LEFT: second list has an entry - quicklist (41 ms) [ok]: BRPOPLPUSH - quicklist (42 ms) [ok]: BLMOVE left left - quicklist (41 ms) [ok]: AOF rewrite during write load: RDB preamble=yes (13443 ms) [ok]: BLMOVE left right - quicklist (42 ms) [ok]: BLMOVE right left - quicklist (42 ms) [ok]: BLMOVE right right - quicklist (42 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 (0 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lfu) (877 ms) [ok]: BLMPOP_LEFT: single existing list - listpack (0 ms) [ok]: BLMPOP_LEFT: multiple existing lists - listpack (1 ms) [ok]: BLMPOP_LEFT: second list has an entry - listpack (0 ms) [ok]: BRPOPLPUSH - listpack (0 ms) [ok]: BLMOVE left left - listpack (1 ms) [ok]: BLMOVE left right - listpack (1 ms) [ok]: BLMOVE right left - listpack (1 ms) [ok]: BLMOVE right right - listpack (1 ms) [ok]: BLPOP, LPUSH + DEL should not awake blocked client (1 ms) [ok]: BLPOP, LPUSH + DEL + SET should not awake blocked client (1 ms) [ok]: BLMPOP_LEFT, LPUSH + DEL should not awake blocked client (1 ms) [ok]: BLMPOP_LEFT, LPUSH + DEL + SET should not awake blocked client (1 ms) [ok]: BLPOP with same key multiple times should work (issue #801) (2 ms) [ok]: MULTI/EXEC is isolated from the point of view of BLPOP (0 ms) [ok]: BLPOP with variadic LPUSH (0 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 (0 ms) [ok]: BLMOVE left right with zero timeout should block indefinitely (0 ms) [ok]: BLMOVE right left with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE right right with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE (left, left) with a client BLPOPing the target list (1 ms) [ok]: BLMOVE (left, right) with a client BLPOPing the target list (1 ms) [ok]: BLMOVE (right, left) with a client BLPOPing the target list (1 ms) [ok]: BLMOVE (right, right) with a client BLPOPing the target list (2 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]: BRPOPLPUSH with multiple blocked clients (1 ms) [ok]: BLMPOP with multiple blocked clients (3 ms) [ok]: Linked LMOVEs (1 ms) [ok]: Measures elapsed time os.clock() (1002 ms) [ok]: Circular BRPOPLPUSH (1 ms) [ok]: Prohibit dangerous lua methods in sandbox (0 ms) [ok]: Self-referential BRPOPLPUSH (0 ms) [ok]: BRPOPLPUSH inside a transaction (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]: PUSH resulting from BRPOPLPUSH affect WATCH (1 ms) [ok]: lua bit.tohex bug (0 ms) [ok]: Test an example script DECR_IF_GT (0 ms) [ok]: BRPOPLPUSH does not affect WATCH while still blocked (1 ms) [ok]: Test latency events logging (3403 ms) [ok]: LATENCY HISTORY output is ok (1 ms) [ok]: LATENCY LATEST output is ok (0 ms) [ok]: LATENCY GRAPH can output the event graph (1 ms) [ok]: CONFIG REWRITE handles save and shutdown properly (755 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 (2 ms) [ok]: CONFIG SET duplicate configs (0 ms) [ok]: CONFIG SET set immutable (0 ms) [ok]: CONFIG GET hidden configs (4 ms) [ok]: CONFIG GET multiple args (0 ms) [ok]: valkey-server command line arguments - error cases (58 ms) [ok]: No response for multi commands in pipeline if client output buffer limit is enforced (1043 ms) [ok]: Execute transactions completely even if client output buffer limit is enforced (14 ms) [ok]: Obuf limit, HRANDFIELD with huge count stopped mid-run (25 ms) [ok]: EVAL does not leak in the Lua stack (389 ms) [ok]: Call Redis command with many args from Lua (issue #1764) (1 ms) [ok]: Number conversion precision test (issue #1118) (0 ms) [ok]: String containing number precision test (regression of issue #1118) (0 ms) [ok]: Verify negative arg count is error instead of crash (issue #1842) (0 ms) [ok]: Scripts can handle commands with incorrect arity (0 ms) [ok]: Correct handling of reused argv (issue #1939) (0 ms) [ok]: Functions in the Redis namespace are able to report errors (0 ms) [ok]: CLUSTER RESET can not be invoke from within a script (0 ms) [ok]: Script with RESP3 map (1 ms) [ok]: Obuf limit, KEYS stopped mid-run (60 ms) [ok]: Script return recursive object (105 ms) [31/132 done]: unit/obuf-limits (14 seconds) Testing unit/type/set [ok]: Script check unpack with massive arguments (46 ms) [ok]: Script read key with expiration set (1 ms) [ok]: Script del key with expiration set (0 ms) [ok]: Script ACL check (0 ms) [ok]: Binary code loading failed (1 ms) [ok]: Try trick global protection 1 (0 ms) [ok]: Try trick global protection 2 (0 ms) [ok]: Try trick global protection 3 (0 ms) [ok]: Try trick global protection 4 (0 ms) [ok]: Try trick readonly table on valkey table (0 ms) [ok]: Try trick readonly table on json table (1 ms) [ok]: Try trick readonly table on cmsgpack table (0 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (0 ms) [ok]: Test dofile are not available (0 ms) [ok]: Test print are not available (0 ms) [ok]: Server should lazy expire keys (1002 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - listpack (1 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - hashtable (9 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - intset (1 ms) [ok]: SMISMEMBER SMEMBERS SCARD against non set (0 ms) [ok]: SMISMEMBER SMEMBERS SCARD against non existing key (1 ms) [ok]: SMISMEMBER requires one or more members (0 ms) [ok]: SADD against non set (0 ms) [ok]: SADD a non-integer against a small intset (1 ms) [ok]: SADD a non-integer against a large intset (6 ms) [ok]: SADD an integer larger than 64 bits (1 ms) [ok]: SADD an integer larger than 64 bits to a large intset (7 ms) [ok]: SADD overflows the maximum allowed integers in an intset - single (26 ms) [ok]: WAITAOF master without backlog, wait is released when the replica finishes full-sync (1008 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single (7 ms) [ok]: SADD overflows the maximum allowed integers in an intset - multiple (41 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - multiple (1 ms) [ok]: {cluster} SCAN regression test for issue #4906 (4999 ms) [ok]: tot-net-out for replica client (517 ms) [ok]: {cluster} SCAN MATCH pattern implies cluster slot (17 ms) [ok]: SADD overflows the maximum allowed integers in an intset - single_multiple (42 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single_multiple (1 ms) [ok]: Variadic SADD (0 ms) [ok]: Set encoding after DEBUG RELOAD (88 ms) [ok]: SREM basics - $type (1 ms) [ok]: SREM basics - $type (7 ms) [ok]: SREM basics - intset (1 ms) [ok]: SREM with multiple arguments (0 ms) [ok]: SREM variadic version with more args needed to destroy the key (1 ms) [ok]: SINTERCARD with illegal arguments (0 ms) [ok]: SINTERCARD against non-set should throw error (1 ms) [ok]: SINTERCARD against non-existing key (0 ms) [32/132 done]: unit/scan (14 seconds) Testing unit/type/list-3 [ok]: Generated sets must be encoded correctly - regular (1 ms) [ok]: SINTER with two sets - regular (0 ms) [ok]: SINTERCARD with two sets - regular (0 ms) [ok]: SINTERSTORE with two sets - regular (0 ms) [ok]: SINTERSTORE with two sets, after a DEBUG RELOAD - regular (3 ms) [ok]: SUNION with two sets - regular (6 ms) [ok]: SUNIONSTORE with two sets - regular (6 ms) [ok]: SINTER against three sets - regular (0 ms) [ok]: SINTERCARD against three sets - regular (0 ms) [ok]: SINTERSTORE with three sets - regular (0 ms) [ok]: SUNION with non existing keys - regular (6 ms) [ok]: SDIFF with two sets - regular (0 ms) [ok]: SDIFF with three sets - regular (0 ms) [ok]: SDIFFSTORE with three sets - regular (0 ms) [ok]: SINTER/SUNION/SDIFF with three same sets - regular (4 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 (3 ms) [ok]: SUNION with two sets - intset (5 ms) [ok]: valkey-server command line arguments - allow passing option name and option value in the same arg (213 ms) [ok]: SUNIONSTORE with two sets - intset (6 ms) [ok]: SINTER against three sets - intset (0 ms) [ok]: SINTERCARD against three sets - intset (0 ms) [ok]: SINTERSTORE with three sets - intset (0 ms) [ok]: SUNION with non existing keys - intset (5 ms) [ok]: SDIFF with two sets - intset (0 ms) [ok]: SDIFF with three sets - intset (0 ms) [ok]: SDIFFSTORE with three sets - intset (1 ms) [ok]: SINTER/SUNION/SDIFF with three same sets - intset (4 ms) [ok]: SINTERSTORE with two listpack sets where result is intset (1 ms) [ok]: BRPOPLPUSH timeout (1019 ms) [ok]: SWAPDB awakes blocked client (1 ms) [ok]: Explicit regression for a list bug (0 ms) [ok]: SINTERSTORE with two hashtable sets where result is intset (14 ms) [ok]: SUNION hashtable and listpack (1 ms) [ok]: SDIFF with first set empty (0 ms) [ok]: SDIFF with same set two times (0 ms) [ok]: Regression for quicklist #3343 bug (124 ms) [ok]: SWAPDB wants to wake blocked client, but the key already expired (131 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (404 ms) [ok]: Check compression with recompress (43 ms) [ok]: valkey-server command line arguments - wrong usage that we support anyway (215 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-lru) (1263 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (86 ms) [ok]: Timedout script does not cause a false dead client (87 ms) [ok]: Crash due to wrongly recompress after lrem (205 ms) [ok]: valkey-server command line arguments - allow option value to use the `--` prefix (213 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element before it (41 ms) [ok]: MULTI + LPUSH + EXPIRE + DEBUG SLEEP on blocked client, key already expired (298 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element after it (41 ms) [ok]: Timedout script link is still usable after Lua returns (145 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 (1 ms) [ok]: GETEX with smallest integer should report an error (0 ms) [ok]: EXPIRE with big integer overflows when converted to milliseconds (1 ms) [ok]: PEXPIRE with big integer overflow when basetime is added (0 ms) [ok]: EXPIRE with big negative integer (0 ms) [ok]: PEXPIREAT with big integer works (0 ms) [ok]: PEXPIREAT with big negative integer works (1 ms) [ok]: valkey-server command line arguments - option name and option value in the same arg and `--` prefix (214 ms) [ok]: WAITAOF master isn't configured to do AOF (1003 ms) [ok]: LTRIM stress testing - quicklist (5118 ms) [ok]: WAITAOF replica isn't configured to do AOF (102 ms) [ok]: Timedout scripts and unblocked command (381 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 (3 ms) [ok]: Before the replica connects we issue two EVAL commands (0 ms) [ok]: Connect a replica to the master instance (101 ms) [ok]: Replication of script multiple pushes to list with BLPOP (0 ms) [ok]: Lua scripts using SELECT are replicated correctly (0 ms) [ok]: BLPOP unblock but the key is expired and then block again - reprocessing command (1002 ms) [ok]: BLPOP when new key is moved into place (0 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 (1 ms) [ok]: BLPOP: with zero timeout should block indefinitely (0 ms) [ok]: BLPOP: with 0.001 timeout should not block indefinitely (21 ms) [ok]: BLPOP: second argument is not a list (0 ms) [ok]: valkey-server command line arguments - save with empty input (1068 ms) [ok]: WAITAOF both local and replica got AOF enabled at runtime (902 ms) [ok]: valkey-server command line arguments - take one bulk string with spaces for MULTI_ARG configs parsing (213 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-lfu) (1717 ms) [ok]: valkey-server command line arguments - dir multiple times (221 ms) [ok]: cannot modify protected configuration - no (0 ms) [ok]: cannot modify protected configuration - local (4 ms) [ok]: Connect a replica to the master instance (101 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 (0 ms) [ok]: Using side effects is not a problem with command replication (0 ms) [ok]: BLPOP: timeout (1076 ms) [ok]: BLPOP: arguments are empty (1 ms) [ok]: BRPOP: with single empty list argument (1 ms) [ok]: BRPOP: with negative timeout (1 ms) [ok]: BRPOP: with non-integer timeout (0 ms) [ok]: BRPOP: with zero timeout should block indefinitely (1 ms) [ok]: BRPOP: with 0.001 timeout should not block indefinitely (24 ms) [ok]: BRPOP: second argument is not a list (0 ms) [ok]: SDIFF fuzzing (2570 ms) [ok]: SDIFF against non-set should throw error (0 ms) [ok]: SDIFF should handle non existing key as empty (0 ms) [ok]: SDIFFSTORE against non-set should throw error (1 ms) [ok]: SDIFFSTORE should handle non existing key as empty (1 ms) [ok]: SINTER against non-set should throw error (1 ms) [ok]: SINTER should handle non existing key as empty (0 ms) [ok]: SINTER with same integer elements but different encoding (0 ms) [ok]: SINTERSTORE against non-set should throw error (0 ms) [ok]: SINTERSTORE against non existing keys should delete dstkey (0 ms) [ok]: SUNION against non-set should throw error (1 ms) [ok]: SUNION should handle non existing key as empty (0 ms) [ok]: SUNIONSTORE against non-set should throw error (1 ms) [ok]: SUNIONSTORE should handle non existing key as empty (1 ms) [ok]: SUNIONSTORE against non existing keys should delete dstkey (0 ms) [ok]: SPOP basics - listpack (1 ms) [ok]: SPOP with =1 - listpack (0 ms) [ok]: SRANDMEMBER - listpack (6 ms) [ok]: SPOP basics - intset (0 ms) [ok]: SPOP with =1 - intset (1 ms) [ok]: SRANDMEMBER - intset (5 ms) [ok]: SPOP integer from listpack set (1 ms) [ok]: SPOP with - listpack (2 ms) [ok]: SPOP with - intset (2 ms) [ok]: SPOP with - hashtable (2 ms) [ok]: SPOP using integers, testing Knuth's and Floyd's algorithm (2 ms) [ok]: SPOP using integers with Knuth's algorithm (0 ms) [ok]: SPOP new implementation: code path #1 intset (1 ms) [ok]: SPOP new implementation: code path #2 intset (2 ms) [ok]: SPOP new implementation: code path #3 intset (1 ms) [ok]: SPOP new implementation: code path #1 listpack (2 ms) [ok]: SPOP new implementation: code path #2 listpack (1 ms) [ok]: SPOP new implementation: code path #3 listpack (2 ms) [ok]: SPOP new implementation: code path #1 propagate as DEL or UNLINK (12 ms) [ok]: SRANDMEMBER count of 0 is handled correctly (0 ms) [ok]: SRANDMEMBER with against non existing key (1 ms) [ok]: SRANDMEMBER count overflow (0 ms) [ok]: SRANDMEMBER count of 0 is handled correctly - emptyarray (0 ms) [ok]: SRANDMEMBER with against non existing key - emptyarray (0 ms) [ok]: SRANDMEMBER with - listpack (14 ms) [ok]: SRANDMEMBER with - intset (13 ms) [ok]: SRANDMEMBER with - hashtable (13 ms) [ok]: SRANDMEMBER histogram distribution - listpack (56 ms) [ok]: All time-to-live(TTL) in commands are propagated as absolute timestamp in milliseconds in AOF (2020 ms) [ok]: SRANDMEMBER histogram distribution - intset (54 ms) [ok]: SRANDMEMBER histogram distribution - hashtable (55 ms) [ok]: SMOVE basics - from regular set to intset (2 ms) [ok]: SMOVE basics - from intset to regular set (1 ms) [ok]: SMOVE non existing key (1 ms) [ok]: SMOVE non existing src set (1 ms) [ok]: SMOVE from regular set to non existing destination set (0 ms) [ok]: SMOVE from intset to non existing destination set (1 ms) [ok]: SMOVE wrong src key type (1 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 (1 ms) [ok]: All TTL in commands are propagated as absolute timestamp in replication stream (68 ms) [ok]: WAITAOF master sends PING after last write (1202 ms) [ok]: First server should have role slave after REPLICAOF (1 ms) [ok]: For all replicated TTL-related commands, absolute expire times are identical on primary and replica (7 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-random) (1266 ms) [ok]: LATENCY GRAPH can output the expire event graph (0 ms) [ok]: LATENCY of expire events are correctly collected (4275 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]: expired key which is created in writeable replicas should be deleted by active expiry (301 ms) [ok]: SET command will remove expire (0 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed (2 ms) [ok]: test RESP2/2 big number protocol parsing (0 ms) [ok]: test RESP2/2 malformed big number protocol parsing (0 ms) [ok]: test RESP2/2 map protocol parsing (0 ms) [ok]: test RESP2/2 set protocol parsing (0 ms) [ok]: test RESP2/2 double protocol parsing (0 ms) [ok]: test RESP2/2 null protocol parsing (0 ms) [ok]: test RESP2/2 verbatim protocol parsing (0 ms) [ok]: test RESP2/2 true protocol parsing (0 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (0 ms) [ok]: test RESP2/3 malformed big number protocol parsing (0 ms) [ok]: test RESP2/3 map protocol parsing (0 ms) [ok]: test RESP2/3 set protocol parsing (0 ms) [ok]: test RESP2/3 double protocol parsing (0 ms) [ok]: test RESP2/3 null protocol parsing (0 ms) [ok]: test RESP2/3 verbatim protocol parsing (0 ms) [ok]: test RESP2/3 true protocol parsing (0 ms) [ok]: test RESP2/3 false protocol parsing (0 ms) [ok]: test RESP3/2 big number protocol parsing (0 ms) [ok]: test RESP3/2 malformed big number protocol parsing (0 ms) [ok]: test RESP3/2 map protocol parsing (0 ms) [ok]: test RESP3/2 set protocol parsing (0 ms) [ok]: test RESP3/2 double protocol parsing (0 ms) [ok]: test RESP3/2 null protocol parsing (0 ms) [ok]: test RESP3/2 verbatim protocol parsing (0 ms) [ok]: test RESP3/2 true protocol parsing (0 ms) [ok]: test RESP3/2 false protocol parsing (0 ms) [ok]: test RESP3/3 big number protocol parsing (1 ms) [ok]: test RESP3/3 malformed big number protocol parsing (0 ms) [ok]: test RESP3/3 map protocol parsing (0 ms) [ok]: test RESP3/3 set protocol parsing (0 ms) [ok]: test RESP3/3 double protocol parsing (0 ms) [ok]: test RESP3/3 null protocol parsing (0 ms) [ok]: test RESP3/3 verbatim protocol parsing (0 ms) [ok]: test RESP3/3 true protocol parsing (0 ms) [ok]: test RESP3/3 false protocol parsing (1 ms) [ok]: test resp3 attribute protocol parsing (0 ms) [ok]: Script block the time during execution (10 ms) [ok]: Script delete the expired key (3 ms) [ok]: TIME command using cached time (10 ms) [ok]: config during loading (858 ms) [ok]: Script block the time in some expiration related commands (81 ms) [ok]: RESTORE expired keys with expiration time (10 ms) [ok]: BRPOP: timeout (1072 ms) [ok]: BRPOP: arguments are empty (1 ms) [ok]: BLMPOP_LEFT: with single empty list argument (1 ms) [ok]: BLMPOP_LEFT: with negative timeout (0 ms) [ok]: BLMPOP_LEFT: with non-integer timeout (0 ms) [ok]: BLMPOP_LEFT: with zero timeout should block indefinitely (0 ms) [ok]: BLMPOP_LEFT: with 0.001 timeout should not block indefinitely (21 ms) [ok]: BLMPOP_LEFT: second argument is not a list (1 ms) [ok]: Test check paused info during the cluster failover in info clients (57 ms) [ok]: Script - disallow write on OOM (0 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (0 ms) [ok]: EVAL - Return _G (0 ms) [ok]: EVAL - Return table with a metatable that raise error (0 ms) [ok]: EVAL - Return table with a metatable that call server (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 (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? (1 ms) [ok]: EVALSHA - Do we get an error on invalid SHA1? (0 ms) [ok]: EVALSHA - Do we get an error on non defined SHA1? (0 ms) [ok]: EVAL - Redis integer -> Lua type conversion (0 ms) [ok]: EVAL - Lua number -> Redis integer conversion (0 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (0 ms) [ok]: EVAL - Redis multi bulk -> Lua type conversion (1 ms) [ok]: EVAL - Redis status reply -> Lua type conversion (0 ms) [ok]: EVAL - Redis error reply -> Lua type conversion (0 ms) [ok]: EVAL - Redis nil bulk reply -> Lua type conversion (1 ms) [ok]: EVAL - Is the Lua client using the currently selected DB? (0 ms) [ok]: EVAL - SELECT inside Lua should not affect the caller (0 ms) [ok]: EVAL - Scripts do not block on blpop command (1 ms) [ok]: EVAL - Scripts do not block on brpop command (0 ms) [ok]: EVAL - Scripts do not block on brpoplpush command (1 ms) [ok]: EVAL - Scripts do not block on blmove command (0 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (0 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (1 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (1 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (0 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option -- non empty stream (1 ms) [ok]: EVAL - Scripts can run non-deterministic commands (0 ms) [ok]: EVAL - No arguments to redis.call/pcall is considered an error (0 ms) [ok]: EVAL - redis.call variant raises a Lua error on Redis cmd error (1) (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? (1 ms) [33/132 done]: unit/pause (13 seconds) Testing unit/type/incr [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]: EVAL - cmsgpack pack/unpack smoke test (184 ms) [ok]: INCR fails against key with spaces (left) (0 ms) [ok]: INCR fails against key with spaces (right) (0 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (1 ms) [ok]: INCR fails against key with spaces (both) (0 ms) [ok]: EVAL - Numerical sanity check from bitop (0 ms) [ok]: DECRBY negation overflow (0 ms) [ok]: INCR fails against a key holding a list (0 ms) [ok]: EVAL - Verify minimal bitop functionality (0 ms) [ok]: DECRBY over 32bit value with over 32bit increment, negative res (0 ms) [ok]: EVAL - Able to parse trailing comments (0 ms) [ok]: DECRBY against key is not exist (0 ms) [ok]: EVAL_RO - Successful case (0 ms) [ok]: INCR can modify objects in-place (0 ms) [ok]: EVAL_RO - Cannot run write commands (0 ms) [ok]: INCRBYFLOAT against non existing key (1 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 (0 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]: SCRIPTING FLUSH - is able to clear the scripts cache? (18 ms) [ok]: SCRIPTING FLUSH ASYNC (6 ms) [ok]: SCRIPT EXISTS - can detect already defined scripts? (0 ms) [ok]: SCRIPT LOAD - is able to register scripts in the scripting cache (1 ms) [ok]: SCRIPT SHOW - is able to dump scripts from the scripting cache (0 ms) [ok]: SCRIPT SHOW - wrong sha1 length or invalid sha1 char return noscript error (0 ms) [ok]: SCRIPT SHOW - script not exist return noscript error (1 ms) [ok]: SORT is normally not alpha re-ordered for the scripting engine (0 ms) [ok]: SORT BY output gets ordered for scripting (1 ms) [ok]: SORT BY with GET gets ordered for scripting (0 ms) [ok]: redis.sha1hex() implementation (1 ms) [34/132 done]: unit/type/incr (0 seconds) Testing unit/type/stream-cgroups [ok]: WAITAOF master client didn't send any write command (1202 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 (0 ms) [ok]: XGROUP CREATE: automatic stream creation works with MKSTREAM (1 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 (0 ms) [ok]: XPENDING can return single consumer items (0 ms) [ok]: XPENDING only group (1 ms) [ok]: XPENDING with IDLE (20 ms) [ok]: XPENDING with exclusive range intervals works as expected (1 ms) [ok]: XACK is able to remove items from the consumer/group PEL (0 ms) [ok]: XACK can't remove the same item multiple times (0 ms) [ok]: XACK is able to accept multiple arguments (0 ms) [ok]: XACK should fail if got at least one invalid ID (0 ms) [ok]: PEL NACK reassignment after XGROUP SETID event (1 ms) [ok]: XREADGROUP will not report data on empty history. Bug #5577 (1 ms) [ok]: XREADGROUP history reporting of deleted entries. Bug #5570 (1 ms) [ok]: intsets implementation stress testing (1388 ms) [ok]: Blocking XREADGROUP will not reply with an empty array (32 ms) [ok]: Blocking XREADGROUP: key deleted (1 ms) [ok]: Blocking XREADGROUP: key type changed with SET (1 ms) [ok]: Blocking XREADGROUP: key type changed with transaction (1 ms) [ok]: Blocking XREADGROUP: flushed DB (1 ms) [ok]: Blocking XREADGROUP: swapped DB, key doesn't exist (1 ms) [ok]: Blocking XREADGROUP: swapped DB, key is not a stream (1 ms) [ok]: XREAD and XREADGROUP against wrong parameter (0 ms) [ok]: Blocking XREAD: key deleted (1 ms) [ok]: Blocking XREAD: key type changed with SET (1 ms) [ok]: MEMORY commands during loading (805 ms) [ok]: Blocking XREADGROUP for stream that ran dry (issue #5299) (24 ms) [ok]: Blocking XREADGROUP will ignore BLOCK if ID is not > (2 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on list (2 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - avoid endless loop (1 ms) [35/133 done]: unit/type/set (5 seconds) Testing unit/type/string [ok]: SET and GET an item (0 ms) [ok]: SET and GET an empty item (0 ms) [ok]: Very big payload in GET/SET (54 ms) [ok]: CONFIG REWRITE handles rename-command properly (333 ms) [ok]: BLMPOP_LEFT: timeout (1077 ms) [ok]: BLMPOP_LEFT: arguments are empty (1 ms) [ok]: BLMPOP_RIGHT: with single empty list argument (0 ms) [ok]: BLMPOP_RIGHT: with negative timeout (1 ms) [ok]: BLMPOP_RIGHT: with non-integer timeout (0 ms) [ok]: BLMPOP_RIGHT: with zero timeout should block indefinitely (1 ms) [ok]: BLMPOP_RIGHT: with 0.001 timeout should not block indefinitely (21 ms) [ok]: BLMPOP_RIGHT: second argument is not a list (1 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-ttl) (1699 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 (0 ms) [ok]: Globals protection reading an undeclared global variable (1 ms) [ok]: Globals protection setting an undeclared global* (0 ms) [ok]: lua bit.tohex bug (0 ms) [ok]: Test an example script DECR_IF_GT (1 ms) [ok]: random numbers are random now (0 ms) [ok]: Scripting engine PRNG can be seeded correctly (0 ms) [ok]: CONFIG REWRITE handles alias config properly (669 ms) [36/133 done]: unit/introspection (11 seconds) Testing unit/type/hash [ok]: EVAL does not leak in the Lua stack (299 ms) [ok]: WAITAOF master client didn't send any command (1201 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - reprocessing command (1095 ms) [ok]: XGROUP DESTROY should unblock XREADGROUP with -NOGROUP (2 ms) [ok]: RENAME can unblock XREADGROUP with data (1 ms) [ok]: RENAME can unblock XREADGROUP with -NOGROUP (1 ms) [ok]: HSET/HLEN - Small hash creation (1 ms) [ok]: Is the small hash encoded with a listpack? (0 ms) [ok]: HRANDFIELD - listpack (5 ms) [ok]: SPOP: We can call scripts rewriting client->argv from Lua (100 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 (1 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed after loadaof (2005 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]: MGET: mget shouldn't be propagated in Lua (100 ms) [ok]: GETEX propagate as to replica as PERSIST, UNLINK, or nothing (73 ms) [ok]: EXPIRE with NX option on a key with ttl (1 ms) [ok]: EXPIRE with NX option on a key without ttl (0 ms) [ok]: EXPIRE with XX option on a key with ttl (0 ms) [ok]: EXPIRE with XX option on a key without ttl (0 ms) [ok]: EXPIRE with GT option on a key with lower ttl (1 ms) [ok]: EXPIRE with GT option on a key with higher ttl (0 ms) [ok]: EXPIRE with GT option on a key without ttl (0 ms) [ok]: EXPIRE with LT option on a key with higher ttl (0 ms) [ok]: EXPIRE with LT option on a key with lower ttl (1 ms) [ok]: EXPIRE with LT option on a key without ttl (0 ms) [ok]: EXPIRE with LT and XX option on a key with ttl (0 ms) [ok]: HRANDFIELD with - hashtable (96 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 (1 ms) [ok]: EXPIRE with non-existed key (0 ms) [ok]: EXPIRE: We can call scripts rewriting client->argv from Lua (100 ms) [ok]: HRANDFIELD with - listpack (95 ms) [ok]: Server should not propagate the read command on lazy expire (96 ms) [ok]: HSET/HLEN - Big hash creation (73 ms) [ok]: Is the big hash encoded with an hash table? (0 ms) [ok]: HGET against the small hash (0 ms) [ok]: SCAN: Lazy-expire should not be wrapped in MULTI/EXEC (100 ms) [ok]: HGET against the big hash (53 ms) [ok]: HGET against non existing key (0 ms) [ok]: HSET in update and insert mode (1 ms) [ok]: HSETNX target key missing - small hash (0 ms) [ok]: HSETNX target key exists - small hash (0 ms) [ok]: HSETNX target key missing - big hash (1 ms) [ok]: HSETNX target key exists - big hash (0 ms) [ok]: HSET/HMSET wrong number of args (0 ms) [ok]: HMSET - small hash (0 ms) [ok]: HMSET - big hash (52 ms) [ok]: HMGET against non existing key and fields (1 ms) [ok]: Hash commands against wrong type (1 ms) [ok]: HMGET - small hash (0 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]: HMGET - big hash (51 ms) [ok]: HKEYS - small hash (1 ms) [ok]: BLMPOP_RIGHT: timeout (1076 ms) [ok]: HKEYS - big hash (9 ms) [ok]: HVALS - small hash (0 ms) [ok]: BLMPOP_RIGHT: arguments are empty (3 ms) [ok]: BLPOP inside a transaction (1 ms) [ok]: BLMPOP_LEFT inside a transaction (1 ms) [ok]: HVALS - big hash (1 ms) [ok]: HGETALL - small hash (0 ms) [ok]: HGETALL - big hash (20 ms) [ok]: HGETALL against non-existing key (0 ms) [ok]: HDEL and return value (1 ms) [ok]: HDEL - more than a single value (0 ms) [ok]: HDEL - hash becomes empty before deleting all specified fields (1 ms) [ok]: HEXISTS (0 ms) [ok]: Is a ziplist encoded Hash promoted on big payload? (0 ms) [ok]: HINCRBY against non existing database key (0 ms) [ok]: HINCRBY HINCRBYFLOAT against non-integer increment value (0 ms) [ok]: HINCRBY against non existing hash key (0 ms) [ok]: HINCRBY against hash key created by hincrby itself (0 ms) [ok]: HINCRBY against hash key originally set with HSET (0 ms) [ok]: HINCRBY over 32bit value (0 ms) [ok]: HINCRBY over 32bit value with over 32bit increment (1 ms) [ok]: HINCRBY fails against hash value with spaces (left) (0 ms) [ok]: HINCRBY fails against hash value with spaces (right) (0 ms) [ok]: HINCRBY can detect overflows (1 ms) [ok]: HINCRBYFLOAT against non existing database key (0 ms) [ok]: HINCRBYFLOAT against non existing hash key (0 ms) [ok]: HINCRBYFLOAT against hash key created by hincrby itself (1 ms) [ok]: HINCRBYFLOAT against hash key originally set with HSET (0 ms) [ok]: HINCRBYFLOAT over 32bit value (0 ms) [ok]: HINCRBYFLOAT over 32bit value with over 32bit increment (1 ms) [ok]: HINCRBYFLOAT fails against hash value with spaces (left) (0 ms) [ok]: HINCRBYFLOAT fails against hash value with spaces (right) (0 ms) [ok]: HINCRBYFLOAT fails against hash value that contains a null-terminator in the middle (1 ms) [ok]: HSTRLEN against the small hash (0 ms) [ok]: Import mode should forbid active expiration (111 ms) [ok]: INCRBYFLOAT: We can call scripts expanding client->argv from Lua (319 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) (0 ms) [ok]: Functions in the Redis namespace are able to report errors (0 ms) [ok]: CLUSTER RESET can not be invoke from within a script (0 ms) [ok]: Script with RESP3 map (1 ms) [ok]: Import mode should forbid lazy expiration (11 ms) [ok]: HSTRLEN against the big hash (49 ms) [ok]: HSTRLEN against non existing field (0 ms) [ok]: HSTRLEN corner cases (1 ms) [ok]: HINCRBYFLOAT over hash-max-listpack-value encoded with a listpack (1 ms) [ok]: Hash ziplist regression test for large keys (1 ms) [ok]: LTRIM stress testing - listpack (5174 ms) [ok]: Hash fuzzing #1 - 10 fields (21 ms) [37/133 done]: unit/type/list-2 (10 seconds) Testing unit/type/stream [ok]: Hash fuzzing #2 - 10 fields (13 ms) [ok]: XCLAIM can claim PEL items from another consumer (603 ms) [ok]: Script return recursive object (104 ms) [ok]: Client can visit expired key in import-source state (111 ms) [ok]: BLMPOP propagate as pop with count command to replica (198 ms) [ok]: LPUSHX, RPUSHX - generic (1 ms) [ok]: GEOSEARCH fuzzy test - byradius (17101 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 (0 ms) [ok]: XADD IDs are incremental when ms is the same as well (1 ms) [ok]: XADD IDs correctly report an error when overflowing (0 ms) [ok]: LPUSHX, RPUSHX - quicklist (42 ms) [ok]: XADD auto-generated sequence is incremented for last ID (0 ms) [ok]: Script check unpack with massive arguments (62 ms) [ok]: XADD auto-generated sequence is zero for future timestamp ID (1 ms) [ok]: Script read key with expiration set (0 ms) [ok]: XADD auto-generated sequence can't be smaller than last ID (0 ms) [ok]: Script del key with expiration set (0 ms) [ok]: XADD auto-generated sequence can't overflow (0 ms) [ok]: XADD 0-* should succeed (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 (1 ms) [ok]: Try trick readonly table on json table (0 ms) [ok]: Try trick readonly table on cmsgpack table (0 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (0 ms) [ok]: Test dofile are not available (0 ms) [ok]: Test print are not available (1 ms) [ok]: LINSERT - quicklist (43 ms) [ok]: LPUSHX, RPUSHX - listpack (1 ms) [ok]: LINSERT - listpack (2 ms) [ok]: LINSERT raise error on bad syntax (0 ms) [ok]: LINSERT against non-list value error (0 ms) [ok]: LINSERT against non existing key (0 ms) [ok]: XADD with MAXLEN option (66 ms) [ok]: LINDEX consistency test - listpack (74 ms) [ok]: XADD with MAXLEN option and the '=' argument (67 ms) [ok]: LINDEX random access - listpack (35 ms) [ok]: XADD with MAXLEN option and the '~' argument (56 ms) [ok]: XADD with NOMKSTREAM option (0 ms) [ok]: Very big payload random access (1749 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (71 ms) [ok]: XADD with MINID option (67 ms) [ok]: XTRIM with MINID option (1 ms) [ok]: XTRIM with MINID option, big delta from master record (0 ms) [ok]: XCLAIM without JUSTID increments delivery count (403 ms) [ok]: LINDEX consistency test - listpack (90 ms) [ok]: LINDEX random access - listpack (57 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (113 ms) [ok]: XCLAIM same consumer (202 ms) [ok]: LINDEX consistency test - quicklist (41 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (402 ms) [ok]: LINDEX random access - quicklist (27 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (56 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (85 ms) [ok]: LINDEX consistency test - quicklist (79 ms) [ok]: Timedout script does not cause a false dead client (86 ms) [ok]: LINDEX random access - quicklist (55 ms) [ok]: Hash fuzzing #1 - 512 fields (959 ms) [ok]: Timedout script link is still usable after Lua returns (144 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (110 ms) [ok]: LLEN against non-list value error (0 ms) [ok]: LLEN against non existing key (0 ms) [ok]: LINDEX against non-list value error (0 ms) [ok]: LINDEX against non existing key (0 ms) [ok]: LPUSH against non-list value error (0 ms) [ok]: RPUSH against non-list value error (0 ms) [ok]: RPOPLPUSH base case - quicklist (42 ms) [ok]: LMOVE left left base case - quicklist (42 ms) [ok]: LMOVE left right base case - quicklist (41 ms) [ok]: LMOVE right left base case - quicklist (41 ms) [ok]: LMOVE right right base case - quicklist (41 ms) [ok]: XAUTOCLAIM can claim PEL items from another consumer (604 ms) [ok]: RPOPLPUSH with the same list as src and dst - quicklist (41 ms) [ok]: LMOVE left left with the same list as src and dst - quicklist (41 ms) [ok]: SET 10000 numeric keys and access all them in reverse order (988 ms) [ok]: DBSIZE should be 10000 now (0 ms) [ok]: SETNX target key missing (0 ms) [ok]: SETNX target key exists (0 ms) [ok]: SETNX against not-expired volatile key (0 ms) [ok]: LMOVE left right with the same list as src and dst - quicklist (41 ms) [ok]: LMOVE right left with the same list as src and dst - quicklist (41 ms) [ok]: Timedout scripts and unblocked command (380 ms) [ok]: MIGRATE cached connections are released after some time (15002 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-random) (2461 ms) [ok]: LMOVE right right with the same list as src and dst - quicklist (41 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 (1 ms) [ok]: XAUTOCLAIM with XDEL (1 ms) [ok]: XAUTOCLAIM with XDEL and count (1 ms) [ok]: XAUTOCLAIM with out of range count (0 ms) [ok]: XCLAIM with trimming (1 ms) [ok]: XINFO FULL output (3 ms) [ok]: RPOPLPUSH with quicklist source and existing target quicklist (83 ms) [ok]: Timedout scripts that modified data can't be killed by SCRIPT KILL (202 ms) [ok]: LMOVE left left with quicklist source and existing target quicklist (82 ms) [ok]: SHUTDOWN NOSAVE can kill a timedout script anyway (3 ms) [ok]: MIGRATE is able to migrate a key between two instances (218 ms) [ok]: Hash fuzzing #2 - 512 fields (633 ms) [ok]: Consumer seen-time and active-time (203 ms) [ok]: XGROUP CREATECONSUMER: create consumer if does not exist (1 ms) [ok]: XGROUP CREATECONSUMER: group must exist (0 ms) [ok]: LMOVE left right with quicklist source and existing target quicklist (83 ms) [ok]: LMOVE right left with quicklist source and existing target quicklist (82 ms) [ok]: XREADGROUP with NOACK creates consumer (4 ms) [ok]: MIGRATE is able to copy a key between two instances (222 ms) [ok]: Before the replica connects we issue two EVAL commands (1 ms) [ok]: LMOVE right right with quicklist source and existing target quicklist (83 ms) [ok]: client evicted due to client tracking prefixes (10881 ms) [ok]: RPOPLPUSH with quicklist source and existing target listpack (42 ms) [ok]: client evicted due to output buf (10 ms) [ok]: Consumer without PEL is present in AOF after AOFRW (106 ms) [ok]: client no-evict on (30 ms) [ok]: LMOVE left left with quicklist source and existing target listpack (42 ms) [ok]: Connect a replica to the master instance (101 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]: client no-evict off (32 ms) [ok]: XADD mass insertion and XLEN (1552 ms) [ok]: XADD with ID 0-0 (0 ms) [ok]: XADD with LIMIT delete entries no more than limit (1 ms) [ok]: XRANGE COUNT works as expected (0 ms) [ok]: XREVRANGE COUNT works as expected (1 ms) [ok]: LMOVE left right with quicklist source and existing target listpack (41 ms) [ok]: Consumer group read counter and lag in empty streams (2 ms) [ok]: Consumer group read counter and lag sanity (6 ms) [ok]: Consumer group lag with XDELs (6 ms) [ok]: LMOVE right left with quicklist source and existing target listpack (43 ms) [ok]: Consumer group lag with XTRIM (7 ms) [ok]: Consumer group lag with XADD trimming (7 ms) [ok]: Loading from legacy (Redis <= v6.2.x, rdb_ver < 10) persistence (1 ms) [ok]: Loading from legacy (Redis <= v7.0.x, rdb_ver < 11) persistence (0 ms) [ok]: MIGRATE will not overwrite existing keys, unless REPLACE is used (217 ms) [ok]: LMOVE right right with quicklist source and existing target listpack (41 ms) [ok]: RPOPLPUSH base case - listpack (0 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 (0 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 (0 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 (1 ms) [ok]: RPOPLPUSH with listpack source and existing target quicklist (41 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 (42 ms) [ok]: LMOVE right left with listpack source and existing target quicklist (41 ms) [ok]: avoid client eviction when client is freed by output buffer limit (75 ms) [ok]: Consumer group last ID propagation to slave (NOACK=0) (104 ms) [ok]: MIGRATE propagates TTL correctly (216 ms) [ok]: LMOVE right right with listpack source and existing target quicklist (42 ms) [ok]: RPOPLPUSH with listpack source and existing target listpack (0 ms) [ok]: LMOVE left left with listpack source and existing target listpack (0 ms) [ok]: LMOVE left right with listpack source and existing target listpack (1 ms) [ok]: LMOVE right left with listpack source and existing target listpack (1 ms) [ok]: LMOVE right right with listpack source and existing target listpack (1 ms) [ok]: RPOPLPUSH against non existing key (0 ms) [ok]: RPOPLPUSH against non list src key (0 ms) [ok]: XRANGE can be used to iterate the whole stream (315 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]: Consumer group last ID propagation to slave (NOACK=1) (102 ms) [ok]: Basic LPOP/RPOP/LMPOP - quicklist (82 ms) [ok]: Basic LPOP/RPOP/LMPOP - listpack (1 ms) [ok]: LPOP/RPOP/LMPOP against empty list (1 ms) [ok]: LPOP/RPOP/LMPOP NON-BLOCK or BLOCK against non list value (1 ms) [ok]: Mass RPOP/LPOP - listpack (27 ms) [ok]: Mass RPOP/LPOP - listpack (55 ms) [ok]: LMPOP with illegal argument (1 ms) [ok]: Stress test the hash ziplist -> hashtable encoding conversion (864 ms) [ok]: Hash ziplist of various encodings (85 ms) [ok]: Hash ziplist of various encodings - sanitize dump (3 ms) [ok]: HINCRBYFLOAT does not allow NaN or Infinity (0 ms) [ok]: LMPOP single existing list - quicklist (124 ms) [38/133 done]: unit/type/hash (3 seconds) Testing unit/type/zset [ok]: Replication tests of XCLAIM with deleted entries (autoclaim=0) (104 ms) [ok]: Replication tests of XCLAIM with deleted entries (autoclaim=1) (2 ms) [ok]: XREADGROUP ACK would propagate entries-read (3 ms) [ok]: WAITAOF when replica switches between masters, fsync: no (3327 ms) [ok]: Stress tester for #3343-alike bugs comp: 2 (8223 ms) [ok]: LMPOP multiple existing lists - quicklist (166 ms) [ok]: LMPOP single existing list - listpack (2 ms) [ok]: LMPOP multiple existing lists - listpack (2 ms) [ok]: Check encoding - listpack (1 ms) [ok]: ZSET basic ZADD and score update - listpack (0 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 (1 ms) [ok]: ZADD XX option without key - listpack (0 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 (0 ms) [ok]: ZADD LT updates existing elements when new scores are lower - listpack (1 ms) [ok]: ZADD GT XX updates existing elements when new scores are greater and skips new elements - listpack (0 ms) [ok]: ZADD LT XX updates existing elements when new scores are lower and skips new elements - listpack (0 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 (0 ms) [ok]: ZADD GT and NX are not compatible - listpack (0 ms) [ok]: ZADD LT and NX are not compatible - listpack (0 ms) [ok]: ZADD LT and GT are not compatible - listpack (0 ms) [ok]: ZADD INCR LT/GT replies with nill if score not updated - listpack (0 ms) [ok]: ZADD INCR LT/GT with inf - listpack (1 ms) [ok]: ZADD INCR works like ZINCRBY - listpack (1 ms) [ok]: ZADD INCR works with a single score-element pair - listpack (0 ms) [ok]: ZADD CH option changes return value to all changed elements - listpack (0 ms) [ok]: ZINCRBY calls leading to NaN result in error - listpack (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 (0 ms) [ok]: ZADD - Variadic version does not add nothing on single parsing err - listpack (1 ms) [ok]: ZADD - Variadic version will raise error on missing arg - listpack (0 ms) [ok]: ZINCRBY does not work variadic even if shares ZADD implementation - listpack (0 ms) [ok]: ZCARD basics - listpack (0 ms) [ok]: ZREM removes key after last element is removed - listpack (1 ms) [ok]: ZREM variadic version - listpack (0 ms) [ok]: ZREM variadic version -- remove elements after key deletion - listpack (0 ms) [ok]: ZRANGE basics - listpack (1 ms) [ok]: ZREVRANGE basics - listpack (1 ms) [ok]: ZRANK/ZREVRANK basics - listpack (1 ms) [ok]: ZRANK - after deletion - listpack (0 ms) [ok]: ZINCRBY - can create a new sorted set - listpack (1 ms) [ok]: ZINCRBY - increment and decrement - listpack (0 ms) [ok]: ZINCRBY return value - listpack (0 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - listpack (3 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - listpack (1 ms) [ok]: ZRANGEBYSCORE with LIMIT - listpack (3 ms) [ok]: ZRANGEBYSCORE with LIMIT and WITHSCORES - listpack (1 ms) [ok]: ZRANGEBYSCORE with non-value min or max - listpack (0 ms) [ok]: ZRANGEBYLEX/ZREVRANGEBYLEX/ZLEXCOUNT basics - listpack (2 ms) [ok]: ZLEXCOUNT advanced - listpack (1 ms) [ok]: ZRANGEBYLEX with LIMIT - listpack (3 ms) [ok]: ZRANGEBYLEX with invalid lex range specifiers - listpack (1 ms) [ok]: ZREMRANGEBYSCORE basics - listpack (6 ms) [ok]: ZREMRANGEBYSCORE with non-value min or max - listpack (0 ms) [ok]: LMPOP propagate as pop with count command to replica (45 ms) [ok]: ZREMRANGEBYRANK basics - listpack (3 ms) [ok]: ZREMRANGEBYLEX basics - listpack (7 ms) [ok]: ZUNIONSTORE against non-existing key doesn't set destination - listpack (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF against non-existing key - listpack (1 ms) [ok]: ZUNIONSTORE with empty set - listpack (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with empty set - listpack (1 ms) [ok]: ZUNIONSTORE basics - listpack (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with integer members - listpack (1 ms) [ok]: ZUNIONSTORE with weights - listpack (0 ms) [ok]: ZUNION with weights - listpack (1 ms) [ok]: ZUNIONSTORE with a regular set and weights - listpack (0 ms) [ok]: ZUNIONSTORE with AGGREGATE MIN - listpack (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 (0 ms) [ok]: ZINTERSTORE basics - listpack (0 ms) [ok]: ZINTER basics - listpack (0 ms) [ok]: ZINTERCARD with illegal arguments (1 ms) [ok]: ZINTERCARD basics - listpack (0 ms) [ok]: ZINTER RESP3 - listpack (0 ms) [ok]: ZINTERSTORE with weights - listpack (0 ms) [ok]: ZINTER with weights - listpack (0 ms) [ok]: ZINTERSTORE with a regular set and weights - listpack (0 ms) [ok]: ZINTERSTORE with AGGREGATE MIN - listpack (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]: decrease maxmemory-clients causes client eviction (456 ms) [ok]: ZINTERSTORE with +inf/-inf scores - listpack (1 ms) [ok]: ZINTERSTORE with NaN weights - listpack (0 ms) [ok]: ZDIFFSTORE basics - listpack (0 ms) [ok]: ZDIFF basics - listpack (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 (0 ms) [ok]: LRANGE basics - quicklist (42 ms) [ok]: LRANGE inverted indexes - quicklist (41 ms) [ok]: LRANGE out of range indexes including the full list - quicklist (40 ms) [ok]: LRANGE out of range negative end index - quicklist (42 ms) [ok]: Empty stream with no lastid can be rewrite into AOF correctly (104 ms) [ok]: LRANGE basics - listpack (1 ms) [ok]: LRANGE inverted indexes - listpack (1 ms) [ok]: LRANGE out of range indexes including the full list - listpack (1 ms) [ok]: LRANGE out of range negative end index - listpack (0 ms) [ok]: LRANGE against non existing key (1 ms) [ok]: LRANGE with start > end yields an empty array for backward compatibility (0 ms) [ok]: expire scan should skip dictionaries with lot's of empty buckets (817 ms) [ok]: Connect a replica to the master instance (101 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 (0 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]: evict clients only until below limit (111 ms) [39/133 done]: unit/expire (15 seconds) Testing unit/cluster/update-msg [40/133 done]: unit/type/stream-cgroups (6 seconds) Testing unit/cluster/pubsubshard-slot-migration [ok]: evict clients in right order (large to small) (133 ms) [ok]: LTRIM basics - quicklist (494 ms) [ok]: LTRIM out of range negative end index - quicklist (82 ms) [ok]: LSET - quicklist (42 ms) [ok]: LSET out of range index - quicklist (0 ms) [ok]: LTRIM basics - listpack (6 ms) [ok]: LTRIM out of range negative end index - listpack (1 ms) [ok]: LSET - listpack (1 ms) [ok]: LSET out of range index - listpack (0 ms) [ok]: LSET against non existing key (0 ms) [ok]: LSET against non list value (1 ms) [ok]: LREM remove all the occurrences - quicklist (42 ms) [ok]: LREM remove the first occurrence - quicklist (0 ms) [ok]: LREM remove non existing element - quicklist (0 ms) [ok]: LREM starting from tail with negative count - quicklist (42 ms) [ok]: LREM starting from tail with negative count (2) - quicklist (0 ms) [ok]: LREM deleting objects that may be int encoded - quicklist (41 ms) [ok]: LREM remove all the occurrences - listpack (1 ms) [ok]: LREM remove the first occurrence - listpack (0 ms) [ok]: LREM remove non existing element - listpack (1 ms) [ok]: LREM starting from tail with negative count - listpack (0 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 (1 ms) [ok]: BLPOP/BLMOVE should increase dirty (2 ms) [ok]: client unblock tests (3 ms) [ok]: client unblock tests (2 ms) [ok]: client total memory grows during client no-evict (124 ms) [ok]: List listpack -> quicklist encoding conversion (2 ms) [ok]: XREVRANGE returns the reverse of XRANGE (1501 ms) [ok]: XRANGE exclusive ranges (2 ms) [ok]: XREAD with non empty stream (0 ms) [ok]: Non blocking XREAD with empty streams (0 ms) [ok]: SETNX against expired volatile key (2528 ms) [ok]: GETEX EX option (0 ms) [ok]: GETEX PX option (0 ms) [ok]: GETEX EXAT option (0 ms) [ok]: GETEX PXAT option (0 ms) [ok]: GETEX PERSIST option (1 ms) [ok]: GETEX no option (0 ms) [ok]: GETEX syntax errors (0 ms) [ok]: GETEX and GET expired key or not exist (2 ms) [ok]: GETEX no arguments (1 ms) [ok]: GETDEL command (0 ms) [ok]: client total memory grows during maxmemory-clients disabled (124 ms) [ok]: List listpack -> quicklist encoding conversion (167 ms) [41/133 done]: unit/client-eviction (15 seconds) Testing unit/cluster/consistency-check [ok]: GETDEL propagate as DEL command to replica (75 ms) [ok]: GETEX without argument does not propagate to replica (101 ms) [ok]: MGET (0 ms) [ok]: MGET against non existing key (0 ms) [ok]: MGET against non-string key (0 ms) [ok]: GETSET (set new value) (1 ms) [ok]: GETSET (replace old value) (0 ms) [ok]: MSET base case (0 ms) [ok]: MSET/MSETNX wrong number of args (0 ms) [ok]: MSET with already existing - same key twice (0 ms) [ok]: MSETNX with already existent key (0 ms) [ok]: MSETNX with not existing keys (1 ms) [ok]: MSETNX with not existing keys - same key twice (0 ms) [ok]: MSETNX with already existing keys - same key twice (0 ms) [ok]: STRLEN against non-existing key (0 ms) [ok]: STRLEN against integer-encoded value (0 ms) [ok]: STRLEN against plain string (0 ms) [ok]: SETBIT against non-existing key (0 ms) [ok]: SETBIT against string-encoded key (0 ms) [ok]: SETBIT against integer-encoded key (1 ms) [ok]: SETBIT against key with wrong type (0 ms) [ok]: SETBIT with out of range bit offset (0 ms) [ok]: SETBIT with non-bit argument (1 ms) [ok]: List quicklist -> listpack encoding conversion (208 ms) [ok]: List encoding conversion when RDB loading (4 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]: List invalid list-max-listpack-size config (83 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-lru) (2872 ms) [ok]: List of various encodings (87 ms) [ok]: List of various encodings - sanitize dump (2 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]: Command being unblocked cause another command to get unblocked execution order test (12 ms) [ok]: SETBIT fuzzing (283 ms) [ok]: GETBIT against non-existing key (0 ms) [ok]: GETBIT against string-encoded key (0 ms) [ok]: GETBIT against integer-encoded key (0 ms) [ok]: SETRANGE against non-existing key (0 ms) [ok]: SETRANGE against string-encoded key (1 ms) [ok]: SETRANGE against integer-encoded key (1 ms) [ok]: SETRANGE against key with wrong type (0 ms) [ok]: SETRANGE with out of range offset (1 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) [42/133 done]: unit/type/list (14 seconds) Testing unit/cluster/failure-marking [ok]: Lua scripts eviction does not generate many scripts (62 ms) [ok]: Lua scripts eviction is plain LRU (31 ms) [ok]: Lua scripts eviction does not affect script load (83 ms) [ok]: XREAD with non empty second stream (799 ms) [ok]: Blocking XREAD waiting new data (1 ms) [ok]: Blocking XREAD waiting old data (1 ms) [ok]: Lua scripts promoted from eval to script load (62 ms) [ok]: Blocking XREAD will not reply with an empty array (107 ms) [ok]: Blocking XREAD for stream that ran dry (issue #5299) (101 ms) [ok]: XREAD last element from non-empty stream (1 ms) [ok]: XREAD last element from empty stream (0 ms) [ok]: XREAD last element blocking from empty stream (0 ms) [ok]: XREAD last element blocking from non-empty stream (1 ms) [ok]: XREAD last element from multiple streams (0 ms) [ok]: XREAD last element with count > 1 (1 ms) [ok]: XREAD: XADD + DEL should not awake client (1 ms) [ok]: XREAD: XADD + DEL + LPUSH should not awake client (1 ms) [ok]: XREAD with same stream name multiple times should work (1 ms) [ok]: XREAD + multiple XADD inside transaction (1 ms) [ok]: XDEL basic test (1 ms) [ok]: XDEL multiply id test (0 ms) [ok]: test RESP2/2 big number protocol parsing (0 ms) [ok]: test RESP2/2 malformed big number protocol parsing (0 ms) [ok]: test RESP2/2 map protocol parsing (1 ms) [ok]: test RESP2/2 set protocol parsing (0 ms) [ok]: test RESP2/2 double protocol parsing (0 ms) [ok]: test RESP2/2 null protocol parsing (0 ms) [ok]: test RESP2/2 verbatim protocol parsing (0 ms) [ok]: test RESP2/2 true protocol parsing (0 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (0 ms) [ok]: test RESP2/3 malformed big number protocol parsing (0 ms) [ok]: test RESP2/3 map protocol parsing (0 ms) [ok]: test RESP2/3 set protocol parsing (0 ms) [ok]: test RESP2/3 double protocol parsing (0 ms) [ok]: test RESP2/3 null protocol parsing (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 (1 ms) [ok]: test RESP3/2 malformed big number protocol parsing (0 ms) [ok]: test RESP3/2 map protocol parsing (0 ms) [ok]: test RESP3/2 set protocol parsing (0 ms) [ok]: test RESP3/2 double protocol parsing (0 ms) [ok]: test RESP3/2 null protocol parsing (0 ms) [ok]: test RESP3/2 verbatim protocol parsing (0 ms) [ok]: test RESP3/2 true protocol parsing (0 ms) [ok]: test RESP3/2 false protocol parsing (0 ms) [ok]: test RESP3/3 big number protocol parsing (0 ms) [ok]: test RESP3/3 malformed big number protocol parsing (0 ms) [ok]: test RESP3/3 map protocol parsing (0 ms) [ok]: test RESP3/3 set protocol parsing (0 ms) [ok]: test RESP3/3 double protocol parsing (0 ms) [ok]: test RESP3/3 null protocol parsing (0 ms) [ok]: test RESP3/3 verbatim protocol parsing (0 ms) [ok]: test RESP3/3 true protocol parsing (0 ms) [ok]: test RESP3/3 false protocol parsing (0 ms) [ok]: test resp3 attribute protocol parsing (0 ms) [ok]: Script block the time during execution (10 ms) [ok]: Script delete the expired key (2 ms) [ok]: TIME command using cached time (10 ms) [ok]: Script block the time in some expiration related commands (82 ms) [ok]: RESTORE expired keys with expiration time (10 ms) [ok]: WAITAOF when replica switches between masters, fsync: everysec (2326 ms) [ok]: GETRANGE fuzzing (700 ms) [ok]: Coverage: SUBSTR (1 ms) [ok]: Extended SET can detect syntax errors (0 ms) [ok]: Extended SET NX option (0 ms) [ok]: Extended SET XX option (0 ms) [ok]: Extended SET GET option (0 ms) [ok]: Extended SET GET option with no previous value (0 ms) [ok]: Extended SET GET option with XX (0 ms) [ok]: Extended SET GET option with XX and no previous value (0 ms) [ok]: Extended SET GET option with NX (0 ms) [ok]: Extended SET GET option with NX and previous value (0 ms) [ok]: Extended SET GET with incorrect type should result in wrong type error (0 ms) [ok]: SET with IFEQ conditional (1 ms) [ok]: SET with IFEQ conditional - non-string current value (0 ms) [ok]: SET with IFEQ conditional - with get (0 ms) [ok]: SET with IFEQ conditional - non string current value with get (1 ms) [ok]: SET with IFEQ conditional - with xx (0 ms) [ok]: SET with IFEQ conditional - with nx (0 ms) [ok]: Extended SET EX option (0 ms) [ok]: Extended SET PX option (0 ms) [ok]: Extended SET EXAT option (1 ms) [ok]: Extended SET PXAT option (0 ms) [ok]: SET EXAT / PXAT Expiration time is expired (100 ms) [ok]: Extended SET using multiple options at once (0 ms) [ok]: GETRANGE with huge ranges, Github issue #1844 (0 ms) [ok]: LCS basic (0 ms) [ok]: LCS len (1 ms) [ok]: LCS indexes (0 ms) [ok]: LCS indexes with match len (0 ms) [ok]: LCS indexes with match len and minimum match len (1 ms) [ok]: Shebang support for lua engine (1 ms) [ok]: Unknown shebang option (0 ms) [ok]: SETRANGE with huge offset (0 ms) [ok]: Unknown shebang flag (0 ms) [ok]: APPEND modifies the encoding from int to raw (1 ms) [ok]: allow-oom shebang flag (2 ms) [ok]: no-writes shebang flag (0 ms) [43/133 done]: unit/type/string (7 seconds) Testing unit/cluster/links [ok]: no-writes shebang flag on replica (102 ms) [ok]: not enough good replicas (0 ms) [ok]: ZDIFF fuzzing - listpack (2655 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 (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - listpack (0 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - listpack (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - listpack (1 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - listpack (1 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - listpack (1 ms) [ok]: BZPOPMIN/BZPOPMAX second sorted set has members - listpack (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with a single existing sorted set - listpack (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with multiple existing sorted sets - listpack (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX second sorted set has members - listpack (0 ms) [ok]: Basic ZPOPMIN/ZPOPMAX - listpack RESP3 (0 ms) [ok]: ZPOPMIN/ZPOPMAX with count - listpack RESP3 (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX - listpack RESP3 (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - listpack RESP3 (0 ms) [ok]: BZPOPMIN/BZPOPMAX - listpack RESP3 (2 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX - listpack RESP3 (1 ms) [ok]: Check encoding - skiplist (0 ms) [ok]: ZSET basic ZADD and score update - skiplist (1 ms) [ok]: ZSET element can't be set to NaN with ZADD - skiplist (0 ms) [ok]: ZSET element can't be set to NaN with ZINCRBY - skiplist (0 ms) [ok]: ZADD with options syntax error with incomplete pair - skiplist (0 ms) [ok]: ZADD XX option without key - skiplist (0 ms) [ok]: ZADD XX existing key - skiplist (1 ms) [ok]: ZADD XX returns the number of elements actually added - skiplist (0 ms) [ok]: ZADD XX updates existing elements score - skiplist (0 ms) [ok]: ZADD GT updates existing elements when new scores are greater - skiplist (0 ms) [ok]: ZADD LT updates existing elements when new scores are lower - skiplist (0 ms) [ok]: ZADD GT XX updates existing elements when new scores are greater and skips new elements - skiplist (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 (0 ms) [ok]: ZADD NX only add new elements without updating old ones - skiplist (0 ms) [ok]: ZADD GT and NX are not compatible - skiplist (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 (0 ms) [ok]: ZADD INCR LT/GT with inf - skiplist (1 ms) [ok]: ZADD INCR works like ZINCRBY - skiplist (0 ms) [ok]: ZADD INCR works with a single score-element pair - skiplist (0 ms) [ok]: ZADD CH option changes return value to all changed elements - skiplist (0 ms) [ok]: ZINCRBY calls leading to NaN result in error - skiplist (0 ms) [ok]: ZINCRBY against invalid incr value - skiplist (0 ms) [ok]: ZADD - Variadic version base case - skiplist (1 ms) [ok]: ZADD - Return value is the number of actually added items - skiplist (0 ms) [ok]: ZADD - Variadic version does not add nothing on single parsing err - skiplist (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 (0 ms) [ok]: ZREM variadic version - skiplist (0 ms) [ok]: ZREM variadic version -- remove elements after key deletion - skiplist (1 ms) [ok]: ZRANGE basics - skiplist (1 ms) [ok]: ZREVRANGE basics - skiplist (1 ms) [ok]: ZRANK/ZREVRANK basics - skiplist (1 ms) [ok]: ZRANK - after deletion - skiplist (0 ms) [ok]: ZINCRBY - can create a new sorted set - skiplist (1 ms) [ok]: ZINCRBY - increment and decrement - skiplist (0 ms) [ok]: ZINCRBY return value - skiplist (0 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - skiplist (3 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - skiplist (0 ms) [ok]: ZRANGEBYSCORE with LIMIT - skiplist (3 ms) [ok]: ZRANGEBYSCORE with LIMIT and WITHSCORES - skiplist (0 ms) [ok]: ZRANGEBYSCORE with non-value min or max - skiplist (0 ms) [ok]: ZRANGEBYLEX/ZREVRANGEBYLEX/ZLEXCOUNT basics - skiplist (2 ms) [ok]: ZLEXCOUNT advanced - skiplist (1 ms) [ok]: ZRANGEBYLEX with LIMIT - skiplist (3 ms) [ok]: ZRANGEBYLEX with invalid lex range specifiers - skiplist (1 ms) [ok]: ZREMRANGEBYSCORE basics - skiplist (6 ms) [ok]: ZREMRANGEBYSCORE with non-value min or max - skiplist (0 ms) [ok]: ZREMRANGEBYRANK basics - skiplist (3 ms) [ok]: ZREMRANGEBYLEX basics - skiplist (7 ms) [ok]: ZUNIONSTORE against non-existing key doesn't set destination - skiplist (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF against non-existing key - skiplist (0 ms) [ok]: ZUNIONSTORE with empty set - skiplist (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with empty set - skiplist (0 ms) [ok]: ZUNIONSTORE basics - skiplist (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with integer members - skiplist (0 ms) [ok]: ZUNIONSTORE with weights - skiplist (1 ms) [ok]: ZUNION with weights - skiplist (0 ms) [ok]: ZUNIONSTORE with a regular set and weights - skiplist (0 ms) [ok]: ZUNIONSTORE with AGGREGATE MIN - skiplist (0 ms) [ok]: ZUNION/ZINTER with AGGREGATE MIN - skiplist (1 ms) [ok]: ZUNIONSTORE with AGGREGATE MAX - skiplist (0 ms) [ok]: ZUNION/ZINTER with AGGREGATE MAX - skiplist (0 ms) [ok]: ZINTERSTORE basics - skiplist (0 ms) [ok]: ZINTER basics - skiplist (0 ms) [ok]: ZINTERCARD with illegal arguments (1 ms) [ok]: ZINTERCARD basics - skiplist (0 ms) [ok]: ZINTER RESP3 - skiplist (0 ms) [ok]: ZINTERSTORE with weights - skiplist (1 ms) [ok]: ZINTER with weights - skiplist (0 ms) [ok]: ZINTERSTORE with a regular set and weights - skiplist (0 ms) [ok]: ZINTERSTORE with AGGREGATE MIN - skiplist (0 ms) [ok]: ZINTERSTORE with AGGREGATE MAX - skiplist (0 ms) [ok]: ZUNIONSTORE with +inf/-inf scores - skiplist (0 ms) [ok]: ZUNIONSTORE with NaN weights - skiplist (1 ms) [ok]: ZINTERSTORE with +inf/-inf scores - skiplist (1 ms) [ok]: ZINTERSTORE with NaN weights - skiplist (0 ms) [ok]: ZDIFFSTORE basics - skiplist (0 ms) [ok]: ZDIFF basics - skiplist (0 ms) [ok]: ZDIFFSTORE with a regular set - skiplist (1 ms) [ok]: ZDIFF subtracting set from itself - skiplist (0 ms) [ok]: ZDIFF algorithm 1 - skiplist (0 ms) [ok]: ZDIFF algorithm 2 - skiplist (1 ms) [ok]: not enough good replicas state change during long script (615 ms) [ok]: allow-stale shebang flag (1 ms) [ok]: reject script do not cause a Lua stack leak (4 ms) [ok]: XDEL fuzz test (1345 ms) [ok]: Consistent eval error reporting (8 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 (0 ms) [ok]: LUA test pcall (0 ms) [ok]: LUA test pcall with error (0 ms) [ok]: LUA test pcall with non string/integer arg (0 ms) [ok]: LUA test trim string as expected (1 ms) [ok]: EVAL - Scripts support NULL byte (0 ms) [44/133 done]: unit/scripting (27 seconds) Testing unit/cluster/misc [ok]: WAITAOF when replica switches between masters, fsync: always (1321 ms) [ok]: setup replication for following tests (101 ms) [ok]: MIGRATE can correctly transfer large values (4810 ms) [ok]: MIGRATE can correctly transfer hashes (216 ms) [ok]: WAIT and WAITAOF replica multiple clients unblock - reuse last result (679 ms) [ok]: Cluster config file latency (9 ms) [45/133 done]: unit/wait (28 seconds) Testing unit/cluster/scripting [46/133 done]: unit/latency-monitor (18 seconds) Testing unit/cluster/manual-failover [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-lru) (3550 ms) [ok]: MIGRATE timeout actually works (732 ms) [ok]: ZDIFF fuzzing - skiplist (2520 ms) [ok]: ZPOPMIN with the count 0 returns an empty array (1 ms) [ok]: ZPOPMIN with negative count (0 ms) [ok]: ZPOPMAX with the count 0 returns an empty array (1 ms) [ok]: ZPOPMAX with negative count (0 ms) [ok]: Basic ZPOPMIN/ZPOPMAX with a single key - skiplist (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - skiplist (0 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - skiplist (0 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist (1 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - skiplist (1 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - skiplist (1 ms) [ok]: BZPOPMIN/BZPOPMAX second sorted set has members - skiplist (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with a single existing sorted set - skiplist (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with multiple existing sorted sets - skiplist (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX second sorted set has members - skiplist (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX - skiplist RESP3 (0 ms) [ok]: ZPOPMIN/ZPOPMAX with count - skiplist RESP3 (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX - skiplist RESP3 (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist RESP3 (1 ms) [ok]: BZPOPMIN/BZPOPMAX - skiplist RESP3 (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX - skiplist RESP3 (1 ms) [ok]: ZPOP/ZMPOP against wrong type (1 ms) [ok]: ZMPOP with illegal argument (1 ms) [ok]: ZMPOP propagate as pop with count command to replica (76 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP3 (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]: AOF rewrite during write load: RDB preamble=no (15351 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP3 (198 ms) [ok]: ZMPOP readraw in RESP3 (1 ms) [ok]: MIGRATE with multiple keys migrate just existing ones (215 ms) [ok]: BZMPOP readraw in RESP3 (199 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP2 (1 ms) [ok]: Turning off AOF kills the background writing child if any (104 ms) [ok]: MIGRATE with multiple keys: stress command rewriting (215 ms) [ok]: AOF rewrite of list with listpack encoding, string data (103 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP2 (199 ms) [ok]: ZMPOP readraw in RESP2 (1 ms) [ok]: AOF rewrite of list with quicklist encoding, string data (117 ms) [ok]: MIGRATE with multiple keys: delete just ack keys (214 ms) [ok]: AOF rewrite of list with listpack encoding, int data (103 ms) [ok]: BZMPOP readraw in RESP2 (199 ms) [ok]: ZINTERSTORE regression with two sets, intset+hashtable (0 ms) [ok]: ZUNIONSTORE regression, should not create NaN in scores (0 ms) [ok]: ZINTERSTORE #516 regression, mixed sets and ziplist zsets (1 ms) [ok]: AOF rewrite of list with quicklist encoding, int data (105 ms) [ok]: MIGRATE AUTH: correct and wrong password cases (216 ms) [ok]: ZUNIONSTORE result is sorted (115 ms) [ok]: ZUNIONSTORE/ZINTERSTORE/ZDIFFSTORE error if using WITHSCORES (0 ms) [ok]: ZMSCORE retrieve (1 ms) [ok]: ZMSCORE retrieve from empty set (0 ms) [ok]: ZMSCORE retrieve with missing member (0 ms) [ok]: ZMSCORE retrieve single member (0 ms) [ok]: ZMSCORE retrieve requires one or more members (1 ms) [ok]: ZSET commands don't accept the empty strings as valid score (0 ms) [ok]: zunionInterDiffGenericCommand at least 1 input key (0 ms) [47/133 done]: unit/dump (23 seconds) Testing unit/cluster/slave-selection [ok]: ZSCORE - listpack (18 ms) [ok]: ZMSCORE - listpack (19 ms) [ok]: AOF rewrite of set with intset encoding, string data (103 ms) [ok]: ZSCORE after a DEBUG RELOAD - listpack (24 ms) [ok]: ZSET sorting stresser - listpack (25 ms) [ok]: AOF rewrite of set with hashtable encoding, string data (115 ms) [ok]: AOF rewrite of set with intset encoding, int data (102 ms) [ok]: AOF rewrite of set with hashtable encoding, int data (105 ms) [ok]: AOF rewrite of hash with listpack encoding, string data (103 ms) [ok]: AOF rewrite of hash with hashtable encoding, string data (174 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 (0 ms) [ok]: Cross slot commands are also blocked if they disagree with pre-declared keys (1 ms) [ok]: Cross slot commands are allowed by default if they disagree with pre-declared keys (0 ms) [ok]: Function no-cluster flag (0 ms) [ok]: Script no-cluster flag (0 ms) [ok]: Calling cluster slots in scripts is OK (0 ms) [ok]: Calling cluster shards in scripts is OK (1 ms) [ok]: AOF rewrite of hash with listpack encoding, int data (103 ms) [ok]: Stress tester for #3343-alike bugs comp: 1 (7106 ms) [48/133 done]: unit/cluster/scripting (2 seconds) Testing unit/cluster/cluster-reliable-meet [ok]: AOF rewrite of hash with hashtable encoding, int data (115 ms) [ok]: AOF rewrite of zset with listpack encoding, string data (103 ms) [ok]: Cluster nodes are reachable (0 ms) [ok]: Before slots allocation, all nodes report cluster failure (15 ms) [ok]: Cluster nodes haven't met each other (1 ms) [ok]: AOF rewrite of zset with skiplist encoding, string data (184 ms) [ok]: Allocate slots (112 ms) [ok]: AOF rewrite of zset with listpack encoding, int data (102 ms) [ok]: AOF rewrite of zset with skiplist encoding, int data (120 ms) [ok]: AOF rewrite functions (103 ms) [ok]: BGREWRITEAOF is delayed if BGSAVE is in progress (213 ms) [ok]: BGREWRITEAOF is refused if already in progress (12 ms) [49/133 done]: unit/aofrw (31 seconds) Testing unit/cluster/failover2 [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 128 element sorted set - listpack (1736 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (158 ms) [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (230 ms) [ok]: ZSETs skiplist implementation backlink consistency test - listpack (20 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - listpack (556 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]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-random) (4174 ms) [ok]: MEET is reliable when target drops the initial MEETs (1818 ms) [ok]: GEOSEARCH fuzzy test - bybox (12510 ms) [ok]: GEOSEARCH box edges fuzzy test (27 ms) [50/133 done]: unit/geo (30 seconds) Testing unit/cluster/transactions-on-replica Time: 1001 [ok]: BZPOPMIN unblock but the key is expired and then block again - reprocessing command (1003 ms) [ok]: BZPOPMIN with same key multiple times should work (1 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZPOPMIN (1 ms) [ok]: BZPOPMIN with variadic ZADD (1 ms) [ok]: BZPOPMIN with zero timeout should block indefinitely (1002 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZMPOP_MIN (1 ms) [ok]: BZMPOP_MIN with variadic ZADD (1 ms) [ok]: Cluster is up (45 ms) [ok]: Migrate a slot, verify client receives sunsubscribe on primary serving the slot. (3 ms) [ok]: Client subscribes to multiple channels, migrate a slot, verify client receives sunsubscribe on primary serving the slot. (10 ms) [ok]: Migrate a slot, verify client receives sunsubscribe on replica serving the slot. (36 ms) [ok]: Move a replica to another primary, verify client receives sunsubscribe on replica serving the slot. (36 ms) [ok]: Delete a slot, verify sunsubscribe message (1 ms) [ok]: Reset cluster, verify sunsubscribe message (3 ms) [ok]: Cluster is up (76 ms) [ok]: Cluster is writable (48 ms) [ok]: Instance #5 is a slave (0 ms) [ok]: Instance #5 synced with the master (0 ms) [ok]: Killing one master node (9 ms) [51/133 done]: unit/cluster/pubsubshard-slot-migration (11 seconds) Testing unit/cluster/cluster-multiple-meets [ok]: BZMPOP_MIN with zero timeout should block indefinitely (1002 ms) [ok]: ZSCORE - skiplist (11 ms) [ok]: ZMSCORE - skiplist (11 ms) [ok]: ZSCORE after a DEBUG RELOAD - skiplist (13 ms) [ok]: ZSET sorting stresser - skiplist (16 ms) [ok]: Cluster nodes are reachable (1 ms) [ok]: Before slots allocation, all nodes report cluster failure (16 ms) [ok]: Cluster nodes haven't met each other (0 ms) [ok]: Allocate slots (113 ms) [ok]: Cluster should start ok (75 ms) [ok]: Cluster is writable (48 ms) [ok]: XRANGE fuzzing (9369 ms) [ok]: XREVRANGE regression test for issue #5006 (1 ms) [ok]: XREAD streamID edge (no-blocking) (1 ms) [ok]: XREAD streamID edge (blocking) (1 ms) [ok]: XADD streamID edge (0 ms) [ok]: XTRIM with MAXLEN option basic test (55 ms) [ok]: XADD with LIMIT consecutive calls (6 ms) [ok]: XTRIM with ~ is limited (7 ms) [ok]: XTRIM without ~ is not limited (6 ms) [ok]: XTRIM without ~ and with LIMIT (6 ms) [ok]: XTRIM with LIMIT delete entries no more than limit (1 ms) [ok]: XADD with MAXLEN > xlen can propagate correctly (7 ms) [ok]: Broadcast message across a cluster shard while a cluster link is down (103 ms) [ok]: XADD with MINID > lastid can propagate correctly (7 ms) [ok]: XADD with ~ MAXLEN can propagate correctly (7 ms) [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 100 element sorted set - skiplist (1292 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (132 ms) [ok]: XADD with ~ MAXLEN and LIMIT can propagate correctly (7 ms) [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (177 ms) [ok]: ZSETs skiplist implementation backlink consistency test - skiplist (13 ms) [ok]: XADD with ~ MINID can propagate correctly (7 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-ttl) (4728 ms) [ok]: XADD with ~ MINID and LIMIT can propagate correctly (7 ms) [ok]: Key lazy expires during key migration (13 ms) [ok]: Coverage: Basic cluster commands (2 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - skiplist (483 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]: XTRIM with ~ MAXLEN can propagate correctly (7 ms) [ok]: XADD can CREATE an empty stream (1 ms) [ok]: XSETID can set a specific ID (0 ms) [ok]: XSETID cannot SETID with smaller ID (0 ms) [ok]: XSETID cannot SETID on non-existent key (1 ms) [ok]: XSETID cannot run with an offset but without a maximal tombstone (0 ms) [ok]: XSETID cannot run with a maximal tombstone but without an offset (0 ms) [ok]: XSETID errors on negstive offset (0 ms) [ok]: XSETID cannot set the maximal tombstone with larger ID (0 ms) [ok]: XSETID cannot set the offset to less than the length (1 ms) [ok]: XSETID cannot set smaller ID than current MAXDELETEDID (0 ms) [ok]: XADD advances the entries-added counter and sets the recorded-first-entry-id (1 ms) [ok]: XDEL/TRIM are reflected by recorded first entry (2 ms) [ok]: Maximum XDEL ID behaves correctly (1 ms) [ok]: XADD with artial ID with maximal seq (0 ms) [ok]: Multiple MEETs from Node 1 to Node 0 should work (2600 ms) [52/133 done]: unit/cluster/misc (11 seconds) Testing unit/cluster/human-announced-nodename [ok]: Verify that single primary marks replica as failed (3085 ms) [ok]: Empty stream can be rewrite into AOF correctly (104 ms) [53/133 done]: unit/cluster/cluster-multiple-meets (3 seconds) Testing unit/cluster/many-slot-migration [ok]: Stream can be rewrite into AOF correctly after XDEL lastid (104 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 (0 ms) [ok]: XGROUP HELP should not have unexpected options (0 ms) [ok]: XINFO HELP should not have unexpected options (0 ms) [54/133 done]: unit/type/stream (19 seconds) Testing unit/cluster/manual-takeover [ok]: Slave expired keys is loaded when restarted: appendonly=no (3148 ms) [ok]: Wait for failover (3923 ms) [ok]: Stress tester for #3343-alike bugs comp: 0 (8708 ms) [ok]: Cluster should eventually be up again (79 ms) [ok]: Cluster is writable (45 ms) [ok]: Instance #5 is now a master (1 ms) [ok]: Killing the new master #5 (8 ms) [ok]: Each node has two links with each peer (4 ms) [ok]: Validate cluster links format (1 ms) [ok]: BZPOPMIN with zero timeout should block indefinitely (1002 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZMPOP_MIN (1 ms) [ok]: BZMPOP_MIN with variadic ZADD (1 ms) [ok]: Cluster is up (93 ms) [ok]: Cluster is writable (52 ms) [ok]: Instance #5 is a slave (0 ms) [ok]: Instance #5 synced with the master (0 ms) WWWWW[ok]: BZMPOP_MIN with zero timeout should block indefinitely (1002 ms) [ok]: BZPOP/BZMPOP against wrong type (1 ms) [ok]: BZMPOP with illegal argument (1 ms) [ok]: BZMPOP with multiple blocked clients (3 ms) W[ok]: Set cluster human announced nodename and let it propagate (104 ms) [ok]: BZMPOP propagate as pop with count command to replica (193 ms) [ok]: BZMPOP should not blocks on non key arguments - #10762 (2 ms) WWWW[ok]: ZSET skiplist order consistency when elements are moved (523 ms) [ok]: ZRANGESTORE basic (0 ms) [ok]: ZRANGESTORE RESP3 (0 ms) [ok]: ZRANGESTORE range (0 ms) [ok]: ZRANGESTORE BYLEX (0 ms) [ok]: ZRANGESTORE BYSCORE (0 ms) [ok]: ZRANGESTORE BYSCORE LIMIT (0 ms) [ok]: ZRANGESTORE BYSCORE REV LIMIT (0 ms) [ok]: ZRANGE BYSCORE REV LIMIT (0 ms) [ok]: ZRANGESTORE - src key missing (1 ms) [ok]: ZRANGESTORE - src key wrong type (0 ms) [ok]: ZRANGESTORE - empty range (0 ms) [ok]: ZRANGESTORE BYLEX - empty range (0 ms) [ok]: ZRANGESTORE BYSCORE - empty range (1 ms) [ok]: ZRANGE BYLEX (0 ms) [ok]: ZRANGESTORE invalid syntax (0 ms) [ok]: ZRANGESTORE with zset-max-listpack-entries 0 #10767 case (1 ms) [ok]: ZRANGESTORE with zset-max-listpack-entries 1 dst key should use skiplist encoding (1 ms) [ok]: ZRANGE invalid syntax (0 ms) [ok]: ZRANDMEMBER - listpack (5 ms) [ok]: ZRANDMEMBER - skiplist (5 ms) [ok]: ZRANDMEMBER with RESP3 (0 ms) [ok]: ZRANDMEMBER count of 0 is handled correctly (1 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 (1 ms) [ok]: ZRANDMEMBER with against non existing key - emptyarray (0 ms) [ok]: Send CLUSTER FAILOVER to #5, during load (1481 ms) [ok]: Wait for failover (17 ms) [ok]: Cluster should eventually be up again (84 ms) [ok]: ZRANDMEMBER with - skiplist (165 ms) [ok]: Cluster is writable (46 ms) [ok]: Instance #5 is now a master (0 ms) [ok]: Cluster is up (92 ms) [ok]: ZRANDMEMBER with - listpack (164 ms) [ok]: zset score double range (0 ms) [ok]: zunionInterDiffGenericCommand acts on SET and ZSET (9 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - single (4 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - multiple (1 ms) [ok]: ZADD overflows the maximum allowed elements in a listpack - single_multiple (1 ms) [55/133 done]: unit/type/zset (19 seconds) Testing unit/cluster/half-migrated-slot [ok]: Cluster is up (146 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 (0 ms) [ok]: Instance #5 and #10 synced with the master (0 ms) [ok]: Slaves are both able to receive and acknowledge writes (13 ms) [ok]: Slave expired keys is loaded when restarted: appendonly=yes (3116 ms) [ok]: Verify 50000 keys for consistency with logical content (803 ms) [ok]: Instance #0 gets converted into a slave (17 ms) [ok]: Cluster should be down now (3264 ms) [ok]: Restarting the old master node (1 ms) [ok]: Instance #0 gets converted into a slave (56 ms) [ok]: Restarting the new master node (1 ms) [ok]: Cluster is up (57 ms) [ok]: Cluster is writable (51 ms) [ok]: Killing one primary node (8 ms) [ok]: Cluster is up again (888 ms) [ok]: Cluster should start ok (15 ms) [ok]: Can't read from replica without READONLY (2 ms) [ok]: Can't read from replica after READWRITE (1 ms) [ok]: Can read from replica after READONLY (0 ms) [ok]: Can perform HSET primary and HGET from replica (2 ms) [ok]: Can MULTI-EXEC transaction of HGET operations from replica (1 ms) [ok]: MULTI-EXEC with write operations is MOVED (1 ms) [56/133 done]: unit/cluster/consistency-check (20 seconds) Testing unit/cluster/base [ok]: Cluster is up (15 ms) [ok]: Half init migration in 'migrating' is fixable (23 ms) [ok]: Half init migration in 'importing' is fixable (21 ms) [ok]: Init migration and move key (60 ms) [ok]: Move key again (4 ms) [ok]: Handshake eventually succeeds after node handshake timeout on both sides with inconsistent view of the cluster (9153 ms) [ok]: Half-finish migration (53 ms) [ok]: Move key back (1 ms) [57/133 done]: unit/cluster/update-msg (21 seconds) Testing unit/cluster/pubsub [ok]: Half-finish importing (53 ms) [ok]: Human nodenames are visible in log messages (3518 ms) [ok]: Cluster nodes are reachable (0 ms) [58/133 done]: unit/cluster/half-migrated-slot (2 seconds) Testing unit/cluster/cluster-slots [59/133 done]: unit/cluster/human-announced-nodename (6 seconds) Testing unit/cluster/noaddr [ok]: Fuzzing dense/sparse encoding: Server should always detect errors (43359 ms) [ok]: PFADD, PFCOUNT, PFMERGE type checking works (1 ms) [ok]: PFMERGE results on the cardinality of union of sets (0 ms) [ok]: PFMERGE on missing source keys will create an empty destkey (1 ms) [ok]: PFMERGE with one empty input key, create an empty destkey (0 ms) [ok]: PFMERGE with one non-empty input key, dest key is actually one of the source keys (1 ms) [ok]: Set many keys (3349 ms) [ok]: maxmemory - policy volatile-lru should only remove volatile keys. (7972 ms) [ok]: PFMERGE results with simd (708 ms) [ok]: write command is QUEUED, then EXEC should be MOVED after failover (2008 ms) [ok]: read-only blocking operations from replica (2 ms) [ok]: reply MOVED when eval from replica for update (0 ms) [ok]: Cluster Join and auto-discovery test (1412 ms) [ok]: Before slots allocation, all nodes report cluster failure (45 ms) [ok]: Different nodes have different IDs (2 ms) [ok]: It is possible to perform slot allocation (243 ms) [60/133 done]: unit/cluster/transactions-on-replica (13 seconds) Testing unit/cluster/cluster-nodes-slots ..[ok]: After the join, every node gets a different config epoch (2048 ms) [ok]: Keys are accessible (3009 ms) [ok]: ziplist implementation: value encoding and backlink (9132 ms) [ok]: Disconnect link when send buffer limit reached (8920 ms) [ok]: PFCOUNT multiple-keys merge returns cardinality of union #1 (3050 ms) [ok]: Link memory increases with publishes (565 ms) [ok]: Init migration of many slots (1070 ms) [ok]: Link memory resets after publish messages flush (302 ms) [61/133 done]: unit/cluster/links (23 seconds) Testing unit/cluster/no-failover-option [ok]: Wait for failover (7044 ms) [ok]: Killing the new primary node (13 ms) [ok]: PFCOUNT multiple-keys merge returns cardinality of union #2 (1532 ms) [ok]: Cluster should eventually be up again (67 ms) [ok]: Cluster is up (96 ms) [ok]: Cluster is writable (48 ms) [ok]: Killing majority of master nodes (30 ms) [ok]: PFDEBUG GETREG returns the HyperLogLog raw registers (654 ms) [ok]: PFADD / PFCOUNT cache invalidation works (0 ms) [62/133 done]: unit/hyperloglog (51 seconds) Testing unit/cluster/sharded-pubsub [ok]: Nodes should report cluster_state is ok now (2915 ms) [ok]: Sanity for CLUSTER COUNTKEYSINSLOT (0 ms) [ok]: It is possible to write and read from the cluster (65 ms) [ok]: CLUSTER RESET SOFT test (4 ms) [ok]: Coverage: CLUSTER HELP (1 ms) [ok]: Coverage: ASKING (0 ms) [ok]: CLUSTER SLAVES and CLUSTER REPLICAS with zero replicas (0 ms) [63/133 done]: unit/cluster/base (7 seconds) Testing unit/cluster/pubsubshard [ok]: Write data while slave #10 is paused and can't receive it (10012 ms) [ok]: Cluster should eventually be down (3267 ms) [ok]: Use takeover to bring slaves back (7 ms) [ok]: ziplist implementation: encoding stress testing (6305 ms) [ok]: Cluster is up (93 ms) [64/133 done]: unit/type/list-3 (40 seconds) Testing unit/cluster/slot-migration-response [ok]: Cluster is writable (56 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]: maxmemory - policy volatile-lfu should only remove volatile keys. (9771 ms) [ok]: Handshake eventually succeeds after node handshake timeout on one side with inconsistent view of the cluster (8654 ms) [65/133 done]: unit/cluster/cluster-reliable-meet (25 seconds) Testing unit/cluster/cluster-response-tls [66/133 done]: unit/cluster/cluster-response-tls (0 seconds) Testing unit/cluster/replica-migration [ok]: Test publishing to master (4 ms) [ok]: Test publishing to slave (3 ms) [ok]: Verify that multiple primaries mark replica as failed (6122 ms) [ok]: Wait for instance #5 (and not #10) to turn into a master (4000 ms) [ok]: Wait for the node #10 to return alive before ending the test (0 ms) [ok]: Cluster should eventually be up again (147 ms) [ok]: Node #10 should eventually replicate node #5 (0 ms) [ok]: NOADDR nodes will be marked as FAIL (836 ms) [67/133 done]: unit/cluster/noaddr (13 seconds) Testing unit/cluster/slot-stats [ok]: Cluster should eventually be up again (3108 ms) [ok]: Cluster is writable (46 ms) [ok]: Instance #5, #6, #7 are now masters (1 ms) [ok]: Restarting the previously killed master nodes (1 ms) [ok]: Instance #0, #1, #2 gets converted into a slaves (7 ms) [ok]: wait for new failover (6706 ms) [ok]: Cluster is up (17 ms) [ok]: Restarting the previously killed primary nodes (1 ms) [ok]: Make sure there is no failover timeout (2 ms) [ok]: Cluster should start ok (33 ms) [ok]: Continuous slots distribution (3 ms) [ok]: Discontinuous slots distribution (4 ms) [ok]: Set many keys in the cluster (643 ms) [ok]: Test cluster responses during migration of slot x (1 ms) [68/133 done]: unit/cluster/slot-migration-response (3 seconds) Testing unit/cluster/failover [69/133 done]: unit/cluster/manual-takeover (18 seconds) Testing unit/cluster/slot-ownership [70/133 done]: unit/cluster/cluster-nodes-slots (12 seconds) Testing unit/cluster/shardid-propagation [ok]: Cluster nodes are reachable (0 ms) [ok]: Before slots allocation, all nodes report cluster failure (19 ms) [ok]: Cluster nodes haven't met each other (1 ms) [ok]: Allocate slots (33 ms) [ok]: Restart of node in cluster mode doesn't cause nodes.conf corruption due to shard id mismatch (257 ms) [71/133 done]: unit/cluster/shardid-propagation (0 seconds) Testing unit/cluster/cli [ok]: Fix cluster (9427 ms) [ok]: Test cluster info stats for publish (1 ms) [72/133 done]: unit/cluster/pubsub (15 seconds) Testing unit/cluster/faildet [ok]: Instance #5 is still a slave after some time (no failover) (5002 ms) [ok]: Cluster is up (59 ms) [ok]: Instance #3 is a replica (0 ms) [ok]: Instance #3 synced with the master (0 ms) [ok]: The nofailover flag is propagated (103 ms) [ok]: Killing one master node (11 ms) [ok]: Create 1 node cluster (1916 ms) [ok]: Sharded pubsub publish behavior within multi/exec (1 ms) [ok]: Sharded pubsub within multi/exec with cross slot operation (0 ms) [ok]: Sharded pubsub publish behavior within multi/exec with read operation on primary (1 ms) [ok]: Sharded pubsub publish behavior within multi/exec with read operation on replica (0 ms) [ok]: Sharded pubsub publish behavior within multi/exec with write operation on primary (1 ms) [ok]: Sharded pubsub publish behavior within multi/exec with write operation on replica (0 ms) [ok]: CLUSTER SLOT-STATS cpu-usec reset upon CONFIG RESETSTAT. (2694 ms) [ok]: Keys are accessible (3117 ms) [ok]: Create 2 node cluster (1013 ms) [73/133 done]: unit/cluster/sharded-pubsub (11 seconds) Testing unit/cluster/diskless-load-swapdb [ok]: Pub/Sub shard basics (2 ms) [ok]: client can't subscribe to multiple shard channels across different slots in same call (1 ms) [ok]: client can subscribe to multiple shard channels across different slots in separate call (0 ms) [ok]: sunsubscribe without specifying any channel would unsubscribe all shard channels subscribed (2 ms) [ok]: Verify Pub/Sub and Pub/Sub shard no overlap (4 ms) [ok]: PUBSUB channels/shardchannels (2 ms) [74/133 done]: unit/cluster/many-slot-migration (24 seconds) Testing unit/cluster/multi-slot-operations [75/133 done]: unit/cluster/pubsubshard (12 seconds) Testing unit/cluster/hostnames [ok]: Cluster should be still down after some time (3222 ms) [ok]: Instance #3 is still a replica (0 ms) [ok]: Restarting the previously killed master node (1 ms) [76/133 done]: unit/cluster/no-failover-option (15 seconds) Testing unit/cluster/announced-endpoints [ok]: Create 3 node cluster (1921 ms) [ok]: Run blocking command on cluster node3 (0 ms) [ok]: Perform a Resharding (7 ms) [ok]: Verify command got unblocked after resharding (42 ms) [ok]: Wait for cluster to be stable (8 ms) [ok]: use previous hostip in "cluster-preferred-endpoint-type unknown-endpoint" mode (3 ms) [ok]: Sanity test push cmd after resharding (1 ms) [ok]: Run blocking command again on cluster node1 (1 ms) [ok]: Wait for instance #0 to return back alive (4998 ms) [ok]: Continuous slots distribution (8 ms) [ok]: ADDSLOTS command with several boundary conditions test suite (1 ms) [ok]: ADDSLOTSRANGE command with several boundary conditions test suite (0 ms) [ok]: DELSLOTSRANGE command with several boundary conditions test suite (3 ms) [77/133 done]: unit/cluster/multi-slot-operations (3 seconds) Testing unit/cluster/info [ok]: Kill a cluster node and wait for fail state (1721 ms) [ok]: Verify command got unblocked after cluster failure (4 ms) [ok]: CLUSTER SLOT-STATS cpu-usec reset upon slot migration. (5397 ms) [ok]: maxmemory - policy volatile-random should only remove volatile keys. (12440 ms) [ok]: Cluster should start ok (20 ms) [ok]: errorstats: rejected call due to MOVED Redirection (2 ms) [ok]: Verify that slot ownership transfer through gossip propagates deletes to replicas (58 ms) [ok]: Cluster is up (98 ms) [ok]: Cluster is writable (49 ms) [ok]: Instance #5 is a slave (1 ms) [ok]: Instance #5 synced with the master (0 ms) [ok]: Killing one master node (10 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for non-slot specific commands. (2741 ms) [ok]: Cluster is up (178 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 (0 ms) [ok]: Instance #3, #6, #9, #12 and #15 synced with the master (1 ms) [ok]: Functions are added to new node on valkey-cli cluster add-node (2997 ms) [ok]: Cluster should start ok (101 ms) [ok]: Killing two slave nodes (20 ms) [ok]: Cluster should be still up (98 ms) [ok]: Killing one master node (9 ms) [ok]: Cluster should be down now (97 ms) [ok]: Restarting master node (11 ms) [ok]: Cluster should be up again (101 ms) Waiting for process 2216 to exit... [ok]: Cluster should start ok (19 ms) [ok]: Cluster is writable (55 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for slot specific commands. (2798 ms) Waiting for process 2216 to exit... [ok]: Wait for failover (4124 ms) [ok]: Cluster should eventually be up again (151 ms) [ok]: Cluster is writable (48 ms) [ok]: Instance #5 is now a master (0 ms) [ok]: Restarting the previously killed master node (1 ms) [ok]: fail reason changed (3432 ms) [ok]: Instance #0 gets converted into a slave (71 ms) [78/133 done]: unit/cluster/info (9 seconds) Testing unit/cluster/cluster-shards Waiting for process 2216 to exit... [ok]: Set cluster hostnames and verify they are propagated (216 ms) [ok]: Update hostnames and make sure they are all eventually propagated (218 ms) [ok]: Remove hostnames and make sure they are all eventually propagated (216 ms) [ok]: Test change cluster-announce-port and cluster-announce-tls-port at runtime (204 ms) [ok]: Verify cluster-preferred-endpoint-type behavior for redirects and info (118 ms) Waiting for process 2216 to exit... [ok]: Test change cluster-announce-bus-port at runtime (206 ms) [79/133 done]: unit/cluster/announced-endpoints (11 seconds) Testing unit/cluster/replica-in-sync [ok]: Verify the nodes configured with prefer hostname only show hostname for new nodes (1022 ms) Waiting for process 2216 to exit... [ok]: Test restart will keep hostname information (226 ms) [ok]: Test hostname validation (1 ms) [ok]: Primaries will not time out then they are elected in the same epoch (7802 ms) [80/133 done]: unit/cluster/hostnames (14 seconds) Testing unit/cluster/slave-stop-cond Port 28656 was already busy, trying another port... Waiting for process 2216 to exit... [ok]: Only primary with slots has the right to mark a node as failed (19906 ms) [81/134 done]: unit/cluster/failover2 (46 seconds) Testing unit/cluster/announce-client-ip [ok]: Cluster is up (144 ms) [82/134 done]: unit/cluster/failure-marking (53 seconds) Testing unit/cluster/slot-migration [ok]: Cluster is writable (57 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]: CLUSTER SLOT-STATS cpu-usec for blocking commands, unblocked on keyspace update. (5382 ms) [ok]: Instance #5 is a master after some time (52 ms) Waiting for process 2216 to exit... Waiting for process 2216 to exit... Waiting for process 2216 to exit... [ok]: CLUSTER SLOT-STATS cpu-usec for blocking commands, unblocked on timeout. (3148 ms) [ok]: Migrate the last slot away from a node using valkey-cli (11155 ms) Waiting for process 2198 to exit... [ok]: maxmemory - policy volatile-ttl should only remove volatile keys. (14720 ms) Waiting for process 2198 to exit... [ok]: valkey-cli -4 --cluster create using 127.0.0.1 with cluster-port (1922 ms) [ok]: Migrated replica reports zero repl offset and rank, and fails to win election - shutdown (17766 ms) Waiting for process 2198 to exit... [ok]: Primary lost a slot during the shutdown waiting (4813 ms) [ok]: Cluster should start ok (56 ms) [ok]: Cluster shards response is ok for shard 0 (1 ms) [ok]: Kill a node and tell the replica to immediately takeover (10 ms) [ok]: valkey-cli -4 --cluster add-node using 127.0.0.1 with cluster-port (1124 ms) Waiting for process 2198 to exit... [ok]: Cluster is up (20 ms) [ok]: Cluster is writable (55 ms) [ok]: Fill up primary with data (3 ms) [ok]: Add new node as replica (0 ms) [ok]: Check digest and replica state (1 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for transactions. (5211 ms) Waiting for process 2198 to exit... [ok]: Cluster is up (89 ms) [ok]: Cluster is writable (51 ms) [ok]: Killing the first primary node (11 ms) Waiting for process 2198 to exit... [ok]: Wait for instance #0 to return back alive (9949 ms) [ok]: Verify health as fail for killed node (3210 ms) [ok]: CLUSTER SHARDS slot response is non-empty when primary node fails (1 ms) [ok]: valkey-cli -4 --cluster create using localhost with cluster-port (1921 ms) [ok]: Set cluster announced IPv4 to invalid IP (0 ms) [ok]: Set cluster announced IPv4 and check that it propagates (110 ms) Waiting for process 2198 to exit... [ok]: Clear announced client IPv4 and check that it propagates (206 ms) [ok]: Cluster is up (95 ms) [ok]: The first master has actually one slave (0 ms) [ok]: Slaves of #0 is instance #5 as expected (0 ms) [ok]: Instance #5 synced with the master (0 ms) [ok]: Lower the slave validity factor of #5 to the value of 2 (1 ms) [83/134 done]: unit/cluster/cluster-shards (14 seconds) Testing integration/rdb [ok]: Slot migration states are replicated (4 ms) [ok]: test old version rdb file (0 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for lua-scripts, without cross-slot keys. (2632 ms) [ok]: RDB encoding loading test (4 ms) [ok]: RDB future version loading, strict version check (1 ms) [ok]: RDB future version loading, relaxed version check (4 ms) [ok]: valkey-cli -4 --cluster add-node using localhost with cluster-port (1152 ms) Waiting for process 2198 to exit... [ok]: Server started empty with non-existing RDB file (1 ms) [84/134 done]: unit/cluster/cli (31 seconds) Testing integration/valkey-benchmark [ok]: Server started empty with empty RDB file (0 ms) [ok]: benchmark: set,get (5 ms) [ok]: benchmark: connecting using URI set,get (4 ms) [ok]: benchmark: connecting using URI with authentication set,get (4 ms) [ok]: benchmark: full test suite (69 ms) [ok]: Test RDB stream encoding (135 ms) [ok]: Test RDB stream encoding - sanitize dump (36 ms) [ok]: benchmark: multi-thread set,get (258 ms) [ok]: benchmark: pipelined full set,get (89 ms) [ok]: benchmark: arbitrary command (5 ms) [ok]: Server should not start if RDB file can't be open (0 ms) [ok]: benchmark: keyspace length (35 ms) [ok]: benchmark: clients idle mode should return error when reached maxclients limit (3 ms) [ok]: benchmark: read last argument from stdin (5 ms) [85/134 done]: integration/valkey-benchmark (1 seconds) Testing integration/corrupt-dump-fuzzer [ok]: Server should not start if RDB is corrupted (0 ms) [ok]: Wait for failover (4118 ms) Waiting for process 2198 to exit... [ok]: Cluster should eventually be up again (144 ms) [ok]: Restarting the previously killed primary node (2 ms) [ok]: Instance #0 gets converted into a replica (88 ms) [ok]: Make sure the replicas always get the different ranks (2 ms) [ok]: Test FLUSHALL aborts bgsave (311 ms) [ok]: bgsave resets the change counter (101 ms) [ok]: Replica in loading state is hidden (4906 ms) [ok]: bgsave cancel aborts save (119 ms) [ok]: bgsave cancel schedulled request (5 ms) [ok]: Check disconnected replica not hidden from slots (104 ms) [ok]: New Master down consecutively (21379 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for lua-scripts, with cross-slot keys. (2583 ms) Waiting for process 5335 to exit... Waiting for process 9572 to exit... [86/134 done]: unit/cluster/failover (35 seconds) Testing integration/psync2-master-restart Waiting for process 5335 to exit... Waiting for process 9572 to exit... [87/134 done]: unit/cluster/faildet (34 seconds) Testing integration/replication-3 [ok]: Migration target is auto-updated after failover in target shard (4884 ms) [ok]: client freed during loading (2559 ms) [ok]: First server should have role slave after SLAVEOF (102 ms) [ok]: CLUSTER SLOT-STATS cpu-usec for functions, without cross-slot keys. (2657 ms) Waiting for process 5335 to exit... [ok]: Test RDB load info (536 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields when offset is 0 (1146 ms) [88/134 done]: unit/cluster/slave-selection (66 seconds) Testing integration/convert-ziplist-zset-on-load [ok]: RDB load ziplist zset: converts to listpack when RDB loading (0 ms) [ok]: RDB load ziplist zset: converts to skiplist when zset-max-ziplist-entries is exceeded (1 ms) [89/134 done]: integration/convert-ziplist-zset-on-load (0 seconds) Testing integration/replication-psync Waiting for process 5335 to exit... [ok]: Primary lost a slot during the manual failover pausing (55 ms) [ok]: Slave should be able to synchronize with the master (115 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: no, disabled, dual-channel: no, reconnect: 0) (10 ms) [ok]: Slave should be able to synchronize with the master (100 ms) [ok]: Detect write load to master (0 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields with data (1139 ms) Waiting for process 5335 to exit... [ok]: Test child sending info (1935 ms) [ok]: script won't load anymore if it's in rdb (0 ms) [ok]: Migration source is auto-updated after failover in source shard (3230 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 SLOT-STATS cpu-usec for functions, with cross-slot keys. (2670 ms) [ok]: MASTER and SLAVE consistency with expire (2971 ms) [ok]: Master can replicate command longer than client-query-buffer-limit on replica (65 ms) [ok]: failed bgsave prevents writes (206 ms) [90/134 done]: integration/rdb (9 seconds) Testing integration/aof-multi-part [ok]: New replica inherits migrating slot (392 ms) [ok]: Multi Part AOF can't load data when some file missing (108 ms) [ok]: Multi Part AOF can't load data when the sequence not increase monotonically (108 ms) Waiting for process 5335 to exit... [ok]: Multi Part AOF can't load data when there are blank lines in the manifest file (109 ms) [ok]: New replica inherits importing slot (390 ms) [ok]: Multi Part AOF can't load data when there is a duplicate base file (108 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (type unknown) (110 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (missing key) (110 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (line too short) (110 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (line too long) (109 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields with expire (1736 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (odd parameter) (109 ms) [ok]: Multi Part AOF can't load data when the manifest file is empty (111 ms) [ok]: Multi Part AOF can start when no aof and no manifest (221 ms) Waiting for process 5335 to exit... [ok]: Multi Part AOF can start when we have en empty AOF dir (217 ms) [ok]: Multi Part AOF can load data discontinuously increasing sequence (219 ms) [ok]: Multi Part AOF can load data when manifest add new k-v (219 ms) [ok]: Multi Part AOF can load data when some AOFs are empty (220 ms) Waiting for process 5335 to exit... [ok]: Multi Part AOF can load data from old version valkey (rdb preamble no) (323 ms) [ok]: Set cluster announced IPv6 to invalid IP (0 ms) [ok]: Fuzzer corrupt restore payloads - sanitize_dump: no (9532 ms) [ok]: Multi Part AOF can load data from old version valkey (rdb preamble yes) (326 ms) [ok]: PSYNC2: Full resync after Master restart when too many key expired (1927 ms) [ok]: Set cluster announced IPv6 and check that it propagates (211 ms) [ok]: Clear announced client IPv6 and check that it propagates (206 ms) [ok]: Multi Part AOF can continue the upgrade from the interrupted upgrade state (220 ms) [91/134 done]: integration/psync2-master-restart (8 seconds) Testing integration/aof-race [ok]: Multi Part AOF can be loaded correctly when both server dir and aof dir contain old AOF (222 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 (114 ms) Waiting for process 5335 to exit... [92/134 done]: integration/aof-race (0 seconds) Testing integration/replication-buffer [ok]: Multi Part AOF can upgrade when when two servers share the same server dir (server1) (104 ms) [ok]: Multi Part AOF can upgrade when when two servers share the same server dir (server2) (104 ms) [ok]: Multi Part AOF can upgrade when when two servers share the same server dir (620 ms) [93/134 done]: unit/cluster/replica-in-sync (26 seconds) Testing integration/replication-2 [ok]: Multi Part AOF can handle appendfilename contains whitespaces (318 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: If min-slaves-to-write is honored, write is accepted (1 ms) [ok]: No write if min-slaves-to-write is < attached slaves (0 ms) [ok]: If min-slaves-to-write is honored, write is accepted (again) (0 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, multi bulk buffer processing. (2720 ms) [ok]: Multi Part AOF can create BASE (RDB format) when server starts from empty (224 ms) [ok]: Multi Part AOF can create BASE (AOF format) when server starts from empty (224 ms) [ok]: All replicas share one global replication buffer dualchannel yes (49 ms) [ok]: Replication buffer will become smaller when no replica uses dualchannel yes (3 ms) [ok]: Test replication partial resync: ok psync (diskless: no, disabled, dual-channel: no, reconnect: 1) (6310 ms) [ok]: Slave is able to evict keys created in writable slaves (6003 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [ok]: Load cluster announced IPv4 config on server start (193 ms) [ok]: Writable replica doesn't return expired keys (104 ms) [ok]: PFCOUNT updates cache on readonly replica (2 ms) [ok]: PFCOUNT doesn't use expired key on readonly replica (102 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) [94/134 done]: integration/replication-3 (10 seconds) Testing integration/replication-4 [ok]: AOF enable will create manifest file (530 ms) [ok]: First server should have role slave after SLAVEOF (0 ms) [ok]: Migrated replica reports zero repl offset and rank, and fails to win election - sigstop (8179 ms) [ok]: No write if min-slaves-max-lag is > of the slave lag (2820 ms) [ok]: min-slaves-to-write is ignored by slaves (1 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, in-line buffer processing. (2787 ms) [ok]: Load cluster announced IPv6 config on server start (192 ms) [95/134 done]: unit/cluster/announce-client-ip (28 seconds) Testing integration/block-repl [ok]: AOF multiple rewrite failures will open multiple INCR AOFs (1407 ms) [ok]: All replicas share one global replication buffer dualchannel no (47 ms) [ok]: Replication buffer will become smaller when no replica uses dualchannel no (3 ms) [ok]: AOF rewrite doesn't open new aof when AOF turn off (524 ms) [ok]: AOF enable/disable auto gc (205 ms) [ok]: AOF can produce consecutive sequence number after reload (137 ms) [ok]: Manual failover vote is not limited by two times the node timeout - drop the auth ack (5231 ms) [ok]: AOF enable during BGSAVE will not write data util AOFRW finish (302 ms) [ok]: First server should have role slave after SLAVEOF (1001 ms) [ok]: Primary lost a slot during the client pause command (152 ms) [ok]: AOF will trigger limit when AOFRW fails many times (615 ms) [96/134 done]: unit/cluster/slot-ownership (50 seconds) Testing integration/cross-version-replication [ignore]: Other server path not provided [97/134 done]: integration/cross-version-replication (0 seconds) Testing integration/convert-zipmap-hash-on-load [ok]: RDB load zipmap hash: converts to listpack (1 ms) [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 (0 ms) [98/134 done]: integration/convert-zipmap-hash-on-load (1 seconds) Testing integration/valkey-cli [ok]: Interactive CLI: INFO response should be printed raw (101 ms) [ok]: Break master-slave link and prevent further reconnections (20010 ms) [ok]: Slave #5 is reachable and alive (13 ms) [ok]: Interactive CLI: Status reply (101 ms) [ok]: Interactive CLI: Integer reply (101 ms) [ok]: Replication backlog size can outgrow the backlog limit config dualchannel yes (1894 ms) [ok]: Interactive CLI: Bulk reply (102 ms) [ok]: Multiple slot migration states are replicated (9 ms) [ok]: Interactive CLI: Multi-bulk reply (101 ms) [ok]: MASTER and SLAVE dataset should be identical after complex ops (4538 ms) [99/134 done]: integration/replication-2 (8 seconds) Testing integration/dual-channel-replication [ok]: Test replication with parallel clients writing in different DBs (5257 ms) [ok]: New replica inherits multiple migrating slots (385 ms) [ok]: Slot finalization succeeds on both primary and replicas (5 ms) [ok]: Test dual-channel-replication-enabled replica enters handshake (1 ms) [ok]: Interactive CLI: Parsing quotes (703 ms) [ok]: AOF will open a temporary INCR AOF to accumulate data until the first AOFRW success when AOF is dynamically enabled (2441 ms) [ok]: First server should have role slave after SLAVEOF (100 ms) [ok]: With min-slaves-to-write (1,3): master should be writable (0 ms) [ok]: With min-slaves-to-write (2,3): master should not be writable (0 ms) [ok]: With min-slaves-to-write function without no-write flag (1 ms) [ok]: With not enough good slaves, read in Lua script is still accepted (0 ms) [ok]: Fuzzer corrupt restore payloads - sanitize_dump: yes (9970 ms) [100/134 done]: integration/corrupt-dump-fuzzer (20 seconds) Testing integration/convert-ziplist-hash-on-load [101/134 done]: integration/aof-multi-part (13 seconds) Testing integration/failover [ok]: CLUSTER SLOT-STATS network-bytes-in, blocking command. (5519 ms) [ok]: RDB load ziplist hash: converts to listpack when RDB loading (1 ms) [ok]: RDB load ziplist hash: converts to hash table when hash-max-ziplist-entries is exceeded (0 ms) [ok]: failover command fails without connected replica (0 ms) [102/134 done]: integration/convert-ziplist-hash-on-load (0 seconds) Testing integration/replica-redirect [ok]: setup replication for following tests (102 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 (1 ms) [ok]: Test dual-channel-replication-enabled enters wait_bgsave (1000 ms) [ok]: write command inside MULTI is QUEUED, EXEC should be REDIRECT (101 ms) [ok]: write command inside MULTI is REDIRECT, EXEC should be EXECABORT (1 ms) [ok]: replica allow read command by default (0 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]: Interactive CLI: Subscribed mode (965 ms) [ok]: Test replication partial resync: no backlog (diskless: no, disabled, dual-channel: no, reconnect: 1) (7876 ms) [ok]: client paused during failover-in-progress (313 ms) [ok]: Replica could use replication buffer (beyond backlog config) for partial resynchronization dualchannel yes (2135 ms) [ok]: failover command to specific replica works (823 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [ok]: Interactive non-TTY CLI: Subscribed mode (655 ms) [ok]: Non-interactive TTY CLI: Status reply (2 ms) [ok]: Non-interactive TTY CLI: Integer reply (2 ms) [ok]: Non-interactive TTY CLI: Bulk reply (2 ms) [ok]: Non-interactive TTY CLI: Multi-bulk reply (2 ms) [ok]: Non-interactive TTY CLI: Read last argument from pipe (5 ms) [ok]: Non-interactive TTY CLI: Read last argument from file (4 ms) [ok]: Test dual-channel-replication-enabled replica is able to sync (905 ms) [ok]: Non-interactive TTY CLI: Escape character in JSON mode (15 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]: 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 (3 ms) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - latest server (8 ms) [103/134 done]: integration/replica-redirect (1 seconds) Testing integration/logging [ok]: Non-interactive non-TTY CLI: Test command-line hinting - no server (2 ms) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - old server (8 ms) [ok]: Crash report generated on SIGABRT (102 ms) [ok]: Replication backlog memory will become smaller if disconnecting with replica dualchannel yes (719 ms) [ok]: Crash report generated on DEBUG SEGFAULT (2 ms) [ok]: Stacktraces generated on SIGALRM (102 ms) [ok]: failover command to any replica works (924 ms) [ok]: Config hide-user-data-from-log is off (1 ms) [ok]: Config hide-user-data-from-log is on (0 ms) [ok]: With min-slaves-to-write: master not writable with lagged slave (2720 ms) [ok]: failover to a replica with force works (423 ms) [104/134 done]: integration/logging (1 seconds) Testing integration/psync2-reg [ok]: CLUSTER SLOT-STATS network-bytes-in, multi-exec transaction. (2745 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: failover with timeout aborts if replica never catches up (548 ms) [ok]: Dumping an RDB - functions only: no (1645 ms) [ok]: failovers can be aborted (20 ms) [ok]: Replication of an expired key does not delete the expired key (513 ms) [ok]: Primary memory usage does not increase during dual-channel-replication sync (723 ms) [ok]: failover aborts if target rejects sync request (523 ms) [ok]: Steady state after dual channel sync (46 ms) [ok]: Dumping an RDB - functions only: yes (587 ms) [ok]: Scan mode (50 ms) [ok]: First server should have role slave after SLAVEOF (1 ms) [ok]: PSYNC2 #3899 regression: setup (1004 ms) [ok]: Dual channel replication sync doesn't impair subsequent normal syncs (304 ms) [ok]: Replication backlog size can outgrow the backlog limit config dualchannel no (1891 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [105/134 done]: integration/failover (4 seconds) Testing integration/corrupt-dump [ok]: Toggle dual-channel-replication-enabled: yes start (459 ms) [ok]: corrupt payload: #7445 - with sanitize (216 ms) [ok]: corrupt payload: hash with valid zip list header, invalid entry len (215 ms) [ok]: corrupt payload: invalid zlbytes header (215 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, non slot specific command. (2691 ms) [ok]: corrupt payload: valid zipped hash header, dup records (215 ms) [ok]: corrupt payload: quicklist big ziplist prev len (217 ms) [ok]: Connecting as a replica (2125 ms) [ok]: corrupt payload: quicklist small ziplist prev len (219 ms) [ok]: corrupt payload: quicklist ziplist wrong count (215 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: corrupt payload: #3080 - quicklist (215 ms) [ok]: Replica could use replication buffer (beyond backlog config) for partial resynchronization dualchannel no (2138 ms) [ok]: corrupt payload: quicklist with empty ziplist (214 ms) [ok]: Piping raw protocol (914 ms) [ok]: Options -X with illegal argument (5 ms) [ok]: DUMP RESTORE with -x option (8 ms) [ok]: DUMP RESTORE with -X option (9 ms) [ok]: corrupt payload: quicklist encoded_len is 0 (215 ms) [ok]: Online toggle dual-channel-replication-enabled on primary, starting with 'yes' (2132 ms) [ok]: Replication backlog memory will become smaller if disconnecting with replica dualchannel no (523 ms) [ok]: valkey-cli pubsub mode with single standard channel subscription (303 ms) [ok]: corrupt payload: quicklist listpack entry start with EOF (215 ms) [ok]: corrupt payload: #3080 - ziplist (215 ms) [ok]: valkey-cli pubsub mode with multiple standard channel subscriptions (302 ms) [ok]: corrupt payload: load corrupted rdb with no CRC - #3505 (109 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: corrupt payload: load corrupted rdb with empty keys (220 ms) [ok]: valkey-cli pubsub mode with single shard channel subscription (302 ms) [ok]: corrupt payload: load corrupted rdb with empty keys (221 ms) [ok]: valkey-cli pubsub mode with multiple shard channel subscriptions (304 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, pub/sub. (2647 ms) [ok]: corrupt payload: listpack invalid size header (215 ms) [ok]: corrupt payload: listpack too long entry len (121 ms) [ok]: valkey-cli pubsub mode with single pattern channel subscription (302 ms) [ok]: corrupt payload: listpack very long entry len (121 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: valkey-cli pubsub mode with multiple pattern channel subscriptions (242 ms) [ok]: corrupt payload: listpack too long entry prev len (214 ms) [ok]: Slave #5 should not be able to failover (10002 ms) [ok]: New non-empty replica reports zero repl offset and rank, and fails to win election - shutdown (2947 ms) [ok]: Cluster should be down (77 ms) [ok]: corrupt payload: stream with duplicate consumers (215 ms) [ok]: valkey-cli pubsub mode when subscribing to the same channel (303 ms) [ok]: corrupt payload: hash ziplist with duplicate records (215 ms) [ok]: corrupt payload: hash listpack with duplicate records (215 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: corrupt payload: hash listpack with duplicate records - convert (121 ms) [106/134 done]: unit/cluster/slave-stop-cond (42 seconds) Testing integration/dismiss-mem [ok]: valkey-cli pubsub mode with multiple subscription types (664 ms) [ok]: corrupt payload: hash ziplist uneven record count (215 ms) [ok]: corrupt payload: hash duplicate records (215 ms) [ok]: valkey-cli make sure selected db survives connection drops (312 ms) [ok]: Valid Connection Scheme: redis:// (2 ms) [ok]: Valid Connection Scheme: valkey:// (2 ms) [107/134 done]: integration/valkey-cli (12 seconds) Testing integration/psync2-pingoff [ok]: corrupt payload: hash empty zipmap (217 ms) [ok]: corrupt payload: fuzzer findings - NPD in streamIteratorGetID (122 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: corrupt payload: fuzzer findings - listpack NPD on invalid stream (121 ms) [ok]: corrupt payload: fuzzer findings - NPD in quicklistIndex (215 ms) [ok]: Partial resynchronization is successful even client-output-buffer-limit is less than repl-backlog-size. dualchannel yes (3130 ms) [ok]: dismiss all data types memory (1009 ms) [ok]: corrupt payload: fuzzer findings - encoded entry header reach outside the allocation (214 ms) [ok]: Test replication partial resync: ok after delay (diskless: no, disabled, dual-channel: no, reconnect: 1) (9444 ms) [ok]: dismiss client output buffer (231 ms) [ok]: corrupt payload: fuzzer findings - invalid ziplist encoding (217 ms) [ok]: dismiss client query buffer (203 ms) [ok]: The update of replBufBlock's repl_offset is ok - Regression test for #11666 (2 ms) [ok]: corrupt payload: fuzzer findings - hash crash (214 ms) [ok]: PSYNC2 pingoff: setup (1002 ms) [ok]: PSYNC2 pingoff: write and wait replication (0 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 - uneven entry count in hash (214 ms) [ok]: corrupt payload: fuzzer findings - invalid read in lzf_decompress (214 ms) [ok]: Replica client-output-buffer size is limited to backlog_limit/16 when no replication data is pending. dualchannel yes (1118 ms) [ok]: corrupt payload: fuzzer findings - leak in rdbloading due to dup entry in set (213 ms) [ok]: corrupt payload: fuzzer findings - empty intset (215 ms) [ok]: dismiss replication backlog (1131 ms) [ok]: corrupt payload: fuzzer findings - zset ziplist entry lensize is 0 (214 ms) [108/134 done]: integration/dismiss-mem (3 seconds) Testing integration/replication [ok]: Manual failover vote is not limited by two times the node timeout - mixed failover (4876 ms) [ok]: corrupt payload: fuzzer findings - valgrind ziplist prevlen reaches outside the ziplist (214 ms) [ok]: Slave enters handshake (0 ms) [ok]: Slave enters wait_bgsave (0 ms) [ok]: Slot is auto-claimed by target after source relinquishes ownership (1003 ms) [ok]: corrupt payload: fuzzer findings - valgrind - bad rdbLoadDoubleValue (214 ms) [ok]: corrupt payload: fuzzer findings - valgrind ziplist prev too big (216 ms) [ok]: corrupt payload: fuzzer findings - lzf decompression fails, avoid valgrind invalid read (215 ms) [ok]: corrupt payload: fuzzer findings - stream bad lp_count (213 ms) [ok]: corrupt payload: fuzzer findings - stream bad lp_count - unsanitized (121 ms) [ok]: corrupt payload: fuzzer findings - stream integrity check issue (215 ms) [ok]: corrupt payload: fuzzer findings - infinite loop (121 ms) [ok]: corrupt payload: fuzzer findings - hash ziplist too long entry len (215 ms) [ok]: Replication: commands with many arguments (issue #1221) (10056 ms) [ok]: spopwithcount rewrite srem command (90 ms) [ok]: corrupt payload: fuzzer findings - zset ziplist invalid tail offset (214 ms) [ok]: corrupt payload: fuzzer findings - negative reply length (122 ms) [ok]: corrupt payload: fuzzer findings - valgrind negative malloc (214 ms) [ok]: corrupt payload: fuzzer findings - valgrind invalid read (213 ms) [ok]: Partial resynchronization is successful even client-output-buffer-limit is less than repl-backlog-size. dualchannel no (3133 ms) [ok]: Replication of SPOP command -- alsoPropagate() API (730 ms) [ok]: corrupt payload: fuzzer findings - empty hash ziplist (215 ms) [ok]: corrupt payload: fuzzer findings - stream with no records (122 ms) [ok]: corrupt payload: fuzzer findings - quicklist ziplist tail followed by extra data which start with 0xff (214 ms) [ok]: The update of replBufBlock's repl_offset is ok - Regression test for #11666 (1 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: Data divergence can happen under default conditions (2 ms) [ok]: Data divergence is allowed on writable replicas (1 ms) [109/134 done]: integration/replication-4 (22 seconds) Testing integration/aof [ok]: corrupt payload: fuzzer findings - dict init to huge size (213 ms) [ok]: Unfinished MULTI: Server should start if load-truncated is yes (0 ms) [ok]: corrupt payload: fuzzer findings - huge string (214 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]: Replica client-output-buffer size is limited to backlog_limit/16 when no replication data is pending. dualchannel no (1124 ms) [110/134 done]: integration/replication-buffer (25 seconds) Testing integration/psync2 [ok]: corrupt payload: fuzzer findings - stream PEL without consumer (214 ms) [ok]: Short read + command: Server should start (1 ms) [ok]: Truncated AOF loaded: we expect foo to be equal to 6 now (0 ms) [ok]: corrupt payload: fuzzer findings - stream listpack valgrind issue (121 ms) [ok]: PSYNC2 pingoff: pause replica and promote it (5000 ms) [ok]: Bad format: Server should have logged an error (1 ms) [ok]: corrupt payload: fuzzer findings - stream with bad lpFirst (214 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: Unfinished MULTI: Server should have logged an error (0 ms) [ok]: corrupt payload: fuzzer findings - stream listpack lpPrev valgrind issue (121 ms) [ok]: Short read: Server should have logged an error (1 ms) [ok]: Short read: Utility should confirm the AOF is not valid (7 ms) [ok]: Short read: Utility should show the abnormal line num in AOF (5 ms) [ok]: Short read: Utility should be able to fix the AOF (5 ms) [ok]: PSYNC2: --- CYCLE 1 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #2 as master (0 ms) [ok]: PSYNC2: Set #0 to replicate from #1 (0 ms) [ok]: corrupt payload: fuzzer findings - stream with non-integer entry id (214 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: Fixed AOF: Server should have been started (1 ms) [ok]: Fixed AOF: Keyspace should contain values that were parseable (0 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: corrupt payload: fuzzer findings - empty quicklist (214 ms) [ok]: AOF+SPOP: Server should have been started (1 ms) [ok]: AOF+SPOP: Set should have 1 member (0 ms) [ok]: corrupt payload: fuzzer findings - empty zset (214 ms) [ok]: AOF+SPOP: Server should have been started (0 ms) [ok]: AOF+SPOP: Set should have 1 member (1 ms) [ok]: Make the old master a replica of the new one and check conditions (1004 ms) [ok]: corrupt payload: fuzzer findings - hash with len of 0 (213 ms) [ok]: AOF+EXPIRE: Server should have been started (0 ms) [ok]: AOF+EXPIRE: List should be empty (1 ms) [ok]: corrupt payload: fuzzer findings - hash listpack first element too long entry len (216 ms) [ok]: Server should not try to convert DEL into EXPIREAT for EXPIRE -1 (1 ms) [ok]: PSYNC2: Set #4 to replicate from #2 (1 ms) [ok]: corrupt payload: fuzzer findings - stream double free listpack when insert dup node to rax returns 0 (213 ms) [ok]: corrupt payload: fuzzer findings - LCS OOM (214 ms) [ok]: corrupt payload: fuzzer findings - gcc asan reports false leak on assert (122 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: corrupt payload: fuzzer findings - lpFind invalid access (120 ms) [ok]: Online toggle dual-channel-replication-enabled on replica, starting with 'yes' (11101 ms) [ok]: corrupt payload: fuzzer findings - invalid access in ziplist tail prevlen decoding (213 ms) [ok]: PSYNC2: Set #1 to replicate from #3 (1 ms) [ok]: corrupt payload: fuzzer findings - zset zslInsert with a NAN score (214 ms) [ok]: corrupt payload: fuzzer findings - streamLastValidID panic (214 ms) [ok]: corrupt payload: fuzzer findings - valgrind fishy value warning (214 ms) [ok]: corrupt payload: fuzzer findings - empty set listpack (214 ms) [ok]: corrupt payload: fuzzer findings - set with duplicate elements causes sdiff to hang (214 ms) [111/134 done]: integration/corrupt-dump (15 seconds) Testing integration/shutdown [ok]: PSYNC2: Set #3 to replicate from #2 (1 ms) [ok]: PSYNC2: cluster is consistent after failover (0 ms) [ok]: Test replication partial resync: backlog expired (diskless: no, disabled, dual-channel: no, reconnect: 1) (9439 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 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) (7 ms) [ok]: Shutting down master waits for replica to catch up (sigterm) (1926 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: test various edge cases of repl topology changes with missing pings at the end (3516 ms) [ok]: Test replication with blocking lists and sorted sets operations (25003 ms) [112/134 done]: integration/block-repl (26 seconds) Testing integration/skip-rdb-checksum [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [ok]: Skip RDB checksum sync - tls:0, repl_diskless_sync:yes, repl_diskless_load:on-empty-db (317 ms) [113/134 done]: integration/skip-rdb-checksum (1 seconds) [ok]: Slave is able to detect timeout during handshake (0 ms) [ok]: New non-empty replica reports zero repl offset and rank, and fails to win election - sigstop (2645 ms) [ok]: AOF fsync always barrier issue (5247 ms) [ok]: Set instance A as slave of B (102 ms) [ok]: INCRBYFLOAT replication, should not remove expire (1 ms) [ok]: GETSET replication (1 ms) [ok]: BRPOPLPUSH replication, when blocking against empty list (1 ms) [ok]: Shutting down master waits for replica to catch up (shutdown) (1823 ms) [ok]: GETEX should not append to AOF (0 ms) [ok]: Unknown command: Server should have logged an error (1 ms) [ok]: AOF+LMPOP/BLMPOP: pop elements from the list (101 ms) [ok]: AOF+LMPOP/BLMPOP: after pop elements from the list (0 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: CLUSTER SLOT-STATS network-bytes-in, sharded pub/sub. (5568 ms) [ok]: BRPOPLPUSH replication, list exists (1002 ms) [ok]: BLMOVE (left, left) replication, when blocking against empty list (1 ms) [ok]: PSYNC2 #3899 regression: verify consistency (20 ms) [ok]: AOF+ZMPOP/BZMPOP: pop elements from the zset (101 ms) [ok]: CLUSTER SETSLOT with invalid timeouts (0 ms) [ok]: AOF+ZMPOP/BZMPOP: after pop elements from the zset (1 ms) [ok]: Generate timestamp annotations in AOF (320 ms) [ok]: Successfully load AOF which has timestamp annotations inside (0 ms) [114/134 done]: integration/psync2-reg (23 seconds) [ok]: BLMOVE (left, left) replication, list exists (1002 ms) [ok]: BLMOVE (left, right) replication, when blocking against empty list (1 ms) [ok]: Shutting down master waits for replica timeout (1909 ms) [ok]: Chained replicas disconnect when replica re-connect with the same master (2914 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 72780) (0 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (1 ms) [ok]: PSYNC2: --- CYCLE 2 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #3 as master (0 ms) [ok]: PSYNC2: Set #0 to replicate from #4 (0 ms) [ok]: Truncate AOF to specific timestamp (679 ms) [ok]: BLMOVE (left, right) replication, list exists (1002 ms) [ok]: BLMOVE (right, left) replication, when blocking against empty list (1 ms) [ok]: Shutting down master waits for replica then fails (1234 ms) [115/134 done]: integration/psync2-pingoff (16 seconds) [ok]: PSYNC2: Set #4 to replicate from #3 (0 ms) [ok]: Shutting down master waits for replica then aborted (517 ms) [ok]: BLMOVE (right, left) replication, list exists (1002 ms) [ok]: BLMOVE (right, right) replication, when blocking against empty list (1 ms) [ok]: Shutting down primary wait for replica after previous block (516 ms) [116/134 done]: integration/shutdown (8 seconds) [ok]: PSYNC2: Set #1 to replicate from #2 (0 ms) [ok]: Automatic failover vote is not limited by two times the node timeout - mixed failover (3746 ms) [ok]: EVAL timeout with slow verbatim Lua script from AOF (2198 ms) [ok]: BLMOVE (right, right) replication, list exists (1002 ms) [ok]: EVAL can process writes from AOF in read-only replicas (222 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 (5 ms) [ok]: Test valkey-check-aof for old style rdb-preamble AOF (6 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 (6 ms) [ok]: Test valkey-check-aof for Multi Part AOF contains a format error (5 ms) [ok]: Test valkey-check-aof only truncates the last file for Multi Part AOF in fix mode (10 ms) [ok]: Test replication partial resync: ok psync (diskless: no, swapdb, dual-channel: no, reconnect: 1) (6315 ms) [ok]: Test valkey-check-aof only truncates the last file for Multi Part AOF in truncate-to-timestamp mode (5 ms) [ok]: BLPOP followed by role change, issue #2473 (203 ms) [ok]: Replica output bytes metric (1 ms) [ok]: FLUSHDB / FLUSHALL should persist in AOF (6 ms) [ok]: Turning appendonly on and off within a transaction (1 ms) [ok]: PSYNC2: Set #2 to replicate from #4 (0 ms) [ok]: Second server should have role master at first (0 ms) [ok]: Slave should be able to synchronize with the master (100 ms) [ok]: SLAVEOF should start with link status "down" (0 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 (0 ms) [ok]: SET on the master should immediately propagate (0 ms) [ok]: Test cluster slots / cluster shards in aof won't crash (221 ms) [ok]: FLUSHDB / FLUSHALL should replicate (94 ms) [ok]: ROLE in master reports master with a slave (1 ms) [ok]: ROLE in slave reports slave in connected state (0 ms) [ok]: Toggle dual-channel-replication-enabled: no start (10952 ms) [ok]: Test command check in aof won't crash (350 ms) [117/134 done]: integration/aof (14 seconds) [ok]: CLUSTER SLOT-STATS network-bytes-out, for non-slot specific commands. (2748 ms) [ok]: PSYNC2: cluster is consistent after failover (0 ms) [ok]: Detect write load to master (1001 ms) [ok]: Online toggle dual-channel-replication-enabled on primary, starting with 'no' (2132 ms) [ok]: CLUSTER SLOT-STATS network-bytes-out, for slot specific commands. (2850 ms) [ok]: Online toggle dual-channel-replication-enabled on replica, starting with 'no' (2118 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 144280) (0 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (1 ms) [ok]: PSYNC2: --- CYCLE 3 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #4 as master (0 ms) [ok]: PSYNC2: Set #0 to replicate from #1 (0 ms) [ok]: PSYNC2: Set #1 to replicate from #4 (1 ms) [ok]: PSYNC2: Set #2 to replicate from #4 (1 ms) [ok]: PSYNC2: Set #3 to replicate from #2 (0 ms) [ok]: Test replication partial resync: no backlog (diskless: no, swapdb, dual-channel: no, reconnect: 1) (7929 ms) [ok]: CLUSTER SLOT-STATS network-bytes-out, blocking commands. (5676 ms) [ok]: Slave should be able to synchronize with the master (100 ms) [ok]: Detect write load to master (0 ms) [ok]: PSYNC2: cluster is consistent after failover (1 ms) [ok]: CLUSTER SETSLOT with an explicit timeout (3017 ms) [ok]: dual-channel-replication with multiple replicas (5631 ms) [ok]: Client blocked on XREADGROUP while stream's slot is migrated (2 ms) [ok]: Cluster is up (100 ms) [ok]: Cluster is writable (70 ms) [ok]: Instance #5 is a slave (0 ms) [ok]: slave buffer are counted correctly (70105 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 216519) (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 #0 as master (0 ms) [ok]: PSYNC2: Set #4 to replicate from #0 (0 ms) [ok]: Main db not affected when fail to diskless load (81268 ms) [ok]: Manual failover will reset the on-going election (5173 ms) [ok]: PSYNC2: Set #1 to replicate from #3 (1 ms) Waiting for process 2474 to exit... [ok]: Test diverse replica sync: dual-channel on/off (5027 ms) [ok]: PSYNC2: Set #2 to replicate from #3 (0 ms) [ok]: client do not break when cluster slot (3022 ms) [ok]: client can handle keys with hash tag (54 ms) [ok]: slot migration is valid from primary to another primary (55 ms) [ok]: slot migration is invalid from primary to replica (50 ms) Waiting for process 2474 to exit... [ok]: Test replica's buffer limit reached (1483 ms) [ok]: PSYNC2: Set #3 to replicate from #0 (0 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=no, replica diskless=disabled dual-channel-replication-enabled=no (17372 ms) Waiting for process 2474 to exit... [ok]: Test replication partial resync: ok after delay (diskless: no, swapdb, dual-channel: no, reconnect: 1) (9447 ms) [ok]: PSYNC2: cluster is consistent after failover (1 ms) Waiting for process 2474 to exit... [ok]: Sub-replica reports zero repl offset and rank, and fails to win election - shutdown (13259 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (1 ms) [ok]: replica buffer don't induce eviction (5091 ms) [ok]: Don't rehash if used memory exceeds maxmemory after rehash (120 ms) Waiting for process 2474 to exit... Waiting for process 2474 to exit... [ok]: client tracking don't cause eviction feedback loop (1295 ms) [ok]: propagation with eviction (95 ms) [ok]: CLUSTER SLOT-STATS network-bytes-out, replication stream egress. (2830 ms) [ok]: propagation with eviction in MULTI (95 ms) [ok]: lru/lfu value of the key just added (1 ms) Waiting for process 2474 to exit... [ok]: Import mode should forbid eviction (1 ms) [118/134 done]: unit/maxmemory (158 seconds) Waiting for process 2474 to exit... [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 288832) (0 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (1 ms) [ok]: PSYNC2: --- CYCLE 5 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #4 as master (0 ms) [ok]: PSYNC2: Set #0 to replicate from #3 (0 ms) Waiting for process 2474 to exit... [ok]: dual-channel-replication fails when primary diskless disabled (1003 ms) [ok]: PSYNC2: Set #1 to replicate from #3 (1 ms) [ok]: Slot migration is ok when the replicas are down (117 ms) [ok]: Test dual-channel-replication sync- psync established after rdb load (112 ms) [119/134 done]: unit/cluster/diskless-load-swapdb (102 seconds) [ok]: PSYNC2: Set #2 to replicate from #4 (0 ms) Waiting for process 24073 to exit... [120/134 done]: unit/cluster/slot-migration (87 seconds) [ok]: PSYNC2: Set #3 to replicate from #4 (0 ms) [ok]: Broadcast PONG to the cluster when the node role changes (110 ms) [ok]: PSYNC2: cluster is consistent after failover (1 ms) [121/134 done]: unit/cluster/manual-failover (139 seconds) [ok]: Test replication partial resync: backlog expired (diskless: no, swapdb, dual-channel: no, reconnect: 1) (9504 ms) [ok]: slot must be unbound on the owner when it is deleted (12031 ms) [122/134 done]: unit/cluster/cluster-slots (124 seconds) [ok]: Slave should be able to synchronize with the master (1810 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) (96 ms) [ok]: dual-channel-replication: Primary COB growth with inactive replica (4819 ms) Waiting for process 26219 to exit... [ok]: Slave should be able to synchronize with the master (805 ms) [ok]: Detect write load to master (0 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 361461) (0 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (1 ms) [ok]: PSYNC2: Bring the master back again for next test (1 ms) [ok]: PSYNC2: Partial resync after restart using RDB aux fields (178 ms) [123/134 done]: integration/psync2 (47 seconds) [ok]: Sub-replica reports zero repl offset and rank, and fails to win election - sigstop (2850 ms) [ok]: Test dual-channel: primary tracking replica backlog refcount - start with empty backlog (109 ms) [ok]: Test dual-channel: primary tracking replica backlog refcount - start with backlog (757 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=no, replica diskless=swapdb dual-channel-replication-enabled=no (16568 ms) [ok]: Psync established after rdb load - within grace period (118 ms) [ok]: CLUSTER SLOT-STATS network-bytes-out, sharded pub/sub, single channel. (5406 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, disabled, dual-channel: yes, reconnect: 1) (6365 ms) [ok]: Psync established after RDB load - beyond grace period (2663 ms) [ok]: Slave should be able to synchronize with the master (803 ms) [ok]: Detect write load to master (0 ms) Waiting for process 27792 to exit... Waiting for process 27792 to exit... [ok]: Test dual-channel-replication primary gets cob overrun before established psync (112 ms) [ok]: CLUSTER SLOT-STATS network-bytes-out, sharded pub/sub, cross-slot channels. (5500 ms) [ok]: Test dual-channel-replication primary gets cob overrun during replica rdb load (1031 ms) [ok]: Test replication partial resync: no backlog (diskless: yes, disabled, dual-channel: yes, reconnect: 1) (7919 ms) [ok]: CLUSTER SLOT-STATS contains default value upon valkey-server startup (2694 ms) [ok]: Slave should be able to synchronize with the master (1808 ms) [ok]: Detect write load to master (0 ms) [ok]: CLUSTER SLOT-STATS contains correct metrics upon key introduction (2778 ms) [ok]: CLUSTER SLOT-STATS contains correct metrics upon key mutation (2797 ms) [ok]: valkey-cli make source node ignores NOREPLICAS error when doing the last CLUSTER SETSLOT - gossip (10043 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=yes, replica diskless=disabled dual-channel-replication-enabled=yes (19161 ms) [ok]: CLUSTER SLOT-STATS contains correct metrics upon key deletion (2696 ms) [ok]: Sync should continue if not all slaves dropped (11137 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, disabled, dual-channel: yes, reconnect: 1) (9532 ms) [ok]: Slave should be able to synchronize with the master (804 ms) [ok]: Detect write load to master (0 ms) [ok]: CLUSTER SLOT-STATS slot visibility based on slot ownership changes (5487 ms) [ok]: CLUSTER SLOT-STATS SLOTSRANGE all slots present (0 ms) [ok]: CLUSTER SLOT-STATS SLOTSRANGE some slots missing (1 ms) [ok]: Primary abort sync if all slaves dropped dual-channel-replication (7026 ms) [ok]: Test dual-channel-replication replica main channel disconnected (1195 ms) [ok]: Test dual channel replication slave of no one after main conn kill (1 ms) [ok]: Test dual-channel-replication replica rdb connection disconnected (1099 ms) [ok]: Test dual channel replication slave of no one after rdb conn kill (1 ms) [ok]: Test dual-channel-replication primary reject set-rdb-client after client killed (1194 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, disabled, dual-channel: yes, reconnect: 1) (9679 ms) [ok]: Slave should be able to synchronize with the master (806 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replica unable to join dual channel replication sync after started (1103 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: yes, disabled, dual-channel: no, reconnect: 0) (49 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=yes, replica diskless=swapdb dual-channel-replication-enabled=yes (16605 ms) [ok]: Slave should be able to synchronize with the master (805 ms) [ok]: Detect write load to master (1 ms) [ok]: Replica recover rdb-connection killed (1089 ms) [ok]: Replica recover main-connection killed (1100 ms) [ok]: CLUSTER SLOT-STATS ORDERBY DESC correct ordering (11008 ms) [ok]: valkey-cli make source node ignores NOREPLICAS error when doing the last CLUSTER SETSLOT - setslot (10061 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, disabled, dual-channel: no, reconnect: 1) (6345 ms) [ok]: Slave should be able to synchronize with the master (803 ms) [ok]: Detect write load to master (1 ms) [ok]: Empty primary will check and delete the dirty slots (53 ms) [124/134 done]: unit/cluster/replica-migration (165 seconds) [ok]: Replica notice main-connection killed during rdb load callback (7714 ms) [125/134 done]: integration/dual-channel-replication (115 seconds) [ok]: CLUSTER SLOT-STATS ORDERBY ASC correct ordering (10787 ms) [ok]: CLUSTER SLOT-STATS ORDERBY LIMIT correct response pagination, where limit is less than number of assigned slots (8 ms) [ok]: CLUSTER SLOT-STATS ORDERBY LIMIT correct response pagination, where limit is greater than number of assigned slots (3 ms) [ok]: CLUSTER SLOT-STATS ORDERBY arg sanity check. (1 ms) [ok]: Test replication partial resync: no backlog (diskless: yes, disabled, dual-channel: no, reconnect: 1) (7914 ms) [ok]: Slave should be able to synchronize with the master (804 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, disabled, dual-channel: no, reconnect: 1) (9483 ms) [ok]: Slave should be able to synchronize with the master (804 ms) [ok]: Detect write load to master (1 ms) [ok]: CLUSTER SLOT-STATS metrics replication for new keys (5465 ms) [ok]: CLUSTER SLOT-STATS metrics replication for existing keys (5666 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, disabled, dual-channel: no, reconnect: 1) (9594 ms) [ok]: Master stream is correctly processed while the replica has a script in -BUSY state (37101 ms) [ok]: Diskless load swapdb (different replid): new database is exposed after swapping dual-channel=yes (0 ms) [ok]: Diskless load swapdb (different replid): replica enter loading dual-channel-replication-enabled=no (427 ms) [ok]: Diskless load swapdb (different replid): old database is exposed after replication fails dual-channel=no (0 ms) [ok]: Slave should be able to synchronize with the master (1808 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: yes, swapdb, dual-channel: yes, reconnect: 0) (97 ms) [ok]: Diskless load swapdb (async_loading): new database is exposed after swapping (0 ms) [ok]: Slave should be able to synchronize with the master (804 ms) [ok]: Detect write load to master (0 ms) [ok]: Diskless load swapdb (async_loading): replica enter async_loading (332 ms) [ok]: CLUSTER SLOT-STATS metrics replication for deleting keys (5455 ms) [126/134 done]: unit/cluster/slot-stats (197 seconds) [ok]: Diskless load swapdb (async_loading): old database is exposed while async replication is in progress (872 ms) [ok]: Busy script during async loading (865 ms) [ok]: Blocked commands and configs during async-loading (433 ms) [ok]: Diskless load swapdb (async_loading): old database is exposed after async replication fails (1 ms) Waiting for process 32328 to exit... Waiting for process 32328 to exit... [ok]: Test replication partial resync: ok psync (diskless: yes, swapdb, dual-channel: yes, reconnect: 1) (6339 ms) Waiting for process 32328 to exit... [ok]: Slave should be able to synchronize with the master (804 ms) [ok]: Detect write load to master (0 ms) Waiting for process 32328 to exit... [ok]: Test replication partial resync: no backlog (diskless: yes, swapdb, dual-channel: yes, reconnect: 1) (7918 ms) [ok]: Slave should be able to synchronize with the master (1807 ms) [ok]: Detect write load to master (1 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, swapdb, dual-channel: yes, reconnect: 1) (9528 ms) [ok]: Slave should be able to synchronize with the master (804 ms) [ok]: Detect write load to master (0 ms) [ok]: diskless loading short read (29104 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, swapdb, dual-channel: yes, reconnect: 1) (9592 ms) [ok]: Slave should be able to synchronize with the master (804 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) (45 ms) [ok]: Slave should be able to synchronize with the master (804 ms) [ok]: Detect write load to master (1 ms) [ok]: diskless no replicas drop during rdb pipe (6624 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, swapdb, dual-channel: no, reconnect: 1) (6341 ms) [ok]: Slave should be able to synchronize with the master (805 ms) [ok]: Detect write load to master (0 ms) [ok]: diskless slow replicas drop during rdb pipe (3809 ms) [ok]: diskless fast replicas drop during rdb pipe (5476 ms) [ok]: diskless all replicas drop during rdb pipe (1476 ms) [ok]: Test replication partial resync: no backlog (diskless: yes, swapdb, dual-channel: no, reconnect: 1) (7905 ms) [ok]: Slave should be able to synchronize with the master (804 ms) [ok]: Detect write load to master (0 ms) [ok]: diskless timeout replicas drop during rdb pipe (6562 ms) [ok]: diskless replication child being killed is collected (1456 ms) [ok]: replication child dies when parent is killed - diskless: yes dual-channel-replication-enabled: yes (1144 ms) [ok]: replication child dies when parent is killed - diskless: no dual-channel-replication-enabled: no (1449 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, swapdb, dual-channel: no, reconnect: 1) (9480 ms) [ok]: diskless replication read pipe cleanup (637 ms) [ok]: Slave should be able to synchronize with the master (805 ms) [ok]: Detect write load to master (0 ms) [ok]: replicaof right after disconnection (1719 ms) [ok]: Kill rdb child process if its dumping RDB is not useful (1026 ms) [ok]: Don't disconnect with replicas before loading transferred RDB when full sync with dual-channel-replication yes (2 ms) [ok]: Discard cache master before loading transferred RDB when full sync with dual-channel-replication yes (103 ms) [ok]: Don't disconnect with replicas before loading transferred RDB when full sync with dual-channel-replication no (2 ms) [ok]: Discard cache master before loading transferred RDB when full sync with dual-channel-replication no (103 ms) [ok]: replica can handle EINTR if use diskless load (633 ms) [ok]: replica do not write the reply to the replication link - SYNC (_addReplyToBufferOrList) (144 ms) [ok]: replica do not write the reply to the replication link - SYNC (addReplyDeferredLen) (92 ms) [ok]: replica do not write the reply to the replication link - PSYNC (_addReplyToBufferOrList) (104 ms) [ok]: replica do not write the reply to the replication link - PSYNC (addReplyDeferredLen) (104 ms) [ok]: PSYNC with wrong offset should throw error (1 ms) [ok]: Test replication with lazy expire (111 ms) [ok]: replica actually flushes db if use diskless load with flush-before-load dual-channel-replication-enabled=yes (568 ms) [ok]: replica actually flushes db if use diskless load with flush-before-load dual-channel-replication-enabled=no (568 ms) [ok]: Replica keep the old data if RDB file save fails in disk-based replication (113 ms) [127/134 done]: integration/replication (205 seconds) [ok]: Test replication partial resync: backlog expired (diskless: yes, swapdb, dual-channel: no, reconnect: 1) (9588 ms) [128/134 done]: integration/replication-psync (234 seconds) Testing solo test Jemalloc not available. Defrag tests skipped. [129/134 done]: defrag (1 seconds) Testing solo test [ignore]: large memory flag not provided [130/134 done]: bitops-large-memory (0 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 [131/134 done]: violations (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 (19202 ms) [134/134 done]: cluster (40 seconds) The End Execution time of different units: 0 seconds - unit/oom-score-adj 0 seconds - unit/pubsub 0 seconds - unit/replybufsize 0 seconds - unit/protocol 1 seconds - unit/info-command 1 seconds - unit/commandlog 0 seconds - unit/tls 2 seconds - unit/pubsubshard 2 seconds - unit/networking 2 seconds - unit/memefficiency 2 seconds - unit/tracking 3 seconds - unit/keyspace 3 seconds - unit/functions 2 seconds - unit/bitops 3 seconds - unit/acl 1 seconds - unit/bitfield 6 seconds - unit/querybuf 1 seconds - unit/lazyfree 3 seconds - unit/auth 1 seconds - unit/limits 2 seconds - unit/slowlog 7 seconds - unit/sort 7 seconds - unit/multi 0 seconds - unit/quit 0 seconds - unit/acl-v2 1 seconds - unit/shutdown 3 seconds - unit/info 0 seconds - unit/violations 10 seconds - unit/introspection-2 11 seconds - unit/other 14 seconds - unit/obuf-limits 14 seconds - unit/scan 13 seconds - unit/pause 0 seconds - unit/type/incr 5 seconds - unit/type/set 11 seconds - unit/introspection 10 seconds - unit/type/list-2 3 seconds - unit/type/hash 15 seconds - unit/expire 6 seconds - unit/type/stream-cgroups 15 seconds - unit/client-eviction 14 seconds - unit/type/list 7 seconds - unit/type/string 27 seconds - unit/scripting 28 seconds - unit/wait 18 seconds - unit/latency-monitor 23 seconds - unit/dump 2 seconds - unit/cluster/scripting 31 seconds - unit/aofrw 30 seconds - unit/geo 11 seconds - unit/cluster/pubsubshard-slot-migration 11 seconds - unit/cluster/misc 3 seconds - unit/cluster/cluster-multiple-meets 19 seconds - unit/type/stream 19 seconds - unit/type/zset 20 seconds - unit/cluster/consistency-check 21 seconds - unit/cluster/update-msg 2 seconds - unit/cluster/half-migrated-slot 6 seconds - unit/cluster/human-announced-nodename 13 seconds - unit/cluster/transactions-on-replica 23 seconds - unit/cluster/links 51 seconds - unit/hyperloglog 7 seconds - unit/cluster/base 40 seconds - unit/type/list-3 25 seconds - unit/cluster/cluster-reliable-meet 0 seconds - unit/cluster/cluster-response-tls 13 seconds - unit/cluster/noaddr 3 seconds - unit/cluster/slot-migration-response 18 seconds - unit/cluster/manual-takeover 12 seconds - unit/cluster/cluster-nodes-slots 0 seconds - unit/cluster/shardid-propagation 15 seconds - unit/cluster/pubsub 11 seconds - unit/cluster/sharded-pubsub 24 seconds - unit/cluster/many-slot-migration 12 seconds - unit/cluster/pubsubshard 15 seconds - unit/cluster/no-failover-option 3 seconds - unit/cluster/multi-slot-operations 9 seconds - unit/cluster/info 11 seconds - unit/cluster/announced-endpoints 14 seconds - unit/cluster/hostnames 46 seconds - unit/cluster/failover2 53 seconds - unit/cluster/failure-marking 14 seconds - unit/cluster/cluster-shards 31 seconds - unit/cluster/cli 1 seconds - integration/valkey-benchmark 35 seconds - unit/cluster/failover 34 seconds - unit/cluster/faildet 66 seconds - unit/cluster/slave-selection 0 seconds - integration/convert-ziplist-zset-on-load 9 seconds - integration/rdb 8 seconds - integration/psync2-master-restart 0 seconds - integration/aof-race 26 seconds - unit/cluster/replica-in-sync 10 seconds - integration/replication-3 28 seconds - unit/cluster/announce-client-ip 50 seconds - unit/cluster/slot-ownership 0 seconds - integration/cross-version-replication 1 seconds - integration/convert-zipmap-hash-on-load 8 seconds - integration/replication-2 20 seconds - integration/corrupt-dump-fuzzer 13 seconds - integration/aof-multi-part 0 seconds - integration/convert-ziplist-hash-on-load 1 seconds - integration/replica-redirect 1 seconds - integration/logging 4 seconds - integration/failover 42 seconds - unit/cluster/slave-stop-cond 12 seconds - integration/valkey-cli 3 seconds - integration/dismiss-mem 22 seconds - integration/replication-4 25 seconds - integration/replication-buffer 15 seconds - integration/corrupt-dump 26 seconds - integration/block-repl 1 seconds - integration/skip-rdb-checksum 23 seconds - integration/psync2-reg 16 seconds - integration/psync2-pingoff 8 seconds - integration/shutdown 14 seconds - integration/aof 158 seconds - unit/maxmemory 102 seconds - unit/cluster/diskless-load-swapdb 87 seconds - unit/cluster/slot-migration 139 seconds - unit/cluster/manual-failover 124 seconds - unit/cluster/cluster-slots 47 seconds - integration/psync2 165 seconds - unit/cluster/replica-migration 115 seconds - integration/dual-channel-replication 197 seconds - unit/cluster/slot-stats 205 seconds - integration/replication 234 seconds - integration/replication-psync 1 seconds - defrag 0 seconds - bitops-large-memory 0 seconds - violations 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-r2.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-r2.apk >>> valkey*: Adding .pre-install >>> valkey*: Adding .post-install >>> valkey*: Scanning shared objects >>> valkey-benchmark*: Scanning shared objects >>> valkey-cli*: Scanning shared objects >>> valkey-benchmark*: Tracing dependencies... so:libc.musl-armv7.so.1 so:libcrypto.so.3 so:libgcc_s.so.1 so:libssl.so.3 >>> valkey-benchmark*: Package size: 221.7 KB >>> valkey-benchmark*: Compressing data... >>> valkey-benchmark*: Create checksum... >>> valkey-benchmark*: Create valkey-benchmark-8.1.1-r2.apk >>> valkey-cli*: Tracing dependencies... so:libc.musl-armv7.so.1 so:libcrypto.so.3 so:libgcc_s.so.1 so:libssl.so.3 >>> valkey-cli*: Package size: 397.6 KB >>> valkey-cli*: Compressing data... >>> valkey-cli*: Create checksum... >>> valkey-cli*: Create valkey-cli-8.1.1-r2.apk >>> valkey-compat*: Tracing dependencies... !redis !redict-compat /bin/sh valkey-cli=8.1.1-r2 valkey=8.1.1-r2 >>> valkey-compat*: Package size: 1.0 B >>> valkey-compat*: Compressing data... >>> valkey-compat*: Create checksum... >>> valkey-compat*: Create valkey-compat-8.1.1-r2.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-r2.apk >>> valkey*: Tracing dependencies... /bin/sh so:libc.musl-armv7.so.1 so:libcrypto.so.3 so:libgcc_s.so.1 so:libssl.so.3 >>> valkey*: Package size: 2.2 MB >>> valkey*: Compressing data... >>> valkey*: Create checksum... >>> valkey*: Create valkey-8.1.1-r2.apk >>> valkey: Build complete at Fri, 17 Oct 2025 21:48:28 +0000 elapsed time 0h 6m 47s >>> valkey: Cleaning up srcdir >>> valkey: Cleaning up pkgdir >>> valkey: Cleaning up tmpdir >>> valkey: Uninstalling dependencies... ( 1/10) Purging .makedepends-valkey (20251017.214142) ( 2/10) Purging linux-headers (6.16.12-r0) ( 3/10) Purging tcl (8.6.17-r0) ( 4/10) Purging tzdata (2025b-r0) ( 5/10) Purging procps-ng (4.0.4-r3) ( 6/10) Purging libintl (0.24.1-r1) ( 7/10) Purging libproc2 (4.0.4-r3) ( 8/10) Purging openssl-dev (3.5.4-r0) ( 9/10) Purging utmps-libs (0.1.3.1-r0) (10/10) Purging skalibs-libs (2.14.4.0-r0) busybox-1.37.0-r24.trigger: Executing script... usr_merge_nag.sh: * WARNING: The current system is not /usr-merged. You are encouraged to usr_merge_nag.sh: * migrate manually to ensure the best-possible support. See usr_merge_nag.sh: * https://alpinelinux.org/posts/2025-10-01-usr-merge.html for more details OK: 289 MiB in 102 packages >>> valkey: Updating the main/armv7 repository index... >>> valkey: Signing the index...