>>> redis: Building community/redis 8.0.0-r0 (using abuild 3.15.0_rc3-r3) started Wed, 14 May 2025 13:30:04 +0000 >>> redis: Validating /home/buildozer/aports/community/redis/APKBUILD... >>> redis: Analyzing dependencies... >>> redis: Installing for build: build-base linux-headers openssl-dev>3 tcl procps (1/8) Installing linux-headers (6.14.2-r0) (2/8) Installing openssl-dev (3.5.0-r0) (3/8) Installing tzdata (2025b-r0) (4/8) Installing tcl (8.6.16-r0) (5/8) Installing libintl (0.24.1-r0) (6/8) Installing libproc2 (4.0.4-r2) (7/8) Installing procps-ng (4.0.4-r2) (8/8) Installing .makedepends-redis (20250514.133005) Executing busybox-1.37.0-r17.trigger OK: 287 MiB in 112 packages >>> redis: Cleaning up srcdir >>> redis: Cleaning up pkgdir >>> redis: Cleaning up tmpdir >>> redis: Fetching https://distfiles.alpinelinux.org/distfiles/v3.22/redis-8.0.0.tar.gz >>> redis: Fetching https://distfiles.alpinelinux.org/distfiles/v3.22/redis-8.0.0.tar.gz >>> redis: Checking sha512sums... redis-8.0.0.tar.gz: OK redis.conf.patch: OK sentinel.conf.patch: OK redis.initd: OK redis.confd: OK redis-sentinel.initd: OK redis.logrotate: OK >>> redis: Unpacking /var/cache/distfiles/v3.22/redis-8.0.0.tar.gz... >>> redis: redis.conf.patch patching file redis.conf Hunk #1 succeeded at 153 (offset 41 lines). Hunk #2 succeeded at 304 (offset 63 lines). Hunk #3 succeeded at 322 (offset 63 lines). Hunk #4 succeeded at 334 (offset 64 lines). Hunk #5 succeeded at 494 (offset 72 lines). >>> redis: sentinel.conf.patch patching file sentinel.conf Hunk #1 succeeded at 31 with fuzz 2 (offset -2 lines). for dir in src; do make -C $dir all; done make[1]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src' CC Makefile.dep rm -rf redis-server redis-sentinel redis-cli redis-benchmark redis-check-rdb redis-check-aof *.o *.gcda *.gcno *.gcov redis.info lcov-html Makefile.dep *.so rm -f threads_mngr.d adlist.d quicklist.d ae.d anet.d dict.d ebuckets.d eventnotifier.d iothread.d mstr.d kvstore.d server.d sds.d zmalloc.d lzf_c.d lzf_d.d pqsort.d zipmap.d sha1.d ziplist.d release.d networking.d util.d object.d db.d replication.d rdb.d t_string.d t_list.d t_set.d t_zset.d t_hash.d config.d aof.d pubsub.d multi.d debug.d sort.d intset.d syncio.d cluster.d cluster_legacy.d crc16.d endianconv.d slowlog.d eval.d bio.d rio.d rand.d memtest.d syscheck.d crcspeed.d crccombine.d crc64.d bitops.d sentinel.d notify.d setproctitle.d blocked.d hyperloglog.d latency.d sparkline.d redis-check-rdb.d redis-check-aof.d geo.d lazyfree.d module.d evict.d expire.d geohash.d geohash_helper.d childinfo.d defrag.d siphash.d rax.d t_stream.d listpack.d localtime.d lolwut.d lolwut5.d lolwut6.d acl.d tracking.d socket.d tls.d sha256.d timeout.d setcpuaffinity.d monotonic.d mt19937-64.d resp_parser.d call_reply.d script_lua.d script.d functions.d function_lua.d commands.d strl.d connection.d unix.d logreqres.d hnsw.d cJSON.d vset.d anet.d adlist.d dict.d redis-cli.d zmalloc.d release.d ae.d redisassert.d crcspeed.d crccombine.d crc64.d siphash.d crc16.d monotonic.d cli_common.d mt19937-64.d strl.d cli_commands.d ae.d anet.d redis-benchmark.d adlist.d dict.d zmalloc.d redisassert.d release.d crcspeed.d crccombine.d crc64.d siphash.d crc16.d monotonic.d cli_common.d mt19937-64.d strl.d (cd ../deps && make distclean) make[2]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps' (cd hiredis && make clean) > /dev/null || true (cd linenoise && make clean) > /dev/null || true (cd lua && make clean) > /dev/null || true (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true (cd hdr_histogram && make clean) > /dev/null || true (cd fpconv && make clean) > /dev/null || true (cd fast_float && make clean) > /dev/null || true (rm -f .make-*) make[2]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps' (cd modules && make clean) make[2]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src/modules' rm -rf *.xo *.so make[2]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src/modules' (cd ../tests/modules && make clean) make[2]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/tests/modules' rm -f commandfilter.so basics.so testrdb.so fork.so infotest.so propagate.so misc.so hooks.so blockonkeys.so blockonbackground.so scan.so datatype.so datatype2.so auth.so keyspace_events.so blockedclient.so getkeys.so getchannels.so test_lazyfree.so timer.so defragtest.so keyspecs.so hash.so zset.so stream.so mallocsize.so aclcheck.so list.so subcommands.so reply.so cmdintrospection.so eventloop.so moduleconfigs.so moduleconfigstwo.so publish.so usercall.so postnotifications.so moduleauthtwo.so rdbloadsave.so crash.so internalsecret.so commandfilter.xo basics.xo testrdb.xo fork.xo infotest.xo propagate.xo misc.xo hooks.xo blockonkeys.xo blockonbackground.xo scan.xo datatype.xo datatype2.xo auth.xo keyspace_events.xo blockedclient.xo getkeys.xo getchannels.xo test_lazyfree.xo timer.xo defragtest.xo keyspecs.xo hash.xo zset.xo stream.xo mallocsize.xo aclcheck.xo list.xo subcommands.xo reply.xo cmdintrospection.xo eventloop.xo moduleconfigs.xo moduleconfigstwo.xo publish.xo usercall.xo postnotifications.xo moduleauthtwo.xo rdbloadsave.xo crash.xo internalsecret.xo make[2]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/tests/modules' (rm -f .make-*) echo STD=-pedantic -DREDIS_STATIC='' -std=gnu11 >> .make-settings echo WARN=-Wall -W -Wno-missing-field-initializers -Werror=deprecated-declarations -Wstrict-prototypes >> .make-settings echo OPT=-O3 -flto=auto -fno-omit-frame-pointer >> .make-settings echo MALLOC=libc >> .make-settings echo BUILD_TLS=yes >> .make-settings echo USE_SYSTEMD= >> .make-settings echo CFLAGS=-Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables >> .make-settings echo LDFLAGS=-Wl,--as-needed,-O1,--sort-common >> .make-settings echo REDIS_CFLAGS= >> .make-settings echo REDIS_LDFLAGS= >> .make-settings echo PREV_FINAL_CFLAGS=-pedantic -DREDIS_STATIC='' -std=gnu11 -Wall -W -Wno-missing-field-initializers -Werror=deprecated-declarations -Wstrict-prototypes -O3 -flto=auto -fno-omit-frame-pointer -g -ggdb -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -I../deps/hiredis -I../deps/linenoise -I../deps/lua/src -I../deps/hdr_histogram -I../deps/fpconv -I../deps/fast_float -DUSE_OPENSSL=1 -DBUILD_TLS_MODULE=0 -DINCLUDE_VEC_SETS=1 >> .make-settings echo PREV_FINAL_LDFLAGS=-Wl,--as-needed,-O1,--sort-common -O3 -flto=auto -fno-omit-frame-pointer -g -ggdb -rdynamic >> .make-settings (cd ../deps && make hiredis linenoise lua hdr_histogram fpconv fast_float) make[2]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps' (cd hiredis && make clean) > /dev/null || true (cd linenoise && make clean) > /dev/null || true (cd lua && make clean) > /dev/null || true (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true (cd hdr_histogram && make clean) > /dev/null || true (cd fpconv && make clean) > /dev/null || true (cd fast_float && make clean) > /dev/null || true (rm -f .make-*) (echo "-Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables" > .make-cflags) (echo "-Wl,--as-needed,-O1,--sort-common" > .make-ldflags) MAKE hiredis MAKE linenoise cd hiredis && make static USE_SSL=1 MAKE lua cd linenoise && make cd lua/src && make all CFLAGS="-Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -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/community/redis/src/redis-8.0.0/deps/hiredis' MAKE fpconv cd fpconv && make MAKE fast_float cd fast_float && make libfast_float make[3]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/linenoise' cc -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -c linenoise.c make[3]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/hdr_histogram' cc -std=c99 -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -DHDR_MALLOC_INCLUDE=\"hdr_redis_malloc.h\" -c hdr_histogram.c make[3]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/lua/src' cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lapi.o lapi.c make[3]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/fpconv' cc -Wall -Os -g -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -c fpconv_dtoa.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lcode.o lcode.c make[3]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/fast_float' c++ -Wall -O3 -std=c++11 -DFASTFLOAT_ALLOWS_LEADING_PLUS -c fast_float_strtod.cpp cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ldebug.o ldebug.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ldo.o ldo.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ldump.o ldump.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lfunc.o lfunc.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lgc.o lgc.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o llex.o llex.c cc -std=c99 -c -O3 -fPIC -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -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 -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lmem.o lmem.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -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 net.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -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 hiredis.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -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 sds.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o lstate.o lstate.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -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 async.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -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 read.c cc -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -DLUA_USE_MKSTEMP -Os -fstack-clash-protection -Wformat -Werror=format-security -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto -funwind-tables -O2 -c -o ltm.o ltm.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 -DREDIS_STATIC='' -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 -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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 -DREDIS_STATIC='' -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/community/redis/src/redis-8.0.0/deps/fpconv' ar rcs libhdrhistogram.a hdr_histogram.o make[3]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/hdr_histogram' ar rcs libhiredis.a alloc.o net.o hiredis.o sds.o async.o read.o sockcompat.o make[3]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/linenoise' ar rc liblua.a lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o strbuf.o fpconv.o lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o loslib.o ltablib.o lstrlib.o loadlib.o linit.o lua_cjson.o lua_struct.o lua_cmsgpack.o lua_bit.o # DLL needs all object files ranlib liblua.a ar rcs libhiredis_ssl.a ssl.o cc -o lua -Wl,--as-needed,-O1,--sort-common lua.o liblua.a -lm cc -o luac -Wl,--as-needed,-O1,--sort-common luac.o print.o liblua.a -lm make[3]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/hiredis' ar -r libfast_float.a fast_float_strtod.o ar: creating libfast_float.a make[3]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/fast_float' make[3]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps/lua/src' make[2]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/deps' CC threads_mngr.o CC adlist.o CC quicklist.o CC ae.o CC anet.o CC dict.o CC ebuckets.o CC eventnotifier.o CC iothread.o CC mstr.o CC kvstore.o CC 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 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 crc16.o CC endianconv.o CC slowlog.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 redis-check-rdb.o CC redis-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 defrag.o CC siphash.o CC rax.o CC t_stream.o CC listpack.o CC localtime.o CC lolwut.o CC lolwut5.o CC lolwut6.o CC acl.o CC tracking.o CC socket.o CC tls.o CC sha256.o CC timeout.o CC setcpuaffinity.o CC monotonic.o redis-check-aof.c: In function 'processAnnotations': redis-check-aof.c:195:59: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 195 | printf("AOF %s has nothing before timestamp %ld, " | ~~^ | | | long int | %lld 196 | "aborting...\n", filename, to_timestamp); | ~~~~~~~~~~~~ | | | time_t {aka long long int} redis-check-aof.c:200:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 200 | printf("Failed to truncate AOF %s to timestamp %ld to offset %ld because it is not the last file.\n", | ~~^ | | | long int | %lld 201 | filename, to_timestamp, (long int)epos); | ~~~~~~~~~~~~ | | | time_t {aka long long int} redis-check-aof.c:208:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 208 | printf("Failed to truncate AOF %s to timestamp %ld\n", | ~~^ | | | long int | %lld 209 | filename, to_timestamp); | ~~~~~~~~~~~~ | | | time_t {aka long long int} redis-check-aof.c: In function 'checkSingleAof': redis-check-aof.c:297:59: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 297 | printf("Truncate nothing in AOF %s to timestamp %ld\n", aof_filename, to_timestamp); | ~~^ ~~~~~~~~~~~~ | | | | long int time_t {aka long long int} | %lld redis-check-aof.c: In function 'printAofStyle': redis-check-aof.c:448:62: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'time_t' {aka 'long long int'} [-Wformat=] 448 | printf("Successfully truncated AOF %s to timestamp %ld\n", | ~~^ | | | long int | %lld 449 | aofFileName, to_timestamp); | ~~~~~~~~~~~~ | | | time_t {aka long long int} CC mt19937-64.o CC resp_parser.o CC call_reply.o CC script_lua.o CC script.o CC functions.o CC function_lua.o CC commands.o CC strl.o CC connection.o CC unix.o CC logreqres.o CC hnsw.o CC cJSON.o CC vset.o CC redis-cli.o CC redisassert.o CC cli_common.o CC cli_commands.o CC redis-benchmark.o ../modules/vector-sets/hnsw.c: In function 'hnsw_insert_serialized': ../modules/vector-sets/hnsw.c:2187:40: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 2187 | node->layers[i].links[j] = (hnswNode*)params[param_idx++]; | ^ ../modules/vector-sets/hnsw.c: In function 'hnsw_deserialize_index': ../modules/vector-sets/hnsw.c:2261:38: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 2261 | uint64_t linked_id = (uint64_t) node->layers[i].links[j]; | ^ ../modules/vector-sets/vset.c: In function 'VADD_thread': ../modules/vector-sets/vset.c:461:14: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 461 | int ef = (uint64_t)targ[6]; | ^ ../modules/vector-sets/vset.c: In function 'VADD_CASReply': ../modules/vector-sets/vset.c:492:14: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 492 | int ef = (uint64_t)targ[6]; | ^ ../modules/vector-sets/vset.c: In function 'VSIM_RedisCommand': ../modules/vector-sets/vset.c:1104:19: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 1104 | targ[3] = (void*)count; | ^ LINK redis-benchmark LINK redis-cli LINK redis-server INSTALL redis-sentinel INSTALL redis-check-rdb INSTALL redis-check-aof Hint: It's a good idea to run 'make test' ;) make[1]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src' for dir in src; do make -C $dir test; done make[1]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src' CC Makefile.dep CC release.o LINK redis-server LINK redis-cli LINK redis-benchmark INSTALL redis-check-aof Cleanup: may take some time... OK Starting test server at port 21079 [ready]: 81484 Testing unit/acl-v2 [ready]: 81482 Testing unit/acl [ready]: 81483 Testing unit/aofrw [ready]: 81487 Testing unit/auth [ready]: 81486 Testing unit/bitfield [ready]: 81485 Testing unit/bitops [ready]: 81488 Testing unit/client-eviction [ready]: 81489 Testing unit/dump [ready]: 81490 Testing unit/expire [ready]: 81492 Testing unit/functions [ready]: 81491 Testing unit/geo [ready]: 81493 Testing unit/hyperloglog [ready]: 81495 Testing unit/info-command [ready]: 81496 Testing unit/info-keysizes [ready]: 81494 Testing unit/info [ready]: 81497 Testing unit/introspection-2 [ok]: KEYSIZES - Test i'th bin counts keysizes between (2^i) and (2^(i+1)-1) as expected (2 ms) [ok]: Connections start with the default user (0 ms) [ok]: It is possible to create new users (0 ms) [ok]: AUTH fails if there is no password configured server side (0 ms) [ok]: BITFIELD signed SET and GET basics (0 ms) [ok]: Coverage: ACL USERS (0 ms) [ok]: Arity check for auth command (0 ms) [ok]: Usernames can not contain spaces or null characters (0 ms) [ok]: BITFIELD unsigned SET and GET basics (1 ms) [ok]: Test basic multiple selectors (1 ms) [ok]: New users start disabled (1 ms) [ok]: BITFIELD signed SET and GET together (0 ms) [ok]: Enabling the user allows the login (0 ms) [ok]: BITFIELD unsigned with SET, GET and INCRBY arguments (0 ms) [ok]: The microsecond part of the TIME command will not overflow (0 ms) [ok]: Test ACL selectors by default have no permissions (0 ms) [ok]: BITFIELD with only key as argument (0 ms) [ok]: BITCOUNT against wrong type (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]: DUMP / RESTORE are able to serialize / unserialize a simple key (0 ms) [ok]: BITCOUNT returns 0 against non existing key (0 ms) [ok]: BITFIELD # form (1 ms) [ok]: Test password hashes can be added (1 ms) [ok]: Test deleting selectors (1 ms) [ok]: BITCOUNT returns 0 with out of range indexes (0 ms) [ok]: Test password hashes validate input (0 ms) [ok]: BITFIELD basic INCRBY form (0 ms) [ok]: RESTORE can set an arbitrary expire to the materialized key (1 ms) [ok]: ACL GETUSER returns the password hash instead of the actual password (0 ms) [ok]: Test selector syntax error reports the error in the selector context (0 ms) [ok]: RESTORE can set an expire that overflows a 32 bit integer (0 ms) [ok]: BITFIELD chaining of multiple commands (0 ms) [ok]: BITCOUNT returns 0 with negative indexes where start > end (0 ms) [ok]: Test hashed passwords removal (0 ms) [ok]: BITCOUNT against test vector #1 (1 ms) [ok]: By default users are not able to access any command (1 ms) [ok]: BITFIELD unsigned overflow wrap (1 ms) [ok]: FUNCTION - Basic usage (1 ms) [ok]: RESTORE can set an absolute expire (1 ms) [ok]: By default users are not able to access any key (0 ms) [ok]: FUNCTION - Load with unknown argument (0 ms) [ok]: BITCOUNT against test vector #2 (0 ms) [ok]: FUNCTION - Create an already exiting library raise error (0 ms) [ok]: BITFIELD unsigned overflow sat (0 ms) [ok]: FUNCTION - Create an already exiting library raise error (case insensitive) (0 ms) [ok]: BITCOUNT against test vector #3 (0 ms) [ok]: RESTORE with ABSTTL in the past (0 ms) [ok]: It's possible to allow the access of a subset of keys (0 ms) [ok]: FUNCTION - Create a library with wrong name format (0 ms) [ok]: BITCOUNT against test vector #4 (0 ms) [ok]: Test flexible selector definition (1 ms) [ok]: FUNCTION - Create library with unexisting engine (0 ms) [ok]: BITFIELD signed overflow wrap (0 ms) [ok]: info command with at most one sub command (1 ms) [ok]: FUNCTION - Test uncompiled script (0 ms) [ok]: BITCOUNT against test vector #5 (0 ms) [ok]: By default, only default user is able to publish to any channel (0 ms) [ok]: RESTORE can set LRU (1 ms) [ok]: FUNCTION - test replace argument (1 ms) [ok]: info command with one sub-section (1 ms) [ok]: GEO with wrong type src key (1 ms) [ok]: FUNCTION - test function case insensitive (0 ms) [ok]: By default, only default user is not able to publish to any shard channel (0 ms) [ok]: BITFIELD signed overflow sat (1 ms) [ok]: Test separate read permission (1 ms) [ok]: FUNCTION - test replace argument with failure keeps old libraries (0 ms) [ok]: Test separate write permission (0 ms) [ok]: FUNCTION - test function delete (0 ms) [ok]: info command with multiple sub-sections (0 ms) [ok]: GEO with non existing src key (0 ms) [ok]: FUNCTION - test fcall bad arguments (0 ms) [ok]: By default, only default user is able to subscribe to any channel (0 ms) [ok]: Test separate read and write permissions (1 ms) [ok]: FUNCTION - test fcall bad number of keys arguments (1 ms) [ok]: Validate read and write permissions format - empty permission (0 ms) [ok]: FUNCTION - test fcall negative number of keys (0 ms) [ok]: GEO BYLONLAT with empty search (1 ms) [ok]: FUNCTION - test delete on not exiting library (0 ms) [ok]: Validate read and write permissions format - empty selector (0 ms) [ok]: FUNCTION - test function kill when function is not running (0 ms) [ok]: FUNCTION - test wrong subcommand (0 ms) [ok]: Validate read and write permissions format - empty pattern (0 ms) [ok]: By default, only default user is able to subscribe to any shard channel (1 ms) [ok]: GEO BYMEMBER with non existing member (0 ms) [ok]: Validate read and write permissions format - no pattern (0 ms) [ok]: GEOADD create (0 ms) [ok]: GEOADD update (0 ms) [ok]: By default, only default user is able to subscribe to any pattern (1 ms) [ok]: GEOADD update with CH option (1 ms) [ok]: GEOADD update with NX option (0 ms) [ok]: It's possible to allow publishing to a subset of channels (0 ms) [ok]: Test separate read and write permissions on different selectors are not additive (1 ms) [ok]: GEOADD update with XX option (0 ms) [ok]: GEOADD update with CH NX option (0 ms) [ok]: It's possible to allow publishing to a subset of shard channels (0 ms) [ok]: GEOADD update with CH XX option (0 ms) [ok]: GEOADD update with XX NX option will return syntax error (1 ms) [ok]: GEOADD update with invalid option (0 ms) [ok]: Test SET with separate read permission (1 ms) [ok]: GEOADD invalid coordinates (0 ms) [ok]: Validate subset of channels is prefixed with resetchannels flag (1 ms) [ok]: GEOADD multi add (0 ms) [ok]: Check geoset values (0 ms) [ok]: GEORADIUS simple (sorted) (0 ms) [ok]: Test SET with separate write permission (0 ms) [ok]: GEORADIUS_RO simple (sorted) (0 ms) [ok]: In transaction queue publish/subscribe/psubscribe to unauthorized channel will fail (1 ms) [ok]: GEOSEARCH simple (sorted) (0 ms) [ok]: GEOSEARCH FROMLONLAT and FROMMEMBER cannot exist at the same time (0 ms) [ok]: EXPIRE - set timeouts multiple times (1 ms) [ok]: GEOSEARCH FROMLONLAT and FROMMEMBER one must exist (0 ms) [ok]: It's possible to allow subscribing to a subset of channels (0 ms) [ok]: EXPIRE - It should be still possible to read 'x' (0 ms) [ok]: GEOSEARCH BYRADIUS and BYBOX cannot exist at the same time (0 ms) [ok]: Test SET with read and write permissions (1 ms) [ok]: GEOSEARCH BYRADIUS and BYBOX one must exist (0 ms) [ok]: GEOSEARCH with STOREDIST option (0 ms) [ok]: GEORADIUS withdist (sorted) (0 ms) [ok]: It's possible to allow subscribing to a subset of shard channels (0 ms) [ok]: GEOSEARCH withdist (sorted) (0 ms) [ok]: Test BITFIELD with separate read permission (1 ms) [ok]: GEORADIUS with COUNT (0 ms) [ok]: It's possible to allow subscribing to a subset of channel patterns (0 ms) [ok]: Test BITFIELD with separate write permission (0 ms) [ok]: GEORADIUS with multiple WITH* tokens (0 ms) [ok]: GEORADIUS with ANY not sorted by default (0 ms) [ok]: GEORADIUS with ANY sorted by ASC (1 ms) [ok]: Test BITFIELD with read and write permissions (1 ms) [ok]: GEORADIUS with ANY but no COUNT (0 ms) [ok]: Subscribers are killed when revoked of channel permission (1 ms) [ok]: GEORADIUS with COUNT but missing integer argument (0 ms) [ok]: GEORADIUS with COUNT DESC (0 ms) [ok]: GEORADIUS HUGE, issue #2767 (0 ms) [ok]: Subscribers are killed when revoked of channel permission (0 ms) [ok]: GEORADIUSBYMEMBER simple (sorted) (0 ms) [ok]: GEORADIUSBYMEMBER_RO simple (sorted) (1 ms) [ok]: Test ACL log correctly identifies the relevant item when selectors are used (1 ms) [ok]: Subscribers are killed when revoked of channel permission (1 ms) [ok]: GEORADIUSBYMEMBER search areas contain satisfied points in oblique direction (0 ms) [ok]: Test ACL GETUSER response information (0 ms) [ok]: Subscribers are killed when revoked of pattern permission (0 ms) [ok]: GEORADIUSBYMEMBER crossing pole search (0 ms) [ok]: GEOSEARCH FROMMEMBER simple (sorted) (1 ms) [ok]: Subscribers are killed when revoked of allchannels permission (1 ms) [ok]: GEOSEARCH vs GEORADIUS (0 ms) [ok]: Test ACL list idempotency (1 ms) [ok]: Test R+W is the same as all permissions (0 ms) [ok]: GEOSEARCH non square, long and narrow (0 ms) [ok]: Test basic dry run functionality (1 ms) [ok]: GEOSEARCH corner point test (1 ms) [ok]: Subscribers are pardoned if literal permissions are retained and/or gaining allchannels (1 ms) [ok]: GEORADIUSBYMEMBER withdist (sorted) (0 ms) [ok]: Test various commands for command permissions (0 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]: blocked command gets rejected when reprocessed after permission change (1 ms) [ok]: GEODIST simple & unit (1 ms) [ok]: Users can be configured to authenticate with any password (0 ms) [ok]: ACLs can exclude single commands (0 ms) [ok]: GEODIST missing elements (0 ms) [ok]: Test various odd commands for key permissions (2 ms) [ok]: RESTORE can set LFU (11 ms) [ok]: GEORADIUS STORE option: syntax error (0 ms) [ok]: RESTORE returns an error of the key already exists (0 ms) [ok]: GEOSEARCHSTORE STORE option: syntax error (0 ms) [ok]: ACLs can include or exclude whole classes of commands (0 ms) [ok]: Existence test commands are not marked as access (0 ms) [ok]: GEORANGE STORE option: incompatible options (1 ms) [ok]: RESTORE can overwrite an existing key with REPLACE (1 ms) [ok]: ACLs can include single subcommands (1 ms) [ok]: RESTORE can detect a syntax error for unrecognized options (0 ms) [ok]: GEORANGE STORE option: plain usage (0 ms) [ok]: Intersection cardinaltiy commands are access commands (0 ms) [ok]: ACLs can exclude single subcommands, case 1 (0 ms) [ok]: GEORADIUSBYMEMBER STORE/STOREDIST option: plain usage (1 ms) [ok]: ACLs can exclude single subcommands, case 2 (1 ms) [ok]: GEOSEARCHSTORE STORE option: plain usage (0 ms) [ok]: ACLs cannot include a subcommand with a specific arg (0 ms) [ok]: Test general keyspace commands require some type of permission to execute (1 ms) [ok]: ACLs cannot exclude or include a container commands with a specific arg (0 ms) [ok]: GEORANGE STOREDIST option: plain usage (0 ms) [ok]: GEOSEARCHSTORE STOREDIST option: plain usage (0 ms) [ok]: ACLs cannot exclude or include a container command with two args (0 ms) [ok]: ACLs including of a type includes also subcommands (1 ms) [ok]: GEORANGE STOREDIST option: COUNT ASC and DESC (1 ms) [ok]: Cardinality commands require some type of permission to execute (1 ms) [ok]: GEOSEARCH the box spans -180° or 180° (0 ms) [ok]: ACLs can block SELECT of all but a specific DB (0 ms) [ok]: GEOSEARCH with small distance (1 ms) [ok]: Test sharded channel permissions (1 ms) [ok]: ACLs can block all DEBUG subcommands except one (1 ms) [ok]: ACLs set can include subcommands, if already full command exists (1 ms) [ok]: Test sort with ACL permissions (1 ms) [ok]: Test DRYRUN with wrong number of arguments (0 ms) [ok]: ACLs set can exclude subcommands, if already full command exists (1 ms) [ok]: ACL SETUSER RESET reverting to default newly created user (1 ms) [ok]: ACL GETUSER is able to translate back command permissions (1 ms) [ok]: FUNCTION - test loading from rdb (24 ms) [ok]: FUNCTION - test debug reload different options (2 ms) [ok]: ACL GETUSER provides reasonable results (9 ms) [ok]: FUNCTION - test debug reload with nosave and noflush (2 ms) [ok]: FUNCTION - test flushall and flushdb do not clean functions (0 ms) [ok]: ACL GETUSER provides correct results (3 ms) [ok]: ACL CAT with illegal arguments (0 ms) [ok]: FUNCTION - test function dump and restore (1 ms) [ok]: ACL CAT without category - list all categories (0 ms) [ok]: FUNCTION - test function dump and restore with flush argument (1 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]: FUNCTION - test function dump and restore with append argument (1 ms) [ok]: FUNCTION - test function dump and restore with replace argument (1 ms) [ok]: FUNCTION - test function restore with bad payload do not drop existing functions (0 ms) [ok]: FUNCTION - test function restore with wrong number of arguments (0 ms) [ok]: FUNCTION - test fcall_ro with write command (0 ms) [ok]: FUNCTION - test fcall_ro with read only commands (0 ms) [ok]: FUNCTION - test keys and argv (0 ms) [ok]: FUNCTION - test command get keys on fcall (0 ms) [ok]: FUNCTION - test command get keys on fcall_ro (0 ms) [ok]: 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 (0 ms) [ok]: ACL LOG is able to test similar events (1 ms) [ok]: ACL LOG is able to log keys access violations and key name (0 ms) [ok]: ACL LOG is able to log channel access violations and channel name (1 ms) [ok]: ACL LOG RESET is able to flush the entries in the log (0 ms) [ok]: ACL LOG can distinguish the transaction context (1) (1 ms) [ok]: ACL LOG can distinguish the transaction context (2) (1 ms) [ok]: client evicted due to large argv (44 ms) [ok]: ACL can log errors in the context of Lua scripting (0 ms) [ok]: ACL LOG can accept a numerical argument to show less entries (1 ms) [ok]: ACL LOG can log failed auth attempts (0 ms) [ok]: ACLLOG - zero max length is correctly handled (1 ms) [ok]: ACL LOG entries are limited to a maximum amount (1 ms) [ok]: ACL LOG entries are still present on update of max len config (0 ms) [ok]: When default user is off, new connections are not authenticated (1 ms) [ok]: When default user has no command permission, hello command still works for other users (0 ms) [ok]: When an authentication chain is used in the HELLO cmd, the last auth cmd has precedence (1 ms) [ok]: When a setname chain is used in the HELLO cmd, the last setname cmd has precedence (0 ms) [ok]: When authentication fails in the HELLO cmd, the client setname should not be applied (0 ms) [ok]: ACL HELP should not have unexpected options (0 ms) [ok]: Delete a user that the client doesn't use (1 ms) [ok]: Delete a user that the client is using (0 ms) [ok]: ACL GENPASS command failed test (0 ms) [ok]: Default user can not be removed (0 ms) [ok]: ACL load non-existing configured ACL file (1 ms) [ok]: ACL-Metrics user AUTH failure (2 ms) [ok]: ACL-Metrics invalid command accesses (1 ms) [ok]: ACL-Metrics invalid key accesses (1 ms) [ok]: ACL-Metrics invalid channels accesses (2 ms) [ok]: client evicted due to large query buf (32 ms) [ok]: client evicted due to percentage of maxmemory (8 ms) [ok]: RESTORE should not store key that are already expired, with REPLACE will propagate it as DEL or UNLINK (80 ms) [ok]: DUMP of non existing key returns nil (0 ms) [1/96 done]: unit/info-command (1 seconds) Testing unit/introspection [ok]: client evicted due to large multi buf (58 ms) [ok]: latencystats: disable/enable (11 ms) [ok]: latencystats: configure percentiles (2 ms) [ok]: latencystats: bad configure percentiles (2 ms) [ok]: latencystats: blocking commands (3 ms) [ok]: latencystats: subcommands (1 ms) [ok]: BITFIELD overflow detection fuzzing (171 ms) [ok]: latencystats: measure latency (51 ms) [ok]: errorstats: failed call authentication error (1 ms) [ok]: errorstats: failed call within MULTI/EXEC (3 ms) [ok]: errorstats: failed call within LUA (2 ms) [ok]: errorstats: failed call NOSCRIPT error (2 ms) [ok]: errorstats: failed call NOGROUP error (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 (0 ms) [ok]: errorstats: rejected call unknown command (1 ms) [ok]: For unauthenticated clients multibulk and bulk length are limited (1 ms) [ok]: errorstats: rejected call within MULTI/EXEC (3 ms) [ok]: PING (0 ms) [ok]: CLIENT LIST (0 ms) [ok]: errorstats: rejected call due to wrong arity (1 ms) [ok]: CLIENT LIST with IDs (1 ms) [ok]: CLIENT INFO (0 ms) [ok]: CLIENT KILL with illegal arguments (1 ms) [ok]: errorstats: rejected call by OOM error (2 ms) [ok]: errorstats: rejected call by authorization error (2 ms) [ok]: default: load from include file, can access any channels (0 ms) [ok]: errorstats: blocking commands (2 ms) [ok]: default: with config acl-pubsub-default allchannels after reset, can access any channels (1 ms) [ok]: default: with config acl-pubsub-default resetchannels after reset, can not access any channels (0 ms) [ok]: Alice: can execute all command (0 ms) [ok]: Test behavior of loading ACLs (1 ms) [ok]: Bob: just execute @set and acl command (1 ms) [ok]: ACL LOAD only disconnects affected clients (1 ms) [ok]: ACL LOAD disconnects affected subscriber (1 ms) [ok]: ACL LOAD disconnects clients of deleted users (1 ms) [ok]: ACL load and save (3 ms) [ok]: ACL load and save with restricted channels (1 ms) [ok]: BITCOUNT fuzzing without start/end (239 ms) [ok]: KEYSIZES - Histogram of values of Bytes, Kilo and Mega (341 ms) [ok]: MIGRATE is caching connections (227 ms) [2/96 done]: unit/acl-v2 (1 seconds) Testing unit/keyspace [ok]: errorstats: limit errors will not increase indefinitely (110 ms) [ok]: For unauthenticated clients output buffer is limited (158 ms) [ok]: BITFIELD overflow wrap fuzzing (266 ms) [ok]: BITFIELD regression for #3221 (0 ms) [ok]: FUNCTION - test function kill (402 ms) [ok]: DEL against a single item (0 ms) [ok]: Vararg DEL (0 ms) [ok]: BITFIELD regression for #3564 (1 ms) [ok]: Untagged multi-key commands (0 ms) [ok]: BITFIELD_RO with only key as argument (1 ms) [ok]: BITFIELD_RO fails when write option is used (0 ms) [ok]: KEYS with pattern (0 ms) [ok]: KEYS to get all keys (0 ms) [ok]: DBSIZE (0 ms) [ok]: KEYS with hashtag (1 ms) [ok]: DEL all keys (0 ms) [ok]: stats: eventloop metrics (111 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: ACL load on replica when connected to replica (0 ms) [ok]: HyperLogLog self test passes (508 ms) [ok]: PFADD without arguments creates an HLL value (0 ms) [ok]: Approximated cardinality after creation is zero (0 ms) [ok]: PFADD returns 1 when at least 1 reg was modified (0 ms) [ok]: PFADD returns 0 when no reg was modified (0 ms) [ok]: PFADD works with empty string (regression) (0 ms) [ok]: PFCOUNT returns approximated cardinality of set (0 ms) [ok]: AUTH fails when binary password is wrong (0 ms) [ok]: AUTH succeeds when binary password is correct (0 ms) [ok]: client evicted due to watched key list (485 ms) [ok]: BITCOUNT fuzzing with start/end (452 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) (1 ms) [ok]: BITOP where dest and target are the same key (0 ms) [ok]: BITOP AND|OR|XOR don't change the string with single input key (0 ms) [ok]: BITOP missing key is considered a stream of zero (1 ms) [ok]: BITOP shorter keys are zero-padded to the key with max length (0 ms) [ok]: 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]: BITFIELD: setup slave (101 ms) [ok]: BITFIELD: write on master, read on slave (1 ms) [ok]: BITFIELD_RO with only key as argument on read-only replica (0 ms) [ok]: BITFIELD_RO fails when write option is used on read-only replica (0 ms) [ok]: FUNCTION - test script kill not working on function (402 ms) [ok]: HyperLogLogs are promote from sparse to dense (367 ms) [ok]: Change hll-sparse-max-bytes (1 ms) [ok]: BITOP and fuzzing (218 ms) [ok]: Hyperloglog promote to dense well in different hll-sparse-max-bytes (41 ms) [ok]: Only default user has access to all channels irrespective of flag (1 ms) [3/96 done]: unit/bitfield (2 seconds) Testing unit/latency-monitor [ok]: LATENCY HISTOGRAM with empty histogram (1 ms) [ok]: LATENCY HISTOGRAM all commands (0 ms) [ok]: LATENCY HISTOGRAM sub commands (1 ms) [ok]: LATENCY HISTOGRAM with a subset of commands (1 ms) [ok]: LATENCY HISTOGRAM command (0 ms) [ok]: LATENCY HISTOGRAM with wrong command name skips the invalid one (1 ms) [ok]: BITOP or fuzzing (223 ms) [ok]: default: load from config file, without channel permission default user can't access any channels (0 ms) [ok]: FUNCTION - test function kill not working on eval (403 ms) [ok]: FUNCTION - test function flush (2 ms) [ok]: FUNCTION - async function flush rebuilds Lua VM without causing race condition between main and lazyfree thread (97 ms) [ok]: FUNCTION - test function wrong argument (0 ms) [ok]: default: load from config file with all channels permissions (0 ms) [ok]: BITOP xor fuzzing (309 ms) [ok]: BITOP NOT fuzzing (31 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 (1 ms) [ok]: BITPOS will illegal arguments (0 ms) [ok]: BITPOS against non-integer value (1 ms) [ok]: BITPOS bit=0 with empty key returns 0 (0 ms) [ok]: BITPOS bit=1 with empty key returns -1 (0 ms) [ok]: BITPOS bit=0 with string less than 1 word works (0 ms) [ok]: BITPOS bit=1 with string less than 1 word works (0 ms) [ok]: BITPOS bit=0 starting at unaligned address (0 ms) [ok]: BITPOS bit=1 starting at unaligned address (0 ms) [ok]: BITPOS bit=0 unaligned+full word+reminder (2 ms) [ok]: BITPOS bit=1 unaligned+full word+reminder (1 ms) [ok]: BITPOS bit=1 returns -1 if string is all 0 bits (4 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 (1 ms) [ok]: SETBIT/BITFIELD only increase dirty when the value changed (2 ms) [ok]: DEL against expired key (1100 ms) [ok]: EXISTS (0 ms) [ok]: Zero length value in key. SET/GET/EXISTS (1 ms) [ok]: Commands pipelining (0 ms) [ok]: Non existing command (0 ms) [ok]: RENAME basic usage (0 ms) [ok]: RENAME source key should no longer exist (0 ms) [ok]: RENAME against already existing key (1 ms) [ok]: RENAMENX basic usage (0 ms) [ok]: RENAMENX against already existing key (0 ms) [ok]: RENAMENX against already existing key (2) (0 ms) [ok]: RENAME against non existing source key (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) (0 ms) [ok]: DEL all keys again (DB 1) (0 ms) [ok]: COPY basic usage for string (0 ms) [ok]: COPY for string does not replace an existing key without REPLACE option (0 ms) [ok]: COPY for string can replace an existing key with REPLACE option (0 ms) [ok]: COPY for string ensures that copied data is independent of copying data (5 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]: MASTERAUTH test with binary password rdbchannel=yes (914 ms) [ok]: COPY basic usage for list - quicklist (46 ms) [ok]: COPY basic usage for list - listpack (1 ms) [ok]: COPY basic usage for $type set (1 ms) [ok]: COPY basic usage for $type set (0 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 (8 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 (13 ms) [ok]: BITPOS bit=1 fuzzy testing using SETBIT (182 ms) [ok]: COPY basic usage for stream (74 ms) [ok]: COPY basic usage for stream-cgroups (6 ms) [ok]: MOVE basic usage (0 ms) [ok]: MOVE against key existing in the target DB (0 ms) [ok]: MOVE against non-integer DB (#1428) (0 ms) [ok]: MOVE can move key expire metadata as well (0 ms) [ok]: MOVE does not create an expire if it does not exist (1 ms) [ok]: SET/GET keys in different DBs (0 ms) [ok]: RANDOMKEY (5 ms) [ok]: RANDOMKEY against empty DB (0 ms) [ok]: RANDOMKEY regression 1 (1 ms) [ok]: KEYS * two times with long key, Github issue #1208 (0 ms) [ok]: Regression for pattern matching long nested loops (0 ms) [ok]: Regression for pattern matching very long nested loops (3 ms) [ok]: Coverage: basic SWAPDB test and unhappy path (1 ms) [ok]: Coverage: SWAPDB and FLUSHDB (1 ms) [ok]: HyperLogLog sparse encoding stress test (807 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Additional at tail (1 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Broken magic (0 ms) [ok]: Corrupted sparse HyperLogLogs are detected: Invalid encoding (0 ms) [ok]: Corrupted dense HyperLogLogs are detected: Wrong length (1 ms) [4/96 done]: unit/keyspace (1 seconds) Testing unit/lazyfree [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]: client evicted due to pubsub subscriptions (1229 ms) [ok]: Disconnecting the replica from master instance (101 ms) [ok]: FUNCTION - test replication to replica on rdb phase (0 ms) [ok]: FUNCTION - test replication to replica on rdb phase info command (0 ms) [ok]: FUNCTION - create on read only replica (0 ms) [ok]: FUNCTION - delete on read only replica (0 ms) [ok]: FUNCTION - function effect is replicated to replica (0 ms) [ok]: FUNCTION - modify key space of read only replica (1 ms) [ok]: BITPOS bit=0 fuzzy testing using SETBIT (223 ms) [ok]: client evicted due to tracking redirection (59 ms) [ok]: stats: instantaneous metrics (1603 ms) [ok]: BITPOS/BITCOUNT fuzzy testing using SETBIT (166 ms) [ok]: ACL from config file and config rewrite (214 ms) [5/96 done]: unit/acl (3 seconds) Testing unit/limits [ok]: EXPIRE - After 2.1 seconds the key should no longer be here (2102 ms) [ok]: EXPIRE - write on expire should work (0 ms) [ok]: EXPIREAT - Check for EXPIRE alike behavior (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]: UNLINK can reclaim memory in background (250 ms) [6/96 done]: unit/bitops (3 seconds) Testing unit/maxmemory [ok]: stats: debug metrics (112 ms) [ok]: CLIENT KILL maxAGE will kill old clients (2001 ms) [ok]: CLIENT KILL SKIPME YES/NO will kill all clients (3 ms) [ok]: CLIENT command unhappy path coverage (3 ms) [ok]: stats: client input and output buffer limit disconnections (120 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: false (52 ms) [ok]: clients: pubsub clients (2 ms) [ok]: clients: watching clients (8 ms) [ok]: CLIENT KILL close the client connection during bgsave (98 ms) [ok]: FLUSHDB ASYNC can reclaim memory in background (254 ms) [ok]: CLIENT REPLY OFF/ON: disable all commands reply (45 ms) [ok]: CLIENT REPLY SKIP: skip the next command reply (43 ms) [ok]: CLIENT REPLY ON: unset SKIP flag (47 ms) [ok]: MONITOR can log executed commands (1 ms) [ok]: MONITOR can log commands issued by the scripting engine (1 ms) [ok]: MONITOR can log commands issued by functions (1 ms) [ok]: MONITOR supports redacting command arguments (1 ms) [ok]: MONITOR correctly handles multi-exec cases (2 ms) [ok]: memory: database and pubsub overhead and rehashing dict count (3 ms) [ok]: lazy free a stream with all types of metadata (162 ms) [ok]: lazy free a stream with deleted cgroup (1 ms) [ok]: eviction due to input buffer of a dead client, client eviction: false (281 ms) [ok]: MONITOR log blocked command only once (103 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 (1 ms) [ok]: CLIENT SETNAME does not accept spaces (0 ms) [ok]: CLIENT SETNAME can assign a name to this connection (0 ms) [ok]: CLIENT SETNAME can change the name of an existing connection (1 ms) [ok]: After CLIENT SETNAME, connection can still be closed (0 ms) [ok]: CLIENT SETINFO can set a library name to this connection (0 ms) [ok]: CLIENT SETINFO invalid args (1 ms) [ok]: RESET does NOT clean library name (1 ms) [ok]: CLIENT SETINFO can clear library name (0 ms) [ok]: FLUSHALL SYNC optimized to run in bg as blocking FLUSHALL ASYNC (53 ms) [ok]: Run consecutive blocking FLUSHALL ASYNC successfully (3 ms) [ok]: FLUSHALL SYNC in MULTI not optimized to run as blocking FLUSHALL ASYNC (1 ms) [ok]: MASTERAUTH test with binary password rdbchannel=no (1009 ms) [7/96 done]: unit/info (3 seconds) Testing unit/memefficiency [8/96 done]: unit/auth (3 seconds) Testing unit/multi [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]: FUNCTION can processes create, delete and flush commands in AOF when doing "debug loadaof" in read-only slaves (323 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) (0 ms) [ok]: EXEC fail on WATCHed key modified by SORT with STORE even if the result is empty (0 ms) [ok]: eviction due to output buffers of pubsub, client eviction: false (385 ms) [ok]: TTL, TYPE and EXISTS do not alter the last access time of a key (3002 ms) [ok]: EXEC fail on lazy expired WATCHed key (102 ms) [ok]: WATCH stale keys should not fail EXEC (3 ms) [ok]: Delete WATCHed stale keys should not fail EXEC (2 ms) [ok]: eviction due to output buffers of many MGET clients, client eviction: true (56 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 (1 ms) [ok]: LIBRARIES - test shared function can access default globals (0 ms) [ok]: FLUSHDB is able to touch the watched keys (0 ms) [ok]: FLUSHDB does not touch non affected keys (1 ms) [ok]: LIBRARIES - usage and code sharing (1 ms) [ok]: LIBRARIES - test registration failure revert the entire load (0 ms) [ok]: LIBRARIES - test registration function name collision (1 ms) [ok]: SWAPDB is able to touch the watched keys that exist (1 ms) [ok]: LIBRARIES - test registration function name collision on same library (0 ms) [ok]: LIBRARIES - test registration with no argument (0 ms) [ok]: LIBRARIES - test registration with only name (0 ms) [ok]: SWAPDB is able to touch the watched keys that do not exist (0 ms) [ok]: LIBRARIES - test registration with to many arguments (0 ms) [ok]: LIBRARIES - test registration with no string name (0 ms) [ok]: LIBRARIES - test registration with wrong name format (0 ms) [ok]: LIBRARIES - test registration with empty name (0 ms) [ok]: LIBRARIES - math.random from function load (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 (1 ms) [ok]: SWAPDB does not touch watched stale keys (3 ms) [ok]: LIBRARIES - malicious access test (0 ms) [ok]: LIBRARIES - delete removed all functions on library (1 ms) [ok]: LIBRARIES - register function inside a function (0 ms) [ok]: LIBRARIES - register library with no functions (0 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 (0 ms) [ok]: WATCH will consider touched keys target of EXPIRE (1 ms) [ok]: Check if maxclients works refusing connections (905 ms) [ok]: Memory efficiency with values in range 32 (373 ms) [ok]: SETEX - Wait for the key to expire (1101 ms) [ok]: SETEX - Wrong time parameter (0 ms) [ok]: PERSIST can undo an EXPIRE (1 ms) [ok]: PERSIST returns 0 against non existing or non volatile keys (0 ms) [9/96 done]: unit/limits (1 seconds) Testing unit/networking [ok]: eviction due to input buffer of a dead client, client eviction: true (295 ms) [ok]: Memory efficiency with values in range 64 (302 ms) [ok]: CONFIG SET port number (225 ms) [ok]: CONFIG save params special case handled properly (911 ms) [ok]: CONFIG sanity (16 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 (2 ms) [ok]: FUNCTION - test function list with pattern (1 ms) [ok]: FUNCTION - test function list wrong argument (0 ms) [ok]: FUNCTION - test function list with bad argument to library name (0 ms) [ok]: FUNCTION - test function list withcode multiple times (0 ms) [ok]: FUNCTION - test function list libraryname multiple times (0 ms) [ok]: FUNCTION - verify OOM on function load and function restore (1 ms) [ok]: FUNCTION - verify allow-omm allows running any command (1 ms) [ok]: CONFIG REWRITE sanity (149 ms) [ok]: CONFIG SET bind address (230 ms) [ok]: FUNCTION - wrong flags type named arguments (0 ms) [ok]: FUNCTION - wrong flag type (0 ms) [ok]: FUNCTION - unknown flag (0 ms) [ok]: FUNCTION - write script on fcall_ro (0 ms) [ok]: FUNCTION - write script with no-writes flag (0 ms) [ok]: FUNCTION - deny oom (1 ms) [ok]: FUNCTION - deny oom on no-writes function (0 ms) [ok]: FUNCTION - allow stale (1 ms) [ok]: FUNCTION - redis version api (0 ms) [ok]: FUNCTION - function stats (1 ms) [ok]: FUNCTION - function stats reloaded correctly from rdb (2 ms) [ok]: FUNCTION - function stats delete library (0 ms) [ok]: FUNCTION - test function stats on loading failure (1 ms) [ok]: FUNCTION - function stats cleaned after flush (0 ms) [ok]: FUNCTION - function test empty engine (1 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 (1 ms) [ok]: FUNCTION - test getmetatable on script load (1 ms) [ok]: Memory efficiency with values in range 128 (355 ms) [10/96 done]: unit/functions (4 seconds) Testing unit/obuf-limits [ok]: CONFIG SET client-output-buffer-limit (1 ms) [ok]: eviction due to output buffers of pubsub, client eviction: true (726 ms) [ok]: WATCH will consider touched expired keys (1105 ms) [ok]: DISCARD should clear the WATCH dirty flag on the client (0 ms) [ok]: DISCARD should UNWATCH all the keys (0 ms) [ok]: Memory efficiency with values in range 1024 (405 ms) [ok]: CONFIG SET bind-source-addr (519 ms) [ok]: MULTI / EXEC is not propagated (single write command) (65 ms) [ok]: Without maxmemory small integers are shared (0 ms) [ok]: With maxmemory and non-LRU policy integers are still shared (0 ms) [ok]: With maxmemory and LRU policy integers are not shared (1 ms) [ok]: MULTI / EXEC is propagated correctly (multiple commands) (101 ms) [ok]: EXPIRE precision is now the millisecond (1103 ms) [ok]: CONFIG REWRITE handles save and shutdown properly (664 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 (3 ms) [ok]: CONFIG GET multiple args (1 ms) [ok]: MULTI / EXEC is propagated correctly (multiple commands with SELECT) (101 ms) [ok]: redis-server command line arguments - error cases (79 ms) [ok]: PSETEX can set sub-second expires (102 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-random) (212 ms) [ok]: MULTI / EXEC is propagated correctly (empty transaction) (100 ms) [ok]: Default bind address configuration handling (208 ms) [ok]: PEXPIRE can set sub-second expires (101 ms) [ok]: Protected mode works as expected (3 ms) [ok]: Test latency events logging (3404 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 (0 ms) [ok]: MULTI / EXEC is propagated correctly (read-only commands) (101 ms) [ok]: redis-server command line arguments - allow passing option name and option value in the same arg (219 ms) [11/96 done]: unit/networking (1 seconds) Testing unit/oom-score-adj [ok]: MULTI / EXEC is propagated correctly (write command, no effect) (100 ms) [ok]: PEXPIREAT can set sub-second expires (202 ms) [ok]: TTL returns time to live in seconds (1 ms) [ok]: PTTL returns time to live in milliseconds (0 ms) [ok]: TTL / PTTL / EXPIRETIME / PEXPIRETIME return -1 if key has no expire (0 ms) [ok]: TTL / PTTL / EXPIRETIME / PEXPIRETIME return -2 if key does not exit (1 ms) [ok]: EXPIRETIME returns absolute expiration time in seconds (0 ms) [ok]: PEXPIRETIME returns absolute expiration time in milliseconds (1 ms) [ok]: CONFIG SET oom-score-adj works as expected (27 ms) [ok]: CONFIG SET oom-score-adj handles configuration failures (1 ms) [ok]: CONFIG SET oom-score-adj-values doesn't touch proc when disabled (1 ms) [ok]: CONFIG SET oom score restored on disable (0 ms) [ok]: CONFIG SET oom score relative and absolute (0 ms) [ok]: CONFIG SET out-of-range oom score (0 ms) [ok]: MULTI / EXEC with REPLICAOF (101 ms) [ok]: DISCARD should not fail during OOM (1 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lru) (366 ms) [ok]: redis-server command line arguments - wrong usage that we support anyway (224 ms) [12/96 done]: unit/oom-score-adj (0 seconds) Testing unit/other [ok]: Coverage: HELP commands (1 ms) [ok]: Coverage: MEMORY MALLOC-STATS (0 ms) [ok]: Coverage: MEMORY PURGE (0 ms) [ok]: SAVE - make sure there are all the types as values (2 ms) [ok]: redis-server command line arguments - allow option value to use the `--` prefix (225 ms) [ok]: MULTI and script timeout (403 ms) [ok]: maxmemory - is the memory limit honoured? (policy allkeys-lfu) (374 ms) [ok]: redis-server command line arguments - option name and option value in the same arg and `--` prefix (223 ms) [ok]: Redis should actively expire keys incrementally (603 ms) [ok]: Memory efficiency with values in range 16384 (1193 ms) [ok]: FUZZ stresser with data model binary (413 ms) [13/96 done]: unit/memefficiency (3 seconds) Testing unit/pause [ok]: maxmemory - is the memory limit honoured? (policy volatile-lru) (323 ms) [ok]: Test read commands are not blocked by client pause (1 ms) [ok]: EXEC and script timeout (402 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-lfu) (306 ms) [ok]: FUZZ stresser with data model alpha (470 ms) [ok]: Test old pause-all takes precedence over new pause-write (less restrictive) (346 ms) [ok]: TOUCH alters the last access time of a key (3001 ms) [ok]: MULTI-EXEC body and script timeout (402 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 (1 ms) [ok]: Test special commands are paused by RO (1 ms) [ok]: Test read/admin multi-execs are not blocked by pause RO (1 ms) [ok]: Test write multi-execs are blocked by pause RO (1 ms) [ok]: Test scripts are blocked by pause RO (1 ms) [ok]: Test RO scripts are not blocked by pause RO (0 ms) [ok]: Test read-only scripts in multi-exec are not blocked by pause RO (0 ms) [ok]: Test write scripts in multi-exec are blocked by pause RO (1 ms) [ok]: Test may-replicate commands are rejected in RO scripts (0 ms) [ok]: Test multiple clients can be queued up and unblocked (1 ms) [ok]: Test clients with syntax errors will get responses immediately (0 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-random) (282 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]: FUZZ stresser with data model compr (417 ms) [ok]: Redis should lazy expire keys (1001 ms) [ok]: Test when replica paused, offset would not grow (2 ms) [ok]: Test replica offset would grow after unpause (0 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 (3 ms) [ok]: redis-server command line arguments - save with empty input (1118 ms) [ok]: just EXEC and script timeout (403 ms) [ok]: exec with write commands and state change (1 ms) [ok]: exec with read commands and stale replica state change (6 ms) [ok]: EXEC with only read commands should not be rejected when OOM (1 ms) [ok]: EXEC with at least one use-memory command should fail (1 ms) [ok]: Blocking commands ignores the timeout (1 ms) [ok]: maxmemory - is the memory limit honoured? (policy volatile-ttl) (318 ms) [ok]: Test the randomkey command will not cause the server to get into an infinite loop during the client pause write (6 ms) [14/96 done]: unit/pause (1 seconds) Testing unit/printver [ok]: MULTI propagation of PUBLISH (91 ms) [ok]: Client closed in the middle of blocking FLUSHALL ASYNC (3931 ms) [ok]: Pending commands in querybuf processed once unblocking FLUSHALL ASYNC (1 ms) Testing Redis version 8.0.0 (00000000) [ok]: MULTI propagation of SCRIPT LOAD (100 ms) [ok]: redis-server command line arguments - take one bulk string with spaces for MULTI_ARG configs parsing (224 ms) [15/96 done]: unit/printver (0 seconds) Testing unit/protocol [ok]: MULTI propagation of EVAL (101 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-random) (365 ms) [ok]: MULTI propagation of SCRIPT FLUSH (100 ms) [ok]: cannot modify protected configuration - no (0 ms) [ok]: Handle an empty query (45 ms) [ok]: MULTI propagation of XREADGROUP (102 ms) [ok]: MULTI with SAVE (0 ms) [ok]: MULTI with SHUTDOWN (1 ms) [ok]: Negative multibulk length (46 ms) [ok]: Out of range multibulk length (0 ms) [ok]: Wrong multibulk payload header (0 ms) [ok]: Negative multibulk payload length (1 ms) [ok]: Out of range multibulk payload length (0 ms) [ok]: Non-number multibulk payload length (0 ms) [ok]: Multi bulk request not followed by bulk arguments (0 ms) [ok]: Generic wrong number of args (0 ms) [ok]: Unbalanced number of quotes (1 ms) [ok]: Protocol desync regression test #1 (30 ms) [ok]: Protocol desync regression test #2 (30 ms) [ok]: Protocol desync regression test #3 (30 ms) [ok]: raw protocol response (0 ms) [ok]: raw protocol response - deferred (0 ms) [ok]: raw protocol response - multiline (0 ms) [ok]: bulk reply protocol (2 ms) [ok]: RESP3 attributes (0 ms) [ok]: RESP3 attributes readraw (0 ms) [ok]: RESP3 attributes on RESP2 (0 ms) [ok]: test big number parsing (0 ms) [ok]: test bool parsing (1 ms) [ok]: test verbatim str parsing (0 ms) [ok]: cannot modify protected configuration - local (4 ms) [ok]: test large number of args (29 ms) [ok]: test argument rewriting - issue 9598 (1 ms) [ok]: Operations in no-touch mode do not alter the last access time of a key (1103 ms) [ok]: MULTI with BGREWRITEAOF (204 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (allkeys-lru) (407 ms) [ok]: Regression for a crash with blocking ops and pipelining (0 ms) [ok]: MULTI with config set appendonly (204 ms) [ok]: MULTI with config error (0 ms) [ok]: Flushall while watching several keys by one client (0 ms) [ok]: EXPIRE should not resurrect keys (issue #1026) (1002 ms) [ok]: 5 keys in, 5 keys out (1 ms) [ok]: EXPIRE with empty string as TTL should report an error (0 ms) [ok]: SET with EX with big integer should report an error (1 ms) [ok]: SET with EX with smallest integer should report an error (0 ms) [ok]: GETEX with big integer should report an error (0 ms) [ok]: GETEX with smallest integer should report an error (0 ms) [ok]: EXPIRE with big integer overflows when converted to milliseconds (1 ms) [ok]: PEXPIRE with big integer overflow when basetime is added (0 ms) [ok]: EXPIRE with big negative integer (1 ms) [ok]: PEXPIREAT with big integer works (0 ms) [ok]: PEXPIREAT with big negative integer works (0 ms) [ok]: FLUSHALL and bgsave (1002 ms) [ok]: Client output buffer hard limit is enforced (3446 ms) [ok]: MULTI with FLUSHALL and AOF (2 ms) [ok]: BGSAVE (104 ms) [ok]: SELECT an out of range DB (0 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-lru) (428 ms) [16/96 done]: unit/multi (5 seconds) Testing unit/pubsub [ok]: Pub/Sub PING on RESP2 (1 ms) [ok]: Pub/Sub PING on RESP3 (1 ms) [ok]: PUBLISH/SUBSCRIBE basics (1 ms) [ok]: PUBLISH/SUBSCRIBE with two clients (1 ms) [ok]: PUBLISH/SUBSCRIBE after UNSUBSCRIBE without arguments (0 ms) [ok]: SUBSCRIBE to one channel more than once (1 ms) [ok]: UNSUBSCRIBE from non-subscribed channels (0 ms) [ok]: PUBLISH/PSUBSCRIBE basics (1 ms) [ok]: PUBLISH/PSUBSCRIBE with two clients (1 ms) [ok]: PUBLISH/PSUBSCRIBE after PUNSUBSCRIBE without arguments (1 ms) [ok]: PubSub messages with CLIENT REPLY OFF (90 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 (1 ms) [ok]: Keyspace notifications: we receive keyspace notifications (41 ms) [ok]: Keyspace notifications: we receive keyevent notifications (43 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 (0 ms) [ok]: Keyspace notifications: list events test (1 ms) [ok]: Keyspace notifications: set events test (1 ms) [ok]: Keyspace notifications: zset events test (1 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-random) (402 ms) [ok]: Check consistency of different data types after a reload (484 ms) [ok]: config during loading (971 ms) [ok]: Operations in no-touch mode TOUCH alters the last access time of a key (1101 ms) [ok]: Same dataset digest if saving/reloading as AOF? (133 ms) [ok]: EXPIRES after a reload (snapshot + append only file rewrite) (54 ms) [ok]: Keyspace notifications: hash events test (listpackex) (402 ms) [ok]: Unblocks client blocked on lazyfree via REPLICAOF command (1903 ms) [ok]: maxmemory - only allkeys-* should remove non-volatile keys (volatile-ttl) (388 ms) [ok]: CONFIG REWRITE handles rename-command properly (342 ms) [17/96 done]: unit/lazyfree (7 seconds) Testing unit/pubsubshard [ok]: SPUBLISH/SSUBSCRIBE basics (2 ms) [ok]: SPUBLISH/SSUBSCRIBE with two clients (0 ms) [ok]: SPUBLISH/SSUBSCRIBE after UNSUBSCRIBE without arguments (1 ms) [ok]: SSUBSCRIBE to one channel more than once (1 ms) [ok]: SUNSUBSCRIBE from non-subscribed channels (0 ms) [ok]: PUBSUB command basics (0 ms) [ok]: SPUBLISH/SSUBSCRIBE with two clients (0 ms) [ok]: SPUBLISH/SSUBSCRIBE with PUBLISH/SUBSCRIBE (1 ms) [ok]: PubSubShard with CLIENT REPLY OFF (89 ms) [ok]: Keyspace notifications: hash events test (hashtable) (401 ms) [ok]: Keyspace notifications: stream events test (1 ms) [ok]: maxmemory - policy volatile-lru should only remove volatile keys. (423 ms) [ok]: Keyspace notifications: expired events (triggered expire) (202 ms) [ok]: setup replication for following tests (102 ms) [ok]: publish message to master and receive on replica (0 ms) [ok]: CONFIG REWRITE handles alias config properly (666 ms) [ok]: LATENCY GRAPH can output the expire event graph (0 ms) [ok]: LATENCY of expire events are correctly collected (4607 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]: Keyspace notifications: expired events (background expire) (203 ms) [ok]: Keyspace notifications: evicted events (1 ms) [ok]: Keyspace notifications: test CONFIG GET/SET of event flags (1 ms) [ok]: Keyspace notifications: new key test (1 ms) [ok]: publish to self inside multi (1 ms) [ok]: publish to self inside script (0 ms) [ok]: unsubscribe inside multi, and publish to self (1 ms) [ok]: maxmemory - policy volatile-lfu should only remove volatile keys. (363 ms) [18/96 done]: unit/latency-monitor (8 seconds) Testing unit/querybuf [19/96 done]: unit/pubsub (2 seconds) Testing unit/quit [ok]: Operations in no-touch mode TOUCH from script alters the last access time of a key (1101 ms) [ok]: TOUCH returns the number of existing keys specified (0 ms) [ok]: command stats for GEOADD (1 ms) [ok]: errors stats for GEOADD (1 ms) [ok]: command stats for EXPIRE (1 ms) [ok]: command stats for BRPOP (1 ms) [ok]: command stats for MULTI (2 ms) [ok]: command stats for scripts (1 ms) [ok]: COMMAND COUNT get total number of Redis commands (0 ms) [ok]: COMMAND GETKEYS GET (0 ms) [ok]: COMMAND GETKEYSANDFLAGS (1 ms) [ok]: COMMAND GETKEYSANDFLAGS invalid args (0 ms) [ok]: COMMAND GETKEYS MEMORY USAGE (0 ms) [ok]: COMMAND GETKEYS XGROUP (0 ms) [ok]: COMMAND GETKEYS EVAL with keys (0 ms) [ok]: COMMAND GETKEYS EVAL without keys (0 ms) [ok]: COMMAND GETKEYS LCS (0 ms) [ok]: COMMAND GETKEYS MORE THAN 256 KEYS (2 ms) [ok]: COMMAND LIST syntax error (1 ms) [ok]: COMMAND LIST WITHOUT FILTERBY (2 ms) [ok]: COMMAND LIST FILTERBY ACLCAT against non existing category (1 ms) [ok]: COMMAND LIST FILTERBY ACLCAT - list all commands/subcommands (0 ms) [ok]: COMMAND LIST FILTERBY PATTERN - list all commands/subcommands (1 ms) [ok]: COMMAND LIST FILTERBY MODULE against non existing module (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 (1 ms) [ok]: BLPOP command will not be marked with movablekeys (0 ms) [ok]: PING command will not be marked with movablekeys (0 ms) [ok]: MEMORY command will not be marked with movablekeys (1 ms) [ok]: MEMORY|USAGE command will not be marked with movablekeys (0 ms) [ok]: RENAME command will not be marked with movablekeys (1 ms) [ok]: GEORADIUS_RO command will not be marked with movablekeys (0 ms) [ok]: ZUNIONSTORE command is marked with movablekeys (1 ms) [ok]: XREAD command is marked with movablekeys (0 ms) [ok]: EVAL command is marked with movablekeys (0 ms) [ok]: SORT command is marked with movablekeys (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) [ok]: IO threads client number (216 ms) [ok]: KEYSIZES - Test hyperloglog (9158 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) [20/96 done]: unit/introspection-2 (10 seconds) Testing unit/replybufsize [ok]: All time-to-live(TTL) in commands are propagated as absolute timestamp in milliseconds in AOF (2017 ms) [21/96 done]: unit/quit (0 seconds) Testing unit/scan [ok]: KEYSIZES - Test List (105 ms) [ok]: Clients are evenly distributed among io threads (216 ms) [22/96 done]: unit/introspection (9 seconds) Testing unit/scripting [ok]: KEYSIZES - Test SET (105 ms) [ok]: maxmemory - policy volatile-random should only remove volatile keys. (392 ms) [ok]: All TTL in commands are propagated as absolute timestamp in replication stream (64 ms) [ok]: EVAL - Does Lua interpreter replies to our requests? (1 ms) [ok]: EVAL - Return _G (0 ms) [ok]: EVAL - Return table with a metatable that raise error (0 ms) [ok]: EVAL - Return table with a metatable that call redis (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 (0 ms) [ok]: EVAL - Lua number -> Redis integer conversion (0 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (1 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 (0 ms) [ok]: EVAL - Redis nil bulk reply -> Lua type conversion (0 ms) [ok]: EVAL - Is the Lua client using the currently selected DB? (1 ms) [ok]: EVAL - SELECT inside Lua should not affect the caller (0 ms) [ok]: EVAL - Scripts do not block on blpop command (0 ms) [ok]: EVAL - Scripts do not block on brpop command (0 ms) [ok]: EVAL - Scripts do not block on brpoplpush command (0 ms) [ok]: EVAL - Scripts do not block on blmove command (1 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (0 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (0 ms) [ok]: EVAL - Scripts do not block on wait (1 ms) [ok]: EVAL - Scripts do not block on waitaof (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (0 ms) [ok]: EVAL - Scripts do not block on XREADGROUP with BLOCK option (1 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option -- non empty stream (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 (1 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) [ok]: {standalone} SCAN basic (82 ms) [ok]: KEYSIZES - Test ZSET (107 ms) [ok]: First server should have role slave after REPLICAOF (0 ms) [ok]: For all replicated TTL-related commands, absolute expire times are identical on primary and replica (5 ms) [ok]: {standalone} SCAN COUNT (75 ms) [ok]: KEYSIZES - Test STRING (104 ms) [ok]: {standalone} SCAN MATCH (47 ms) [23/96 done]: unit/pubsubshard (1 seconds) Testing unit/shutdown [ok]: {standalone} SCAN TYPE (70 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (213 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (1 ms) [ok]: EVAL - Numerical sanity check from bitop (1 ms) [ok]: EVAL - Verify minimal bitop functionality (0 ms) [ok]: EVAL - Able to parse trailing comments (0 ms) [ok]: EVAL_RO - Successful case (0 ms) [ok]: EVAL_RO - Cannot run write commands (1 ms) [ok]: redis.sha1hex() implementation (0 ms) [ok]: {standalone} SCAN unknown type (48 ms) [ok]: {standalone} SCAN with expired keys (55 ms) [ok]: expired key which is created in writeable replicas should be deleted by active expiry (300 ms) [ok]: maxmemory - policy volatile-ttl should only remove volatile keys. (422 ms) [ok]: {standalone} SCAN with expired keys with TYPE filter (54 ms) [ok]: {standalone} SSCAN with encoding intset (2 ms) [ok]: {standalone} SSCAN with encoding listpack (1 ms) [ok]: {standalone} SSCAN with encoding hashtable (3 ms) [ok]: {standalone} HSCAN with encoding listpack (1 ms) [ok]: {standalone} HSCAN with large value listpack (1 ms) [ok]: Temp rdb will be deleted if we use bg_unlink when shutdown (132 ms) [ok]: {standalone} HSCAN with encoding hashtable (71 ms) [ok]: {standalone} HSCAN with large value hashtable (0 ms) [ok]: SET command will remove expire (0 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed (1 ms) [ok]: {standalone} ZSCAN with encoding listpack (3 ms) [ok]: verify reply buffer limits (651 ms) [ok]: {standalone} ZSCAN with encoding skiplist (66 ms) [ok]: {standalone} SCAN guarantees check under write load (14 ms) [ok]: {standalone} SSCAN with integer encoded object (issue #1345) (0 ms) [ok]: {standalone} SSCAN with PATTERN (0 ms) [ok]: {standalone} HSCAN with PATTERN (1 ms) [ok]: {standalone} HSCAN with NOVALUES (0 ms) [ok]: {standalone} ZSCAN with PATTERN (0 ms) [ok]: SHUTDOWN ABORT can cancel SIGTERM (12 ms) [24/96 done]: unit/replybufsize (1 seconds) Testing unit/slowlog [ok]: {standalone} ZSCAN scores: regression test for issue #2175 (26 ms) [ok]: Temp rdb will be deleted in signal handle (93 ms) [ok]: SLOWLOG - check that it starts with an empty log (0 ms) [ok]: EXPIRES after AOF reload (without rewrite) (2107 ms) [ok]: KEYSIZES - Test HASH (listpackex) (610 ms) [ok]: RDB save will be failed in shutdown (2 ms) [ok]: Regression for a crash with cron release of client arguments (3002 ms) [ok]: KEYSIZES - Test Hash field lazy expiration (listpackex) (85 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 (1 ms) [ok]: SLOWLOG - only logs commands taking more time than specified (200 ms) [ok]: SLOWLOG - zero max length is correctly handled (4 ms) [ok]: SLOWLOG - max entries is correctly handled (4 ms) [ok]: SLOWLOG - GET optional argument to limit output len works (1 ms) [ok]: SLOWLOG - RESET subcommand works (0 ms) [25/96 done]: unit/protocol (4 seconds) Testing unit/sort [ok]: Listpack: SORT BY key (0 ms) [ok]: Listpack: SORT BY key with limit (0 ms) [ok]: Listpack: SORT BY hash field (1 ms) [ok]: SHUTDOWN SIGTERM will abort if there's an initial AOFRW - default (98 ms) [ok]: SLOWLOG - logged entry sanity check (200 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 (1 ms) [ok]: Quicklist: SORT BY key (8 ms) [ok]: Quicklist: SORT BY key with limit (0 ms) [26/96 done]: unit/shutdown (1 seconds) Testing unit/tls [ok]: Quicklist: SORT BY hash field (9 ms) [ok]: Measures elapsed time os.clock() (1001 ms) [ok]: Prohibit dangerous lua methods in sandbox (1 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (2 ms) [ok]: Globals protection reading an undeclared global variable (0 ms) [ok]: Globals protection setting an undeclared global* (1 ms) [ok]: lua bit.tohex bug (0 ms) [ok]: Test an example script DECR_IF_GT (1 ms) [ok]: SLOWLOG - EXEC is not logged, just executed commands (200 ms) [ok]: Client output buffer soft limit is enforced if time is overreached (3663 ms) [27/96 done]: unit/tls (1 seconds) Testing unit/tracking [ok]: KEYSIZES - Test HASH (hashtable) (609 ms) [ok]: SLOWLOG - can clean older entries (200 ms) [ok]: Clients are able to enable tracking and redirect it (1 ms) [ok]: The other connection is able to get invalidations (0 ms) [ok]: The client is now able to disable tracking (0 ms) [ok]: Clients can enable the BCAST mode with the empty prefix (0 ms) [ok]: The connection gets invalidation messages about all the keys (1 ms) [ok]: Clients can enable the BCAST mode with prefixes (0 ms) [ok]: Adding prefixes to BCAST mode works (1 ms) [ok]: Tracking NOLOOP mode in standard mode works (0 ms) [ok]: Tracking NOLOOP mode in BCAST mode works (1 ms) [ok]: KEYSIZES - Test Hash field lazy expiration (hashtable) (85 ms) [ok]: KEYSIZES - Test STRING BITS (2 ms) [ok]: KEYSIZES - Test RESTORE (1 ms) [ok]: KEYSIZES - Test RENAME (0 ms) [ok]: KEYSIZES - Test MOVE (0 ms) [ok]: KEYSIZES - Test SWAPDB (1 ms) [ok]: KEYSIZES - DEBUG RELOAD reset keysizes (3 ms) [ok]: PIPELINING stresser (also a regression for the old epoll bug) (903 ms) [ok]: APPEND basics (1 ms) [ok]: APPEND basics, integer encoded values (0 ms) [ok]: KEYSIZES - Test RDB (204 ms) [ok]: APPEND fuzzing (178 ms) [ok]: FLUSHDB (58 ms) [ok]: Perform a final SAVE to leave a clean DB on disk (2 ms) [ok]: RESET clears client state (1 ms) [ok]: RESET clears MONITOR state (0 ms) [ok]: RESET clears and discards MULTI state (1 ms) [ok]: RESET clears Pub/Sub state (0 ms) [ok]: RESET clears authenticated state (1 ms) [ok]: Subcommand syntax error crash (issue #10070) (0 ms) [ok]: EVAL does not leak in the Lua stack (637 ms) [ok]: Call Redis command with many args from Lua (issue #1764) (1 ms) [ok]: Number conversion precision test (issue #1118) (0 ms) [ok]: String containing number precision test (regression of issue #1118) (0 ms) [ok]: Verify negative arg count is error instead of crash (issue #1842) (0 ms) [ok]: Scripts can handle commands with incorrect arity (0 ms) [ok]: Correct handling of reused argv (issue #1939) (1 ms) [ok]: Functions in the Redis namespace are able to report errors (0 ms) [ok]: CLUSTER RESET can not be invoke from within a script (0 ms) [ok]: Script with RESP3 map (2 ms) [ok]: SLOWLOG - can be disabled (402 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 (2 ms) [ok]: KEYSIZES - Test i'th bin counts keysizes between (2^i) and (2^(i+1)-1) as expected (replica) (103 ms) [ok]: Script return recursive object (101 ms) [28/96 done]: unit/slowlog (1 seconds) Testing unit/violations [ok]: Script check unpack with massive arguments (40 ms) [ok]: Script read key with expiration set (1 ms) [ok]: Script del key with expiration set (0 ms) [ok]: Script ACL check (1 ms) [ok]: Binary code loading failed (0 ms) [ok]: Try trick global protection 1 (0 ms) [ok]: Try trick global protection 2 (1 ms) [ok]: Try trick global protection 3 (0 ms) [ok]: Try trick global protection 4 (0 ms) [ok]: Try trick readonly table on redis table (0 ms) [ok]: Try trick readonly table on json table (1 ms) [ok]: Try trick readonly table on cmsgpack table (0 ms) [ok]: Try trick readonly table on bit table (0 ms) [ok]: Test loadfile are not available (0 ms) [ok]: Test dofile are not available (1 ms) [ok]: Test print are not available (0 ms) [ok]: SORT adds integer field to list (0 ms) [29/96 done]: unit/violations (0 seconds) Testing unit/wait [ok]: KEYSIZES - Histogram of values of Bytes, Kilo and Mega (replica) (374 ms) [ok]: query buffer resized correctly (2653 ms) [ok]: Don't rehash if redis has child process (332 ms) [ok]: query buffer resized correctly when not idle (69 ms) [ok]: SET - use KEEPTTL option, TTL should not be removed after loadaof (2004 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]: client evicted due to client tracking prefixes (10282 ms) [ok]: client evicted due to output buf (13 ms) [ok]: Tracking gets notification of expired keys (1001 ms) [ok]: GETEX propagate as to replica as PERSIST, DEL, or nothing (77 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]: EXPIRE with LT and XX option on a key without ttl (0 ms) [ok]: EXPIRE with conflicting options: LT GT (1 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 (1 ms) [ok]: EXPIRE with negative expiry on a non-valitale key (0 ms) [ok]: EXPIRE with non-existed key (0 ms) [ok]: client no-evict on (27 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (402 ms) [ok]: Setup slave (101 ms) [ok]: WAIT out of range timeout (milliseconds) (0 ms) [ok]: WAIT should acknowledge 1 additional copy of the data (0 ms) [ok]: Process title set as expected (1 ms) [ok]: client no-evict off (30 ms) [ok]: Tracking gets notification of lazy expired keys (101 ms) [ok]: HELLO 3 reply is correct (0 ms) [ok]: HELLO without protover (0 ms) [ok]: RESP3 based basic invalidation (0 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 (1 ms) [ok]: Invalid keys should not be tracked for scripts in NOLOOP mode (0 ms) [ok]: Tracking only occurs for scripts when a command calls a read-only command (1 ms) [ok]: Redis should not propagate the read command on lazy expire (96 ms) [ok]: RESP3 Client gets tracking-redir-broken push message after cached key changed when rediretion client is terminated (1 ms) [ok]: Different clients can redirect to the same connection (1 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (84 ms) [ok]: Different clients using different protocols can track the same key (0 ms) [ok]: No invalidation message when using OPTIN option (1 ms) [ok]: Invalidation message sent when using OPTIN option with CLIENT CACHING yes (0 ms) [ok]: Invalidation message sent when using OPTOUT option (1 ms) [ok]: No invalidation message when using OPTOUT option with CLIENT CACHING no (0 ms) [ok]: Able to redirect to a RESP3 client (1 ms) [ok]: After switching from normal tracking to BCAST mode, no invalidation message is produced for pre-BCAST keys (1 ms) [ok]: BCAST with prefix collisions throw errors (0 ms) [ok]: hdel deliver invalidate message after response in the same connection (1 ms) [ok]: Timedout script does not cause a false dead client (85 ms) [ok]: SCAN: Lazy-expire should not be wrapped in MULTI/EXEC (101 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]: Tracking gets notification on tracking table key eviction (75 ms) [ok]: Invalidation message received for flushall (1 ms) [ok]: Invalidation message received for flushdb (2 ms) [ok]: Test ASYNC flushall (2 ms) [ok]: RANDOMKEY: Lazy-expire should not be wrapped in MULTI/EXEC (101 ms) [ok]: flushdb tracking invalidation message is not interleaved with transaction response (1 ms) [ok]: Timedout script link is still usable after Lua returns (141 ms) [ok]: avoid client eviction when client is freed by output buffer limit (89 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 (3 ms) [ok]: CLIENT GETREDIR provides correct client id (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking off (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking on (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking on with options (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking optin (0 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking optout (1 ms) [ok]: CLIENT TRACKINGINFO provides reasonable results when tracking bcast mode (0 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]: RESP2 based basic invalidation with client reply off (44 ms) [ok]: RESP3 based basic redirect invalidation with client reply off (1 ms) [ok]: RESP3 based basic tracking-redir-broken with client reply off (2 ms) [ok]: Coverage: Basic CLIENT CACHING (1 ms) [ok]: Coverage: Basic CLIENT REPLY (0 ms) [ok]: Coverage: Basic CLIENT TRACKINGINFO (0 ms) [ok]: Coverage: Basic CLIENT GETREDIR (0 ms) [ok]: Timedout scripts and unblocked command (398 ms) [ok]: Big Quicklist: SORT BY key (455 ms) [ok]: Big Quicklist: SORT BY key with limit (8 ms) [30/96 done]: unit/tracking (2 seconds) Testing unit/type/hash-field-expire [ok]: Timedout scripts that modified data can't be killed by SCRIPT KILL (202 ms) [ok]: SHUTDOWN NOSAVE can kill a timedout script anyway (4 ms) [ok]: HEXPIRE/HEXPIREAT/HPEXPIRE/HPEXPIREAT - Returns array if the key does not exist (0 ms) [ok]: HEXPIRE/HEXPIREAT/HPEXPIRE/HPEXPIREAT - Verify that the expire time does not overflow (0 ms) [ok]: HPEXPIRE(AT) - Test 'NX' flag (listpackex) (1 ms) [ok]: HPEXPIRE(AT) - Test 'XX' flag (listpackex) (0 ms) [ok]: HPEXPIRE(AT) - Test 'GT' flag (listpackex) (1 ms) [ok]: HPEXPIRE(AT) - Test 'LT' flag (listpackex) (1 ms) [ok]: HPEXPIREAT - field not exists or TTL is in the past (listpackex) (0 ms) [ok]: HPEXPIRE - wrong number of arguments (listpackex) (1 ms) [ok]: HPEXPIRE - parameter expire-time near limit of 2^46 (listpackex) (0 ms) [ok]: Lazy Expire - fields are lazy deleted (listpackex) (6 ms) [ok]: decrease maxmemory-clients causes client eviction (551 ms) [ok]: WAIT should not acknowledge 2 additional copies of the data (1074 ms) [ok]: Before the replica connects we issue two EVAL commands (0 ms) [ok]: Active Expire - deletes hash that all its fields got expired (listpackex) (213 ms) [ok]: HPEXPIRE - Flushall deletes all pending expired fields (listpackex) (1 ms) [ok]: HTTL/HPTTL - Returns array if the key does not exist (0 ms) [ok]: HTTL/HPTTL - Input validation gets failed on nonexists field or field without expire (listpackex) (1 ms) [ok]: HTTL/HPTTL - returns time to live in seconds/msillisec (listpackex) (0 ms) [ok]: HEXPIRETIME/HPEXPIRETIME - Returns array if the key does not exist (0 ms) [ok]: HEXPIRETIME - returns TTL in Unix timestamp (listpackex) (0 ms) [ok]: Big Quicklist: SORT BY hash field (448 ms) [ok]: Intset: SORT BY key (0 ms) [ok]: Intset: SORT BY key with limit (0 ms) [ok]: Intset: SORT BY hash field (0 ms) [ok]: 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]: evict clients only until below limit (103 ms) [ok]: Hash table: SORT BY key (9 ms) [ok]: Hash table: SORT BY key with limit (1 ms) [ok]: Hash table: SORT BY hash field (10 ms) [ok]: evict clients in right order (large to small) (121 ms) [ok]: client total memory grows during client no-evict (125 ms) [ok]: client total memory grows during maxmemory-clients disabled (125 ms) [31/96 done]: unit/client-eviction (15 seconds) Testing unit/type/hash [ok]: HTTL/HPTTL - Verify TTL progress until expiration (listpackex) (1013 ms) [ok]: HPEXPIRE - DEL hash with non expired fields (valgrind test) (listpackex) (0 ms) [ok]: HEXPIREAT - Set time in the past (listpackex) (1 ms) [ok]: HEXPIREAT - Set time and then get TTL (listpackex) (0 ms) [ok]: Lazy Expire - delete hash with expired fields (listpackex) (6 ms) [ok]: WAIT should not acknowledge 1 additional copy if slave is blocked (1113 ms) [ok]: Test HRANDFIELD deletes all expired fields (listpackex) (28 ms) [ok]: Lazy Expire - HLEN does count expired fields (listpackex) (11 ms) [ok]: Lazy Expire - HSCAN does not report expired fields (listpackex) (12 ms) [ok]: HSET/HLEN - Small hash creation (1 ms) [ok]: Is the small hash encoded with a listpack? (0 ms) [ok]: HRANDFIELD - listpack (7 ms) [ok]: HRANDFIELD - hashtable (6 ms) [ok]: HRANDFIELD with RESP3 (1 ms) [ok]: HRANDFIELD count of 0 is handled correctly (0 ms) [ok]: HRANDFIELD count overflow (1 ms) [ok]: HRANDFIELD with against non existing key (0 ms) [ok]: HRANDFIELD count of 0 is handled correctly - emptyarray (0 ms) [ok]: HRANDFIELD with against non existing key - emptyarray (0 ms) [ok]: HRANDFIELD with - hashtable (94 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 Redis commands from Lua (2 ms) [ok]: PRNG is seeded randomly for command replication (0 ms) [ok]: Using side effects is not a problem with command replication (1 ms) [ok]: Test HSCAN with mostly expired fields return empty result (listpackex) (145 ms) [ok]: Lazy Expire - verify various HASH commands handling expired fields (listpackex) (9 ms) [ok]: A field with TTL overridden with another value (TTL discarded) (listpackex) (6 ms) [ok]: Modify TTL of a field (listpackex) (16 ms) [ok]: Test return value of set operation (listpackex) (0 ms) [ok]: HRANDFIELD with - listpack (92 ms) [ok]: Test HGETALL not return expired fields (listpackex) (124 ms) [ok]: HSET/HLEN - Big hash creation (74 ms) [ok]: Is the big hash encoded with an hash table? (0 ms) [ok]: HGET against the small hash (1 ms) [ok]: HGET against the big hash (49 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 (0 ms) [ok]: HSETNX target key exists - big hash (0 ms) [ok]: HSET/HMSET wrong number of args (0 ms) [ok]: HMSET - small hash (0 ms) [ok]: AOF rewrite during write load: RDB preamble=yes (14726 ms) [ok]: Test RENAME hash with fields to be expired (listpackex) (107 ms) [ok]: HMSET - big hash (55 ms) [ok]: HMGET against non existing key and fields (0 ms) [ok]: Hash commands against wrong type (1 ms) [ok]: HMGET - small hash (1 ms) [ok]: HMGET - big hash (51 ms) [ok]: HKEYS - small hash (0 ms) [ok]: HKEYS - big hash (8 ms) [ok]: HVALS - small hash (0 ms) [ok]: HVALS - big hash (1 ms) [ok]: HGETALL - small hash (0 ms) [ok]: HGETALL - big hash (18 ms) [ok]: HGETALL against non-existing key (1 ms) [ok]: HDEL and return value (0 ms) [ok]: HDEL - more than a single value (1 ms) [ok]: HDEL - hash becomes empty before deleting all specified fields (0 ms) [ok]: HEXISTS (0 ms) [ok]: Is a ziplist encoded Hash promoted on big payload? (1 ms) [ok]: HINCRBY against non existing database key (0 ms) [ok]: HINCRBY HINCRBYFLOAT against non-integer increment value (0 ms) [ok]: HINCRBY against non existing hash key (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 (0 ms) [ok]: HINCRBYFLOAT against non existing database key (0 ms) [ok]: HINCRBYFLOAT against non existing hash key (0 ms) [ok]: HINCRBYFLOAT against hash key created by hincrby itself (0 ms) [ok]: HINCRBYFLOAT against hash key originally set with HSET (1 ms) [ok]: HINCRBYFLOAT over 32bit value (0 ms) [ok]: Test RENAME hash that had HFEs but not during the rename (listpackex) (102 ms) [ok]: HINCRBYFLOAT over 32bit value with over 32bit increment (0 ms) [ok]: HINCRBYFLOAT fails against hash value with spaces (left) (1 ms) [ok]: HINCRBYFLOAT fails against hash value with spaces (right) (0 ms) [ok]: HINCRBYFLOAT fails against hash value that contains a null-terminator in the middle (0 ms) [ok]: HSTRLEN against the small hash (0 ms) [ok]: query buffer resized correctly with fat argv (2923 ms) [ok]: HSTRLEN against the big hash (46 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]: HGETDEL input validation (1 ms) [ok]: HGETDEL basic test (1 ms) [ok]: HGETDEL test with non existing fields (0 ms) [ok]: HGETDEL basic test (0 ms) [ok]: HGETDEL test with non existing fields (0 ms) [ok]: MOVE to another DB hash with fields to be expired (listpackex) (104 ms) [ok]: HGETDEL propagated as HDEL command to replica (58 ms) [ok]: Hash ziplist regression test for large keys (0 ms) [ok]: Hash fuzzing #1 - 10 fields (19 ms) [ok]: Hash fuzzing #2 - 10 fields (13 ms) [ok]: Client executes small argv commands using reusable query buffer (0 ms) [32/96 done]: unit/querybuf (6 seconds) Testing unit/type/incr [ok]: Test COPY hash with fields to be expired (listpackex) (197 ms) [ok]: MIGRATE cached connections are released after some time (15002 ms) [ok]: INCR against non existing key (1 ms) [ok]: INCR against key created by incr itself (0 ms) [ok]: DECR against key created by incr (0 ms) [ok]: DECR against key is not exist and incr (0 ms) [ok]: INCR against key originally set with SET (0 ms) [ok]: INCR over 32bit value (0 ms) [ok]: INCRBY over 32bit value with over 32bit increment (0 ms) [ok]: INCR fails against key with spaces (left) (0 ms) [ok]: INCR fails against key with spaces (right) (0 ms) [ok]: INCR fails against key with spaces (both) (0 ms) [ok]: DECRBY negation overflow (1 ms) [ok]: INCR fails against a key holding a list (0 ms) [ok]: DECRBY over 32bit value with over 32bit increment, negative res (0 ms) [ok]: DECRBY against key is not exist (0 ms) [ok]: INCR uses shared objects in the 0-9999 range (1 ms) [ok]: INCR can modify objects in-place (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 (0 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]: Test COPY hash that had HFEs but not during the copy (listpackex) (101 ms) [33/96 done]: unit/type/incr (0 seconds) Testing unit/type/list-2 [ok]: Test SWAPDB hash-fields to be expired (listpackex) (102 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 (1 ms) [ok]: test RESP2/2 verbatim protocol parsing (0 ms) [ok]: test RESP2/2 true protocol parsing (0 ms) [ok]: test RESP2/2 false protocol parsing (0 ms) [ok]: test RESP2/3 big number protocol parsing (0 ms) [ok]: test RESP2/3 malformed big number protocol parsing (0 ms) [ok]: test RESP2/3 map protocol parsing (1 ms) [ok]: test RESP2/3 set protocol parsing (0 ms) [ok]: test RESP2/3 double protocol parsing (0 ms) [ok]: test RESP2/3 null protocol parsing (0 ms) [ok]: test RESP2/3 verbatim protocol parsing (1 ms) [ok]: test RESP2/3 true protocol parsing (0 ms) [ok]: test RESP2/3 false protocol parsing (0 ms) [ok]: test RESP3/2 big number protocol parsing (1 ms) [ok]: test RESP3/2 malformed big number protocol parsing (0 ms) [ok]: test RESP3/2 map protocol parsing (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 (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]: MIGRATE is able to migrate a key between two instances (224 ms) [ok]: WAIT implicitly blocks on client pause since ACKs aren't sent (1102 ms) [ok]: TIME command using cached time (10 ms) [ok]: WAIT replica multiple clients unblock - reuse last result (27 ms) [ok]: Test SWAPDB hash that had HFEs but not during the swap (listpackex) (92 ms) [ok]: HMGET - returns empty entries if fields or hash expired (listpackex) (6 ms) [ok]: HPERSIST - Returns array if the key does not exist (listpackex) (0 ms) [ok]: HPERSIST - input validation (listpackex) (1 ms) [ok]: HPERSIST - verify fields with TTL are persisted (listpackex) (26 ms) [ok]: HTTL/HPERSIST - Test expiry commands with non-volatile hash (listpackex) (0 ms) [ok]: DUMP / RESTORE are able to serialize / unserialize a hash (1 ms) [ok]: Script block the time in some expiration related commands (81 ms) [ok]: RESTORE expired keys with expiration time (10 ms) [ok]: RESTORE hash that had in the past HFEs but not during the dump (72 ms) [ok]: DUMP / RESTORE are able to serialize / unserialize a hash with TTL 0 for all fields (1 ms) [ok]: Big Hash table: SORT BY key (441 ms) [ok]: HINCRBY - discards pending expired field and reset its value (15 ms) [ok]: HINCRBY - preserve expiration time of the field (0 ms) [ok]: Big Hash table: SORT BY key with limit (11 ms) [ok]: HINCRBYFLOAT - discards pending expired field and reset its value (16 ms) [ok]: HINCRBYFLOAT - preserve expiration time of the field (0 ms) [ok]: HGETDEL - delete field with ttl (listpackex) (31 ms) [ok]: HGETEX - input validation (listpackex) (1 ms) [ok]: HGETEX - input validation (expire time) (listpackex) (1 ms) [ok]: HGETEX - get without setting ttl (listpackex) (1 ms) [ok]: HGETEX - get and set the ttl (listpackex) (0 ms) [ok]: HGETEX - Test 'EX' flag (listpackex) (0 ms) [ok]: HGETEX - Test 'EXAT' flag (listpackex) (0 ms) [ok]: HGETEX - Test 'PX' flag (listpackex) (0 ms) [ok]: HGETEX - Test 'PXAT' flag (listpackex) (1 ms) [ok]: HGETEX - Test 'PERSIST' flag (listpackex) (1 ms) [ok]: HGETEX - Test setting ttl in the past will delete the key (listpackex) (0 ms) [ok]: HGETEX - Test active expiry (listpackex) (1 ms) [ok]: HGETEX - A field with TTL overridden with another value (TTL discarded) (listpackex) (0 ms) [ok]: HGETEX - Test with lazy expiry (listpackex) (6 ms) [ok]: HSETEX - input validation (listpackex) (4 ms) [ok]: HSETEX - Basic test (listpackex) (0 ms) [ok]: HSETEX - Test FXX flag (listpackex) (2 ms) [ok]: MIGRATE is able to copy a key between two instances (224 ms) [ok]: HSETEX - Test FXX flag with lazy expire (listpackex) (15 ms) [ok]: HSETEX - Test FNX flag (listpackex) (1 ms) [ok]: HSETEX - Test 'EX' flag (listpackex) (1 ms) [ok]: HSETEX - Test 'EXAT' flag (listpackex) (0 ms) [ok]: HSETEX - Test 'PX' flag (listpackex) (0 ms) [ok]: HSETEX - Test 'PXAT' flag (listpackex) (1 ms) [ok]: HSETEX - Test 'KEEPTTL' flag (listpackex) (1 ms) [ok]: HSETEX - Test no expiry flag discards TTL (listpackex) (0 ms) [ok]: {standalone} SCAN regression test for issue #4906 (5571 ms) [ok]: {standalone} SCAN MATCH pattern implies cluster slot (17 ms) [ok]: expire scan should skip dictionaries with lot's of empty buckets (1215 ms) [ok]: HSETEX - Test with active expiry (101 ms) [ok]: HSETEX - Set time in the past (listpackex) (1 ms) [ok]: HEXPIRE/HEXPIREAT/HPEXPIRE/HPEXPIREAT - Returns array if the key does not exist (0 ms) [ok]: HEXPIRE/HEXPIREAT/HPEXPIRE/HPEXPIREAT - Verify that the expire time does not overflow (1 ms) [ok]: HPEXPIRE(AT) - Test 'NX' flag (hashtable) (0 ms) [ok]: HPEXPIRE(AT) - Test 'XX' flag (hashtable) (1 ms) [ok]: HPEXPIRE(AT) - Test 'GT' flag (hashtable) (1 ms) [ok]: HPEXPIRE(AT) - Test 'LT' flag (hashtable) (0 ms) [ok]: HPEXPIREAT - field not exists or TTL is in the past (hashtable) (1 ms) [ok]: HPEXPIRE - wrong number of arguments (hashtable) (0 ms) [ok]: HPEXPIRE - parameter expire-time near limit of 2^46 (hashtable) (0 ms) [ok]: Lazy Expire - fields are lazy deleted (hashtable) (6 ms) [ok]: Test script flush will not leak memory - script:0 (95 ms) [ok]: WAITAOF local copy before fsync (98 ms) [34/96 done]: unit/expire (16 seconds) Testing unit/type/list-3 [ok]: MIGRATE will not overwrite existing keys, unless REPLACE is used (225 ms) [ok]: Explicit regression for a list bug (1 ms) [ok]: Hash fuzzing #1 - 512 fields (971 ms) [ok]: Client output buffer soft limit is not enforced too early and is enforced when no traffic (5032 ms) [ok]: Big Hash table: SORT BY hash field (441 ms) [ok]: SORT GET # (0 ms) [ok]: SORT GET (1 ms) [ok]: SORT_RO GET (0 ms) [ok]: SORT GET (key and hash) with sanity check (2 ms) [ok]: SORT BY key STORE (1 ms) [ok]: SORT BY hash field STORE (0 ms) [ok]: SORT extracts STORE correctly (1 ms) [ok]: SORT_RO get keys (0 ms) [ok]: SORT extracts multiple STORE correctly (0 ms) [ok]: SORT DESC (0 ms) [ok]: SORT ALPHA against integer encoded strings (0 ms) [ok]: SORT sorted set (0 ms) [ok]: SORT sorted set BY nosort should retain ordering (1 ms) [ok]: SORT sorted set BY nosort + LIMIT (1 ms) [ok]: SORT sorted set BY nosort works as expected from scripts (0 ms) [ok]: SORT sorted set: +inf and -inf handling (1 ms) [ok]: WAITAOF local copy everysec (201 ms) [ok]: WAITAOF local copy with appendfsync always (1 ms) [ok]: SORT regression for issue #19, sorting floats (10 ms) [ok]: SORT with STORE returns zero if result is empty (github issue 224) (0 ms) [ok]: SORT with STORE does not create empty lists (github issue 224) (0 ms) [ok]: SORT with STORE removes key if result is empty (github issue 227) (1 ms) [ok]: WAITAOF local wait and then stop aof (2 ms) [ok]: SORT with BY and STORE should still order output (0 ms) [ok]: WAITAOF local on server with aof disabled (0 ms) [ok]: SORT will complain with numerical sorting and bad doubles (1) (0 ms) [ok]: SORT will complain with numerical sorting and bad doubles (2) (1 ms) [ok]: SORT BY sub-sorts lexicographically if score is the same (0 ms) [ok]: SORT GET with pattern ending with just -> does not get hash field (1 ms) [ok]: SORT by nosort retains native order for lists (0 ms) [ok]: SORT by nosort plus store retains native order for lists (0 ms) [ok]: SORT by nosort with limit returns based on original list order (0 ms) [ok]: SORT_RO - Successful case (0 ms) [ok]: SORT_RO - Cannot run with STORE arg (0 ms) [ok]: Active Expire - deletes hash that all its fields got expired (hashtable) (302 ms) [ok]: HPEXPIRE - Flushall deletes all pending expired fields (hashtable) (0 ms) [ok]: HTTL/HPTTL - Returns array if the key does not exist (0 ms) [ok]: HTTL/HPTTL - Input validation gets failed on nonexists field or field without expire (hashtable) (0 ms) [ok]: HTTL/HPTTL - returns time to live in seconds/msillisec (hashtable) (0 ms) [ok]: HEXPIRETIME/HPEXPIRETIME - Returns array if the key does not exist (0 ms) [ok]: SORT speed, 100 element list BY key, 100 times (17 ms) [ok]: HEXPIRETIME - returns TTL in Unix timestamp (hashtable) (0 ms) [ok]: Redis can trigger resizing (1817 ms) [ok]: MIGRATE propagates TTL correctly (216 ms) [ok]: Regression for quicklist #3343 bug (136 ms) [ok]: SORT speed, 100 element list BY hash field, 100 times (20 ms) [ok]: No response for single command if client output buffer hard limit is enforced (114 ms) [ok]: SORT speed, 100 element list directly, 100 times (14 ms) [ok]: SORT speed, 100 element list BY , 100 times (12 ms) [ok]: SETRANGE with huge offset (2 ms) [ok]: Check compression with recompress (47 ms) [ok]: SORT STORE quicklist with the right options (59 ms) [ok]: WAITAOF local if AOFRW was postponed (300 ms) [ok]: Crash due to wrongly recompress after lrem (230 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element before it (47 ms) [ok]: GEOSEARCH fuzzy test - byradius (16563 ms) [ok]: WAITAOF on demoted master gets unblocked with an error (1 ms) [ok]: LINSERT correctly recompress full quicklistNode after inserting a element after it (46 ms) [ok]: Hash fuzzing #2 - 512 fields (659 ms) [ok]: WAITAOF replica copy before fsync (82 ms) [ok]: Redis can rewind and trigger smaller slot resizing (688 ms) [ok]: Redis can resize empty dict (15 ms) [ok]: HTTL/HPTTL - Verify TTL progress until expiration (hashtable) (1012 ms) [ok]: HPEXPIRE - DEL hash with non expired fields (valgrind test) (hashtable) (1 ms) [ok]: HEXPIREAT - Set time in the past (hashtable) (0 ms) [ok]: HEXPIREAT - Set time and then get TTL (hashtable) (1 ms) [ok]: Lazy Expire - delete hash with expired fields (hashtable) (5 ms) [ok]: Test HRANDFIELD deletes all expired fields (hashtable) (28 ms) [ok]: Cross DB command is incompatible with cluster mode (3 ms) [ok]: Function no-cluster flag is incompatible with cluster mode (1 ms) [ok]: Script no-cluster flag is incompatible with cluster mode (1 ms) [ok]: SORT command incompatible operations with cluster mode (3 ms) [ok]: Normal cross slot commands are incompatible with cluster mode (0 ms) [ok]: Transaction is incompatible with cluster mode (2 ms) [ok]: Lazy Expire - HLEN does count expired fields (hashtable) (12 ms) [ok]: Lua scripts are incompatible with cluster mode (2 ms) [ok]: Shard subscribe commands are incompatible with cluster mode (1 ms) [ok]: No response for multi commands in pipeline if client output buffer limit is enforced (1047 ms) [ok]: Lazy Expire - HSCAN does not report expired fields (hashtable) (11 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 (14 ms) [ok]: Obuf limit, KEYS stopped mid-run (62 ms) [35/96 done]: unit/obuf-limits (14 seconds) Testing unit/type/list [ok]: cluster-compatibility-sample-ratio configuration can work (150 ms) [ok]: Test HSCAN with mostly expired fields return empty result (hashtable) (143 ms) [ok]: Lazy Expire - verify various HASH commands handling expired fields (hashtable) (9 ms) [ok]: A field with TTL overridden with another value (TTL discarded) (hashtable) (6 ms) [ok]: Modify TTL of a field (hashtable) (16 ms) [ok]: Test return value of set operation (hashtable) (0 ms) [36/96 done]: unit/other (13 seconds) Testing unit/type/set [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]: Test HGETALL not return expired fields (hashtable) (91 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - listpack (1 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - hashtable (7 ms) [ok]: SADD, SCARD, SISMEMBER, SMISMEMBER, SMEMBERS basics - intset (0 ms) [ok]: SMISMEMBER SMEMBERS SCARD against non set (1 ms) [ok]: SMISMEMBER SMEMBERS SCARD against non existing key (0 ms) [ok]: SMISMEMBER requires one or more members (0 ms) [ok]: SADD against non set (1 ms) [ok]: SADD a non-integer against a small intset (0 ms) [ok]: Test RENAME hash with fields to be expired (hashtable) (56 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 (6 ms) [ok]: Stress test the hash ziplist -> hashtable encoding conversion (866 ms) [ok]: SADD overflows the maximum allowed integers in an intset - single (24 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single (6 ms) [ok]: SADD overflows the maximum allowed integers in an intset - multiple (47 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - multiple (0 ms) [ok]: Test RENAME hash that had HFEs but not during the rename (hashtable) (91 ms) [ok]: Hash ziplist of various encodings (90 ms) [ok]: Hash ziplist of various encodings - sanitize dump (2 ms) [ok]: HINCRBYFLOAT does not allow NaN or Infinity (0 ms) [ok]: SADD overflows the maximum allowed integers in an intset - single_multiple (46 ms) [ok]: SADD overflows the maximum allowed elements in a listpack - single_multiple (1 ms) [ok]: Variadic SADD (0 ms) [ok]: MOVE to another DB hash with fields to be expired (hashtable) (102 ms) [37/96 done]: unit/type/hash (3 seconds) Testing unit/type/stream-cgroups [ok]: Set encoding after DEBUG RELOAD (83 ms) [ok]: SREM basics - $type (1 ms) [ok]: SREM basics - $type (7 ms) [ok]: SREM basics - intset (0 ms) [ok]: SREM with multiple arguments (0 ms) [ok]: SREM variadic version with more args needed to destroy the key (0 ms) [ok]: SINTERCARD with illegal arguments (1 ms) [ok]: SINTERCARD against non-set should throw error (0 ms) [ok]: SINTERCARD against non-existing key (1 ms) [ok]: Generated sets must be encoded correctly - regular (0 ms) [ok]: SINTER with two sets - regular (0 ms) [ok]: SINTERCARD with two sets - regular (1 ms) [ok]: SINTERSTORE with two sets - regular (0 ms) [ok]: plain node check compression with insert and pop (357 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 (1 ms) [ok]: SUNION with non existing keys - regular (5 ms) [ok]: SDIFF with two sets - regular (0 ms) [ok]: SDIFF with three sets - regular (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 (0 ms) [ok]: SINTERCARD with two sets - intset (1 ms) [ok]: SINTERSTORE with two sets - intset (0 ms) [ok]: SINTERSTORE with two sets, after a DEBUG RELOAD - intset (3 ms) [ok]: SUNION with two sets - intset (5 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 (0 ms) [ok]: XREADGROUP will return only new elements (0 ms) [ok]: SUNIONSTORE with two sets - intset (6 ms) [ok]: XREADGROUP can read the history of the elements we own (1 ms) [ok]: SINTER against three sets - intset (0 ms) [ok]: XPENDING is able to return pending items (0 ms) [ok]: XPENDING can return single consumer items (0 ms) [ok]: SINTERCARD against three sets - intset (0 ms) [ok]: SINTERSTORE with three sets - intset (0 ms) [ok]: XPENDING only group (0 ms) [ok]: SUNION with non existing keys - intset (6 ms) [ok]: SDIFF with two sets - intset (0 ms) [ok]: SDIFF with three sets - intset (0 ms) [ok]: SDIFFSTORE with three sets - intset (0 ms) [ok]: SINTER/SUNION/SDIFF with three same sets - intset (5 ms) [ok]: SINTERSTORE with two listpack sets where result is intset (0 ms) [ok]: XPENDING with IDLE (21 ms) [ok]: XPENDING with exclusive range intervals works as expected (0 ms) [ok]: XACK is able to remove items from the consumer/group PEL (1 ms) [ok]: XACK can't remove the same item multiple times (0 ms) [ok]: XACK is able to accept multiple arguments (0 ms) [ok]: XACK should fail if got at least one invalid ID (1 ms) [ok]: PEL NACK reassignment after XGROUP SETID event (1 ms) [ok]: XREADGROUP will not report data on empty history. Bug #5577 (0 ms) [ok]: SINTERSTORE with two hashtable sets where result is intset (14 ms) [ok]: XREADGROUP history reporting of deleted entries. Bug #5570 (1 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]: 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]: plain node check compression combined with trim (135 ms) [ok]: Test COPY hash with fields to be expired (hashtable) (207 ms) [ok]: Blocking XREADGROUP for stream that ran dry (issue #5299) (28 ms) [ok]: Blocking XREADGROUP will ignore BLOCK if ID is not > (3 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on list (2 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - avoid endless loop (1 ms) [ok]: {cluster} SCAN basic (53 ms) [ok]: {cluster} SCAN COUNT (60 ms) [ok]: Test COPY hash that had HFEs but not during the copy (hashtable) (102 ms) [ok]: {cluster} SCAN MATCH (48 ms) [ok]: plain node check compression with lset (180 ms) [ok]: Test SWAPDB hash-fields to be expired (hashtable) (101 ms) [ok]: {cluster} SCAN TYPE (73 ms) [ok]: {cluster} SCAN unknown type (50 ms) [ok]: Test SWAPDB hash that had HFEs but not during the swap (hashtable) (102 ms) [ok]: HMGET - returns empty entries if fields or hash expired (hashtable) (5 ms) [ok]: HPERSIST - Returns array if the key does not exist (hashtable) (0 ms) [ok]: HPERSIST - input validation (hashtable) (0 ms) [ok]: {cluster} SCAN with expired keys (56 ms) [ok]: Test LPUSH and LPOP on plain nodes (2 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 (0 ms) [ok]: Test LPOS on plain nodes (1 ms) [ok]: Test LMOVE on plain nodes (1 ms) [ok]: HPERSIST - verify fields with TTL are persisted (hashtable) (26 ms) [ok]: HTTL/HPERSIST - Test expiry commands with non-volatile hash (hashtable) (0 ms) [ok]: DUMP / RESTORE are able to serialize / unserialize a hash (1 ms) [ok]: sort by in cluster mode (0 ms) [ok]: sort get 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]: sort_ro get # in cluster mode (0 ms) [ok]: {cluster} SCAN with expired keys with TYPE filter (59 ms) [ok]: {cluster} SSCAN with encoding intset (1 ms) [ok]: {cluster} SSCAN with encoding listpack (1 ms) [ok]: {cluster} SSCAN with encoding hashtable (3 ms) [ok]: {cluster} HSCAN with encoding listpack (2 ms) [ok]: {cluster} HSCAN with large value listpack (0 ms) [ok]: RESTORE hash that had in the past HFEs but not during the dump (61 ms) [ok]: DUMP / RESTORE are able to serialize / unserialize a hash with TTL 0 for all fields (0 ms) [ok]: HINCRBY - discards pending expired field and reset its value (16 ms) [ok]: HINCRBY - preserve expiration time of the field (0 ms) [ok]: Test LSET with packed / plain combinations (90 ms) [ok]: Test LSET with packed is split in the middle (2 ms) [ok]: HINCRBYFLOAT - discards pending expired field and reset its value (16 ms) [ok]: HINCRBYFLOAT - preserve expiration time of the field (0 ms) [ok]: {cluster} HSCAN with encoding hashtable (72 ms) [ok]: {cluster} HSCAN with large value hashtable (1 ms) [ok]: {cluster} ZSCAN with encoding listpack (1 ms) [ok]: HGETDEL - delete field with ttl (hashtable) (31 ms) [ok]: HGETEX - input validation (hashtable) (1 ms) [ok]: HGETEX - input validation (expire time) (hashtable) (1 ms) [ok]: HGETEX - get without setting ttl (hashtable) (1 ms) [38/96 done]: unit/sort (8 seconds) Testing unit/type/stream [ok]: HGETEX - get and set the ttl (hashtable) (0 ms) [ok]: HGETEX - Test 'EX' flag (hashtable) (0 ms) [ok]: HGETEX - Test 'EXAT' flag (hashtable) (1 ms) [ok]: HGETEX - Test 'PX' flag (hashtable) (1 ms) [ok]: HGETEX - Test 'PXAT' flag (hashtable) (0 ms) [ok]: HGETEX - Test 'PERSIST' flag (hashtable) (2 ms) [ok]: HGETEX - Test setting ttl in the past will delete the key (hashtable) (1 ms) [ok]: HGETEX - Test active expiry (hashtable) (1 ms) [ok]: HGETEX - A field with TTL overridden with another value (TTL discarded) (hashtable) (0 ms) [ok]: HGETEX - Test with lazy expiry (hashtable) (6 ms) [ok]: HSETEX - input validation (hashtable) (4 ms) [ok]: HSETEX - Basic test (hashtable) (0 ms) [ok]: HSETEX - Test FXX flag (hashtable) (1 ms) [ok]: HSETEX - Test FXX flag with lazy expire (hashtable) (15 ms) [ok]: HSETEX - Test FNX flag (hashtable) (1 ms) [ok]: HSETEX - Test 'EX' flag (hashtable) (0 ms) [ok]: HSETEX - Test 'EXAT' flag (hashtable) (0 ms) [ok]: HSETEX - Test 'PX' flag (hashtable) (0 ms) [ok]: HSETEX - Test 'PXAT' flag (hashtable) (0 ms) [ok]: HSETEX - Test 'KEEPTTL' flag (hashtable) (1 ms) [ok]: HSETEX - Test no expiry flag discards TTL (hashtable) (1 ms) [ok]: WAITAOF replica copy everysec (1741 ms) [ok]: {cluster} ZSCAN with encoding skiplist (71 ms) [ok]: {cluster} SCAN guarantees check under write load (16 ms) [ok]: {cluster} SSCAN with integer encoded object (issue #1345) (1 ms) [ok]: {cluster} SSCAN with PATTERN (0 ms) [ok]: {cluster} HSCAN with PATTERN (0 ms) [ok]: {cluster} HSCAN with NOVALUES (0 ms) [ok]: {cluster} ZSCAN with PATTERN (0 ms) [ok]: {cluster} ZSCAN scores: regression test for issue #2175 (26 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 (0 ms) [ok]: XADD IDs correctly report an error when overflowing (0 ms) [ok]: XADD auto-generated sequence is incremented for last ID (0 ms) [ok]: XADD auto-generated sequence is zero for future timestamp ID (0 ms) [ok]: XADD auto-generated sequence can't be smaller than last ID (1 ms) [ok]: XADD auto-generated sequence can't overflow (0 ms) [ok]: XADD 0-* should succeed (0 ms) [ok]: Test LSET with packed consist only one item (178 ms) [ok]: Crash due to delete entry from a compress quicklist node (1 ms) [ok]: Crash due to split quicklist node wrongly (1 ms) [ok]: Test LPUSH and LPOP on plain nodes (2 ms) [ok]: Test LINDEX and LINSERT on plain nodes (1 ms) [ok]: Test LTRIM on plain nodes (0 ms) [ok]: HSETEX - Test with active expiry (101 ms) [ok]: Test LREM on plain nodes (1 ms) [ok]: HSETEX - Set time in the past (hashtable) (0 ms) [ok]: Test LPOS on plain nodes (1 ms) [ok]: Test LMOVE on plain nodes (0 ms) [ok]: XADD with MAXLEN option (68 ms) [ok]: XADD with MAXLEN option and the '=' argument (68 ms) [ok]: XADD with MAXLEN option and the '~' argument (56 ms) [ok]: XADD with NOMKSTREAM option (0 ms) [ok]: Test LSET with packed / plain combinations (176 ms) [ok]: Test LSET with packed is split in the middle (1 ms) [ok]: Statistics - Hashes with HFEs (hashtable) (203 ms) [ok]: HFE commands against wrong type (2 ms) [ok]: XADD with MINID option (69 ms) [ok]: XTRIM with MINID option (1 ms) [ok]: XTRIM with MINID option, big delta from master record (0 ms) [ok]: Test LSET with packed consist only one item (175 ms) [ok]: Crash due to delete entry from a compress quicklist node (1 ms) [ok]: Crash due to split quicklist node wrongly (1 ms) [ok]: Test listpack memory usage (0 ms) [ok]: Test listpack object encoding (1 ms) [ok]: Test listpack debug listpack (0 ms) [ok]: Test listpack converts to ht and passive expiry works (51 ms) [ok]: Blocking XREADGROUP for stream key that has clients blocked on stream - reprocessing command (1096 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 (0 ms) [ok]: LPOS basic usage - quicklist (45 ms) [ok]: LPOS RANK (positive, negative and zero rank) option (1 ms) [ok]: LPOS COUNT option (0 ms) [ok]: LPOS COUNT + RANK option (0 ms) [ok]: LPOS non existing key (0 ms) [ok]: LPOS no match (0 ms) [ok]: LPOS MAXLEN (1 ms) [ok]: LPOS when RANK is greater than matches (0 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - quicklist (85 ms) [ok]: LPOP/RPOP with wrong number of arguments (0 ms) [ok]: RPOP/LPOP with the optional count argument - quicklist (43 ms) [ok]: LPOS basic usage - listpack (0 ms) [ok]: LPOS RANK (positive, negative and zero rank) option (1 ms) [ok]: LPOS COUNT option (0 ms) [ok]: LPOS COUNT + RANK option (0 ms) [ok]: LPOS non existing key (0 ms) [ok]: LPOS no match (1 ms) [ok]: LPOS MAXLEN (0 ms) [ok]: LPOS when RANK is greater than matches (0 ms) [ok]: LPUSH, RPUSH, LLENGTH, LINDEX, LPOP - listpack (1 ms) [ok]: LPOP/RPOP with wrong number of arguments (0 ms) [ok]: RPOP/LPOP with the optional count argument - listpack (0 ms) [ok]: LPOP/RPOP with the count 0 returns an empty array in RESP3 (0 ms) [ok]: LPOP/RPOP against non existing key in RESP3 (0 ms) [ok]: LPOP/RPOP with against non existing key in RESP3 (0 ms) [ok]: LPOP/RPOP with the count 0 returns an empty array in RESP2 (1 ms) [ok]: LPOP/RPOP against non existing key in RESP2 (0 ms) [ok]: LPOP/RPOP with against non existing key in RESP2 (0 ms) [ok]: Variadic RPUSH/LPUSH (1 ms) [ok]: DEL a list (0 ms) [ok]: Test listpack converts to ht and active expiry works (250 ms) [ok]: BLPOP: single existing list - quicklist (43 ms) [ok]: BLPOP: multiple existing lists - quicklist (90 ms) [ok]: BLPOP: second list has an entry - quicklist (43 ms) [ok]: Test listpack converts to ht and active expiry works (213 ms) [ok]: BLMPOP_LEFT: single existing list - quicklist (47 ms) [ok]: HPERSIST/HEXPIRE - Test listpack with large values (66 ms) [ok]: BLMPOP_LEFT: multiple existing lists - quicklist (90 ms) [ok]: BLMPOP_LEFT: second list has an entry - quicklist (43 ms) [ok]: XCLAIM can claim PEL items from another consumer (603 ms) [ok]: BRPOPLPUSH - quicklist (46 ms) [ok]: BLMOVE left left - quicklist (44 ms) [ok]: BLMOVE left right - quicklist (46 ms) [ok]: BLMOVE right left - quicklist (43 ms) [ok]: BLMOVE right right - quicklist (46 ms) [ok]: BLPOP: single existing list - listpack (1 ms) [ok]: BLPOP: multiple existing lists - listpack (1 ms) [ok]: BLPOP: second list has an entry - listpack (1 ms) [ok]: BLMPOP_LEFT: single existing list - listpack (1 ms) [ok]: BLMPOP_LEFT: multiple existing lists - listpack (1 ms) [ok]: BLMPOP_LEFT: second list has an entry - listpack (1 ms) [ok]: BRPOPLPUSH - listpack (1 ms) [ok]: BLMOVE left left - listpack (0 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) (1 ms) [ok]: MULTI/EXEC is isolated from the point of view of BLPOP (1 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 (1 ms) [ok]: BLMOVE right left with zero timeout should block indefinitely (1 ms) [ok]: BLMOVE right right with zero timeout should block indefinitely (0 ms) [ok]: BLMOVE (left, left) with a client BLPOPing the target list (2 ms) [ok]: BLMOVE (left, right) with a client BLPOPing the target list (1 ms) [ok]: BLMOVE (right, left) with a client BLPOPing the target list (1 ms) [ok]: BLMOVE (right, right) with a client BLPOPing the target list (1 ms) [ok]: BRPOPLPUSH with wrong source type (0 ms) [ok]: BRPOPLPUSH with wrong destination type (1 ms) [ok]: BRPOPLPUSH maintains order of elements after failure (1 ms) [ok]: BRPOPLPUSH with multiple blocked clients (1 ms) [ok]: BLMPOP with multiple blocked clients (2 ms) [ok]: Linked LMOVEs (1 ms) [ok]: Circular BRPOPLPUSH (1 ms) [ok]: Self-referential BRPOPLPUSH (0 ms) [ok]: BRPOPLPUSH inside a transaction (1 ms) [ok]: PUSH resulting from BRPOPLPUSH affect WATCH (1 ms) [ok]: BRPOPLPUSH does not affect WATCH while still blocked (1 ms) [ok]: Verify Lua performs GC correctly after script loading (4080 ms) [ok]: Test Command propagated to replica as expected (listpack) (328 ms) [ok]: XCLAIM without JUSTID increments delivery count (403 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 (1 ms) [ok]: EVAL - Return table with a metatable that call redis (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 (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]: EVALSHA - Can we call a SHA1 if already defined? (0 ms) [ok]: EVALSHA_RO - Can we call a SHA1 if already defined? (0 ms) [ok]: EVALSHA - Can we call a SHA1 in uppercase? (0 ms) [ok]: EVALSHA - Do we get an error on invalid SHA1? (0 ms) [ok]: EVALSHA - Do we get an error on non defined SHA1? (1 ms) [ok]: EVAL - Redis integer -> Lua type conversion (0 ms) [ok]: EVAL - Lua number -> Redis integer conversion (0 ms) [ok]: EVAL - Redis bulk -> Lua type conversion (0 ms) [ok]: EVAL - Redis multi bulk -> Lua type conversion (1 ms) [ok]: EVAL - Redis status reply -> Lua type conversion (0 ms) [ok]: EVAL - Redis error reply -> Lua type conversion (0 ms) [ok]: EVAL - Redis nil bulk reply -> Lua type conversion (0 ms) [ok]: EVAL - Is the Lua client using the currently selected DB? (0 ms) [ok]: EVAL - SELECT inside Lua should not affect the caller (1 ms) [ok]: EVAL - Scripts do not block on blpop command (0 ms) [ok]: EVAL - Scripts do not block on brpop command (0 ms) [ok]: EVAL - Scripts do not block on brpoplpush command (0 ms) [ok]: EVAL - Scripts do not block on blmove command (1 ms) [ok]: EVAL - Scripts do not block on bzpopmin command (0 ms) [ok]: EVAL - Scripts do not block on bzpopmax command (0 ms) [ok]: EVAL - Scripts do not block on wait (0 ms) [ok]: EVAL - Scripts do not block on waitaof (0 ms) [ok]: EVAL - Scripts do not block on XREAD with BLOCK option (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 (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) (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 (1 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]: Lazy Expire - fields are lazy deleted and propagated to replicas (listpack) (224 ms) [ok]: XCLAIM same consumer (201 ms) [ok]: EVAL - cmsgpack pack/unpack smoke test (188 ms) [ok]: EVAL - cmsgpack can pack and unpack circular references? (2 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 (0 ms) [ok]: SCRIPTING FLUSH - is able to clear the scripts cache? (14 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 (0 ms) [ok]: SORT is normally not alpha re-ordered for the scripting engine (1 ms) [ok]: SORT BY output gets ordered for scripting (0 ms) [ok]: SORT BY with GET gets ordered for scripting (0 ms) [ok]: redis.sha1hex() implementation (0 ms) [ok]: XADD mass insertion and XLEN (1643 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]: WAITAOF replica copy everysec with AOFRW (2005 ms) [ok]: SDIFF fuzzing (2671 ms) [ok]: SDIFF against non-set should throw error (0 ms) [ok]: SDIFF should handle non existing key as empty (1 ms) [ok]: SDIFFSTORE against non-set should throw error (1 ms) [ok]: SDIFFSTORE should handle non existing key as empty (0 ms) [ok]: SINTER against non-set should throw error (0 ms) [ok]: SINTER should handle non existing key as empty (0 ms) [ok]: SINTER with same integer elements but different encoding (1 ms) [ok]: SINTERSTORE against non-set should throw error (1 ms) [ok]: SINTERSTORE against non existing keys should delete dstkey (0 ms) [ok]: SUNION against non-set should throw error (1 ms) [ok]: SUNION should handle non existing key as empty (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]: All TTLs in commands are propagated as absolute timestamp in milliseconds in AOF (211 ms) [ok]: SRANDMEMBER - listpack (5 ms) [ok]: SPOP basics - intset (1 ms) [ok]: SPOP with =1 - intset (0 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 (1 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 (1 ms) [ok]: SPOP new implementation: code path #3 intset (2 ms) [ok]: SPOP new implementation: code path #1 listpack (1 ms) [ok]: SPOP new implementation: code path #2 listpack (1 ms) [ok]: SPOP new implementation: code path #3 listpack (1 ms) [ok]: SPOP new implementation: code path #1 propagate as DEL or UNLINK (22 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 (13 ms) [ok]: SRANDMEMBER with - intset (15 ms) [ok]: SRANDMEMBER with - hashtable (15 ms) [ok]: All TTL in commands are propagated as absolute timestamp in replication stream (23 ms) [ok]: SRANDMEMBER histogram distribution - listpack (51 ms) [ok]: XRANGE can be used to iterate the whole stream (326 ms) [ok]: SRANDMEMBER histogram distribution - intset (51 ms) [ok]: HRANDFIELD delete expired fields and propagate DELs to replica (116 ms) [ok]: SRANDMEMBER histogram distribution - hashtable (52 ms) [ok]: XAUTOCLAIM can claim PEL items from another consumer (602 ms) [ok]: LTRIM stress testing - quicklist (5349 ms) [ok]: BRPOPLPUSH timeout (1007 ms) [ok]: SWAPDB awakes blocked client (1 ms) [ok]: MIGRATE can correctly transfer large values (4782 ms) [ok]: For all replicated TTL-related commands, absolute expire times are identical on primary and replica (76 ms) [ok]: XAUTOCLAIM as an iterator (203 ms) [ok]: XAUTOCLAIM COUNT must be > 0 (0 ms) [ok]: XCLAIM with XDEL (1 ms) [ok]: XCLAIM with trimming (1 ms) [ok]: XAUTOCLAIM with XDEL (1 ms) [ok]: XAUTOCLAIM with XDEL and count (1 ms) [ok]: XAUTOCLAIM with out of range count (0 ms) [ok]: XCLAIM with trimming (1 ms) [ok]: XINFO FULL output (3 ms) [ok]: SWAPDB wants to wake blocked client, but the key already expired (199 ms) [ok]: MIGRATE can correctly transfer hashes (225 ms) [ok]: Test HSETEX command replication (170 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]: XREADGROUP of multiple entries changes dirty by one (2 ms) [ok]: XREADGROUP from PEL does not change dirty (2 ms) [ok]: Test HGETEX command replication (131 ms) [ok]: Measures elapsed time os.clock() (1001 ms) [ok]: Prohibit dangerous lua methods in sandbox (0 ms) [ok]: Verify execution of prohibit dangerous Lua methods will fail (1 ms) [ok]: Globals protection reading an undeclared global variable (0 ms) [ok]: Globals protection setting an undeclared global* (0 ms) [ok]: lua bit.tohex bug (1 ms) [ok]: Test an example script DECR_IF_GT (0 ms) [ok]: random numbers are random now (0 ms) [ok]: Scripting engine PRNG can be seeded correctly (1 ms) [ok]: MULTI + LPUSH + EXPIRE + DEBUG SLEEP on blocked client, key already expired (301 ms) [ok]: XREADGROUP with NOACK creates consumer (6 ms) [ok]: Consumer without PEL is present in AOF after AOFRW (113 ms) [ok]: Consumer group read counter and lag in empty streams (1 ms) [ok]: Consumer group read counter and lag sanity (3 ms) [ok]: Consumer group lag with XDELs (6 ms) [ok]: Consumer Group Lag with XDELs and tombstone after the last_id of consume group (2 ms) [ok]: Consumer group lag with XTRIM (3 ms) [ok]: Loading from legacy (Redis <= v6.2.x, rdb_ver < 10) persistence (1 ms) [ok]: Loading from legacy (Redis <= v7.0.x, rdb_ver < 11) persistence (1 ms) [ok]: EVAL does not leak in the Lua stack (285 ms) [ok]: SPOP: We can call scripts rewriting client->argv from Lua (14 ms) [ok]: Test Command propagated to replica as expected (ht) (327 ms) [ok]: MGET: mget shouldn't be propagated in Lua (101 ms) [ok]: MIGRATE timeout actually works (630 ms) [ok]: EXPIRE: We can call scripts rewriting client->argv from Lua (100 ms) [ok]: Consumer group last ID propagation to slave (NOACK=0) (103 ms) [ok]: Lazy Expire - fields are lazy deleted and propagated to replicas (ht) (221 ms) [ok]: Consumer group last ID propagation to slave (NOACK=1) (102 ms) [ok]: MIGRATE can migrate multiple keys at once (225 ms) [ok]: MIGRATE with multiple keys must have empty key arg (0 ms) [ok]: INCRBYFLOAT: We can call scripts expanding client->argv from Lua (320 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 (0 ms) [ok]: Script with RESP3 map (1 ms) [ok]: All TTLs in commands are propagated as absolute timestamp in milliseconds in AOF (208 ms) [ok]: MIGRATE with multiple keys migrate just existing ones (223 ms) [ok]: XREVRANGE returns the reverse of XRANGE (1495 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]: Replication tests of XCLAIM with deleted entries (autoclaim=0) (103 ms) [ok]: Replication tests of XCLAIM with deleted entries (autoclaim=1) (2 ms) [ok]: Script return recursive object (102 ms) [ok]: XREADGROUP ACK would propagate entries-read (2 ms) [ok]: XREADGROUP from PEL inside MULTI (1 ms) [ok]: Script check unpack with massive arguments (41 ms) [ok]: Script read key with expiration set (0 ms) [ok]: Script del key with expiration set (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 redis table (0 ms) [ok]: Try trick readonly table on json table (1 ms) [ok]: Try trick readonly table on cmsgpack table (0 ms) [ok]: 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]: BLPOP unblock but the key is expired and then block again - reprocessing command (1002 ms) [ok]: BLPOP when new key is moved into place (1 ms) [ok]: BLPOP when result key is created by SORT..STORE (1 ms) [ok]: BLMPOP_LEFT when new key is moved into place (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 (0 ms) [ok]: BLPOP: with negative timeout (0 ms) [ok]: BLPOP: with non-integer timeout (0 ms) [ok]: BLPOP: with zero timeout should block indefinitely (1 ms) [ok]: All TTL in commands are propagated as absolute timestamp in replication stream (102 ms) [ok]: BLPOP: with 0.001 timeout should not block indefinitely (21 ms) [ok]: BLPOP: second argument is not a list (0 ms) [ok]: WAITAOF replica copy everysec with slow AOFRW (2005 ms) [ok]: MIGRATE with multiple keys: stress command rewriting (224 ms) [ok]: HRANDFIELD delete expired fields and propagate DELs to replica (117 ms) [ok]: WAITAOF replica copy everysec->always with AOFRW (106 ms) [ok]: WAITAOF replica copy appendfsync always (2 ms) [ok]: Empty stream with no lastid can be rewrite into AOF correctly (104 ms) [ok]: For all replicated TTL-related commands, absolute expire times are identical on primary and replica (6 ms) [ok]: MIGRATE with multiple keys: delete just ack keys (224 ms) [ok]: KEYSIZES - Test hyperloglog (replica) (10791 ms) [39/96 done]: unit/type/stream-cgroups (5 seconds) Testing unit/type/string [ok]: Test HSETEX command replication (66 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL (402 ms) [ok]: SET and GET an item (0 ms) [ok]: SET and GET an empty item (0 ms) [ok]: MIGRATE AUTH: correct and wrong password cases (226 ms) [ok]: Test HGETEX command replication (131 ms) [ok]: Timedout read-only scripts can be killed by SCRIPT KILL even when use pcall (86 ms) [ok]: Very big payload in GET/SET (67 ms) [40/96 done]: unit/dump (24 seconds) Testing unit/type/zset [41/96 done]: unit/type/hash-field-expire (10 seconds) Testing unit/cluster/announced-endpoints [ok]: KEYSIZES - Test List (replica) (262 ms) [ok]: Timedout script does not cause a false dead client (86 ms) [ok]: XREAD with non empty second stream (831 ms) [ok]: Blocking XREAD waiting new data (1 ms) [ok]: Blocking XREAD waiting old data (1 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 (0 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 (1 ms) [ok]: ZADD LT and GT are not compatible - listpack (0 ms) [ok]: ZADD INCR LT/GT replies with nill if score not updated - listpack (0 ms) [ok]: ZADD INCR LT/GT with inf - listpack (1 ms) [ok]: ZADD INCR works like ZINCRBY - listpack (0 ms) [ok]: ZADD INCR works with a single score-elemenet pair - listpack (1 ms) [ok]: ZADD CH option changes return value to all changed elements - listpack (0 ms) [ok]: ZINCRBY calls leading to NaN result in error - listpack (0 ms) [ok]: ZINCRBY accepts hexadecimal inputs - listpack (0 ms) [ok]: ZINCRBY against invalid incr value - listpack (0 ms) [ok]: ZADD - Variadic version base case - listpack (0 ms) [ok]: ZADD - Return value is the number of actually added items - listpack (0 ms) [ok]: ZADD - Variadic version does not add nothing on single parsing err - listpack (0 ms) [ok]: ZADD - Variadic version will raise error on missing arg - listpack (0 ms) [ok]: ZINCRBY does not work variadic even if shares ZADD implementation - listpack (0 ms) [ok]: ZCARD basics - listpack (0 ms) [ok]: ZREM removes key after last element is removed - listpack (1 ms) [ok]: ZREM variadic version - listpack (0 ms) [ok]: ZREM variadic version -- remove elements after key deletion - listpack (0 ms) [ok]: ZRANGE basics - listpack (1 ms) [ok]: ZREVRANGE basics - listpack (2 ms) [ok]: Blocking XREAD will not reply with an empty array (39 ms) [ok]: ZRANK/ZREVRANK basics - listpack (1 ms) [ok]: ZRANK - after deletion - listpack (0 ms) [ok]: ZINCRBY - can create a new sorted set - listpack (0 ms) [ok]: ZINCRBY - increment and decrement - listpack (1 ms) [ok]: ZINCRBY return value - listpack (0 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - listpack (3 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - listpack (0 ms) [ok]: KEYSIZES - Test SET (replica) (110 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]: 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 (0 ms) [ok]: ZUNIONSTORE with empty set - listpack (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with empty set - listpack (0 ms) [ok]: ZUNIONSTORE basics - listpack (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with integer members - listpack (1 ms) [ok]: ZUNIONSTORE with weights - listpack (0 ms) [ok]: ZUNION with weights - listpack (0 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 (0 ms) [ok]: ZUNIONSTORE with AGGREGATE MAX - listpack (0 ms) [ok]: ZUNION/ZINTER with AGGREGATE MAX - listpack (0 ms) [ok]: ZINTERSTORE basics - listpack (1 ms) [ok]: ZINTER basics - listpack (0 ms) [ok]: ZINTERCARD with illegal arguments (0 ms) [ok]: ZINTERCARD basics - listpack (0 ms) [ok]: ZINTER RESP3 - listpack (1 ms) [ok]: ZINTERSTORE with weights - listpack (0 ms) [ok]: ZINTER with weights - listpack (0 ms) [ok]: ZINTERSTORE with a regular set and weights - listpack (1 ms) [ok]: ZINTERSTORE with AGGREGATE MIN - listpack (0 ms) [ok]: ZINTERSTORE with AGGREGATE MAX - listpack (0 ms) [ok]: ZUNIONSTORE with +inf/-inf scores - listpack (1 ms) [ok]: ZUNIONSTORE with NaN weights - listpack (0 ms) [ok]: ZINTERSTORE with +inf/-inf scores - listpack (1 ms) [ok]: ZINTERSTORE with NaN weights - listpack (1 ms) [ok]: ZDIFFSTORE basics - listpack (0 ms) [ok]: ZDIFF basics - listpack (0 ms) [ok]: ZDIFFSTORE with a regular set - listpack (0 ms) [ok]: ZDIFF subtracting set from itself - listpack (0 ms) [ok]: ZDIFF algorithm 1 - listpack (1 ms) [ok]: ZDIFF algorithm 2 - listpack (1 ms) [ok]: Timedout script link is still usable after Lua returns (143 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: read last element after XDEL (issue #13628) (0 ms) [ok]: XREAD: XADD + DEL should not awake client (1 ms) [ok]: XREAD: XADD + DEL + LPUSH should not awake client (1 ms) [ok]: XREAD with same stream name multiple times should work (1 ms) [ok]: XREAD + multiple XADD inside transaction (1 ms) [ok]: XDEL basic test (1 ms) [ok]: XDEL multiply id test (0 ms) [ok]: KEYSIZES - Test ZSET (replica) (113 ms) [ok]: KEYSIZES - Test STRING (replica) (108 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 (0 ms) [ok]: BRPOP: with non-integer timeout (1 ms) [ok]: BRPOP: with zero timeout should block indefinitely (1 ms) [ok]: BRPOP: with 0.001 timeout should not block indefinitely (21 ms) [ok]: BRPOP: second argument is not a list (0 ms) [ok]: Timedout scripts and unblocked command (399 ms) [ok]: Timedout scripts that modified data can't be killed by SCRIPT KILL (201 ms) [ok]: SHUTDOWN NOSAVE can kill a timedout script anyway (3 ms) [ok]: KEYSIZES - Test HASH (listpackex) (replica) (566 ms) [ok]: KEYSIZES - Test Hash field lazy expiration (listpackex) (replica) (95 ms) [ok]: Before the replica connects we issue two EVAL commands (0 ms) [ok]: Connect a replica to the master instance (101 ms) [ok]: Now use EVALSHA against the master, with both SHAs (0 ms) [ok]: 'x' should be '4' for EVALSHA being replicated by effects (0 ms) [ok]: Replication of script multiple pushes to list with BLPOP (1 ms) [ok]: EVALSHA replication when first call is readonly (0 ms) [ok]: Lua scripts using SELECT are replicated correctly (1 ms) [ok]: {cluster} SCAN regression test for issue #4906 (5818 ms) [ok]: {cluster} SCAN MATCH pattern implies cluster slot (17 ms) [42/96 done]: unit/scan (15 seconds) Testing unit/cluster/cli [ok]: WAITAOF replica copy if replica is blocked (1966 ms) [ok]: BRPOP: timeout (1077 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 (1 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]: KEYSIZES - Test HASH (hashtable) (replica) (615 ms) [ok]: XDEL fuzz test (1411 ms) [ok]: KEYSIZES - Test Hash field lazy expiration (hashtable) (replica) (93 ms) [ok]: KEYSIZES - Test STRING BITS (replica) (4 ms) [ok]: KEYSIZES - Test RESTORE (replica) (1 ms) [ok]: KEYSIZES - Test RENAME (replica) (1 ms) [ok]: KEYSIZES - Test MOVE (replica) (2 ms) [ok]: KEYSIZES - Test SWAPDB (replica) (1 ms) [ok]: KEYSIZES - DEBUG RELOAD reset keysizes (replica) (4 ms) [ok]: KEYSIZES - Test RDB (replica) (215 ms) [ok]: Very big payload random access (1983 ms) [43/96 done]: unit/info-keysizes (26 seconds) Testing unit/cluster/cluster-response-tls [44/96 done]: unit/cluster/cluster-response-tls (0 seconds) Testing unit/cluster/failure-marking [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 Redis commands from Lua (1 ms) [ok]: PRNG is seeded randomly for command replication (0 ms) [ok]: Using side effects is not a problem with command replication (1 ms) [ok]: WAITAOF replica multiple clients unblock - reuse last result (1002 ms) [ok]: Test change cluster-announce-port and cluster-announce-tls-port at runtime (201 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 (0 ms) [ok]: BLMPOP_RIGHT: with non-integer timeout (1 ms) [ok]: BLMPOP_RIGHT: with zero timeout should block indefinitely (1 ms) [ok]: BLMPOP_RIGHT: with 0.001 timeout should not block indefinitely (21 ms) [ok]: BLMPOP_RIGHT: second argument is not a list (1 ms) [ok]: WAITAOF on promoted replica (201 ms) [ok]: Test change cluster-announce-bus-port at runtime (202 ms) [ok]: CONFIG SET port updates cluster-announced port (1 ms) [ok]: SET 10000 numeric keys and access all them in reverse order (984 ms) [ok]: DBSIZE should be 10000 now (0 ms) [ok]: SETNX target key missing (0 ms) [ok]: SETNX target key exists (1 ms) [ok]: SETNX against not-expired volatile key (0 ms) [ok]: Stress tester for #3343-alike bugs comp: 2 (9491 ms) [45/96 done]: unit/cluster/announced-endpoints (3 seconds) Testing unit/cluster/hostnames [ok]: ZDIFF fuzzing - listpack (3102 ms) [ok]: ZPOPMIN with the count 0 returns an empty array (0 ms) [ok]: ZPOPMIN with negative count (1 ms) [ok]: ZPOPMAX with the count 0 returns an empty array (0 ms) [ok]: ZPOPMAX with negative count (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX with a single key - listpack (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - listpack (0 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - listpack (0 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - listpack (0 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - listpack (1 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - listpack (2 ms) [ok]: BZPOPMIN/BZPOPMAX second sorted set has members - listpack (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with a single existing sorted set - listpack (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with multiple existing sorted sets - listpack (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX second sorted set has members - listpack (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX - listpack RESP3 (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - listpack RESP3 (1 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX - listpack RESP3 (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - listpack RESP3 (0 ms) [ok]: BZPOPMIN/BZPOPMAX - listpack RESP3 (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX - listpack RESP3 (1 ms) [ok]: Check encoding - skiplist (0 ms) [ok]: ZSET basic ZADD and score update - skiplist (0 ms) [ok]: ZSET element can't be set to NaN with ZADD - skiplist (0 ms) [ok]: ZSET element can't be set to NaN with ZINCRBY - skiplist (0 ms) [ok]: ZADD with options syntax error with incomplete pair - skiplist (0 ms) [ok]: ZADD XX option without key - skiplist (0 ms) [ok]: ZADD XX existing key - skiplist (0 ms) [ok]: ZADD XX returns the number of elements actually added - skiplist (1 ms) [ok]: ZADD XX updates existing elements score - skiplist (0 ms) [ok]: ZADD GT updates existing elements when new scores are greater - skiplist (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 (0 ms) [ok]: ZADD XX and NX are not compatible - skiplist (0 ms) [ok]: ZADD NX with non existing key - skiplist (0 ms) [ok]: ZADD NX only add new elements without updating old ones - skiplist (1 ms) [ok]: ZADD GT and NX are not compatible - skiplist (0 ms) [ok]: ZADD LT and NX are not compatible - skiplist (0 ms) [ok]: ZADD LT and GT are not compatible - skiplist (0 ms) [ok]: ZADD INCR LT/GT replies with nill if score not updated - skiplist (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-elemenet pair - skiplist (1 ms) [ok]: ZADD CH option changes return value to all changed elements - skiplist (0 ms) [ok]: ZINCRBY calls leading to NaN result in error - skiplist (0 ms) [ok]: ZINCRBY accepts hexadecimal inputs - skiplist (1 ms) [ok]: ZINCRBY against invalid incr value - skiplist (0 ms) [ok]: ZADD - Variadic version base case - skiplist (0 ms) [ok]: ZADD - Return value is the number of actually added items - skiplist (1 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 (0 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 (2 ms) [ok]: ZRANK - after deletion - skiplist (0 ms) [ok]: ZINCRBY - can create a new sorted set - skiplist (0 ms) [ok]: ZINCRBY - increment and decrement - skiplist (1 ms) [ok]: ZINCRBY return value - skiplist (0 ms) [ok]: ZRANGEBYSCORE/ZREVRANGEBYSCORE/ZCOUNT basics - skiplist (3 ms) [ok]: ZRANGEBYSCORE with WITHSCORES - skiplist (1 ms) [ok]: ZRANGEBYSCORE with LIMIT - skiplist (3 ms) [ok]: ZRANGEBYSCORE with LIMIT and WITHSCORES - skiplist (1 ms) [ok]: ZRANGEBYSCORE with non-value min or max - skiplist (0 ms) [ok]: ZRANGEBYLEX/ZREVRANGEBYLEX/ZLEXCOUNT basics - skiplist (2 ms) [ok]: ZLEXCOUNT advanced - skiplist (2 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 (1 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF against non-existing key - skiplist (0 ms) [ok]: ZUNIONSTORE with empty set - skiplist (0 ms) [ok]: ZUNION/ZINTER/ZINTERCARD/ZDIFF with empty set - skiplist (1 ms) [ok]: ZUNIONSTORE basics - skiplist (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 (1 ms) [ok]: ZUNION/ZINTER with AGGREGATE MIN - skiplist (0 ms) [ok]: ZUNIONSTORE with AGGREGATE MAX - skiplist (0 ms) [ok]: ZUNION/ZINTER with AGGREGATE MAX - skiplist (0 ms) [ok]: ZINTERSTORE basics - skiplist (0 ms) [ok]: ZINTER basics - skiplist (0 ms) [ok]: ZINTERCARD with illegal arguments (0 ms) [ok]: ZINTERCARD basics - skiplist (1 ms) [ok]: ZINTER RESP3 - skiplist (0 ms) [ok]: ZINTERSTORE with weights - skiplist (0 ms) [ok]: ZINTER with weights - skiplist (0 ms) [ok]: ZINTERSTORE with a regular set and weights - skiplist (0 ms) [ok]: ZINTERSTORE with AGGREGATE MIN - skiplist (0 ms) [ok]: ZINTERSTORE with AGGREGATE MAX - skiplist (1 ms) [ok]: ZUNIONSTORE with +inf/-inf scores - skiplist (1 ms) [ok]: ZUNIONSTORE with NaN weights - skiplist (0 ms) [ok]: ZINTERSTORE with +inf/-inf scores - skiplist (1 ms) [ok]: ZINTERSTORE with NaN weights - skiplist (0 ms) [ok]: ZDIFFSTORE basics - skiplist (1 ms) [ok]: ZDIFF basics - skiplist (0 ms) [ok]: ZDIFFSTORE with a regular set - skiplist (0 ms) [ok]: ZDIFF subtracting set from itself - skiplist (0 ms) [ok]: ZDIFF algorithm 1 - skiplist (1 ms) [ok]: ZDIFF algorithm 2 - skiplist (1 ms) [ok]: LTRIM stress testing - listpack (5499 ms) [ok]: Test scripting debug protocol parsing (0 ms) [ok]: Test scripting debug lua stack overflow (1 ms) [46/96 done]: unit/type/list-2 (11 seconds) Testing unit/cluster/human-announced-nodename [ok]: Lua scripts eviction does not generate many scripts (58 ms) [ok]: Lua scripts eviction is plain LRU (28 ms) [ok]: Create 3 node cluster (1920 ms) [ok]: Run blocking command on cluster node3 (0 ms) [ok]: Perform a Resharding (6 ms) [ok]: Verify command got unblocked after resharding (50 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 (0 ms) [ok]: Lua scripts eviction does not affect script load (91 ms) [ok]: BLMPOP_RIGHT: timeout (1075 ms) [ok]: BLMPOP_RIGHT: arguments are empty (2 ms) [ok]: BLPOP inside a transaction (0 ms) [ok]: BLMPOP_LEFT inside a transaction (1 ms) [ok]: test RESP2/2 big number protocol parsing (0 ms) [ok]: test RESP2/2 malformed big number protocol parsing (0 ms) [ok]: test RESP2/2 map protocol parsing (0 ms) [ok]: test RESP2/2 set protocol parsing (0 ms) [ok]: test RESP2/2 double protocol parsing (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 (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 (1 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 (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]: BLMPOP propagate as pop with count command to replica (199 ms) [ok]: LPUSHX, RPUSHX - generic (0 ms) [ok]: Script block the time in some expiration related commands (82 ms) [ok]: RESTORE expired keys with expiration time (10 ms) [ok]: LPUSHX, RPUSHX - quicklist (46 ms) [ok]: LINSERT - quicklist (47 ms) [ok]: LPUSHX, RPUSHX - listpack (1 ms) [ok]: LINSERT - listpack (2 ms) [ok]: LINSERT raise error on bad syntax (0 ms) [ok]: LINSERT against non-list value error (0 ms) [ok]: LINSERT against non existing key (0 ms) [ok]: LINDEX consistency test - listpack (56 ms) [ok]: LINDEX random access - listpack (34 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (75 ms) [ok]: Test script flush will not leak memory - script:1 (85 ms) [ok]: LINDEX consistency test - listpack (103 ms) [ok]: LINDEX random access - listpack (55 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - listpack (138 ms) [ok]: LINDEX consistency test - quicklist (38 ms) [ok]: LINDEX random access - quicklist (27 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (53 ms) [ok]: WAITAOF master that loses a replica and backlog is dropped (2002 ms) [ok]: LINDEX consistency test - quicklist (74 ms) [ok]: LINDEX random access - quicklist (53 ms) [ok]: GEOSEARCH fuzzy test - bybox (11397 ms) [ok]: Check if list is still ok after a DEBUG RELOAD - quicklist (135 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 (1 ms) [ok]: GEOSEARCH box edges fuzzy test (41 ms) [ok]: RPOPLPUSH base case - quicklist (41 ms) [ok]: LMOVE left left base case - quicklist (43 ms) [47/96 done]: unit/geo (29 seconds) Testing unit/cluster/internal-secret [ok]: LMOVE left right base case - quicklist (43 ms) [ok]: Kill a cluster node and wait for fail state (1325 ms) [ok]: LMOVE right left base case - quicklist (43 ms) [ok]: LMOVE right right base case - quicklist (44 ms) [ok]: Verify command got unblocked after cluster failure (98 ms) [ok]: RPOPLPUSH with the same list as src and dst - quicklist (43 ms) [ok]: LMOVE left left with the same list as src and dst - quicklist (43 ms) [ok]: LMOVE left right with the same list as src and dst - quicklist (43 ms) [ok]: SRANDMEMBER with a dict containing long chain (7477 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 (0 ms) [ok]: SMOVE from regular set to non existing destination set (1 ms) [ok]: SMOVE from intset to non existing destination set (1 ms) [ok]: SMOVE wrong src key type (0 ms) [ok]: SMOVE wrong dst key type (0 ms) [ok]: SMOVE with identical source and destination (0 ms) [ok]: SMOVE only notify dstset when the addition is successful (1 ms) [ok]: LMOVE right left with the same list as src and dst - quicklist (43 ms) [ok]: LMOVE right right with the same list as src and dst - quicklist (43 ms) [ok]: SETNX against expired volatile key (2510 ms) [ok]: GETEX EX option (1 ms) [ok]: GETEX PX option (0 ms) [ok]: GETEX EXAT option (0 ms) [ok]: GETEX PXAT option (1 ms) [ok]: GETEX PERSIST option (0 ms) [ok]: GETEX no option (0 ms) [ok]: GETEX syntax errors (0 ms) [ok]: GETEX and GET expired key or not exist (3 ms) [ok]: GETEX no arguments (0 ms) [ok]: GETDEL command (0 ms) [ok]: RPOPLPUSH with quicklist source and existing target quicklist (87 ms) [ok]: GETDEL propagate as DEL command to replica (54 ms) [ok]: WAITAOF master without backlog, wait is released when the replica finishes full-sync (806 ms) [ok]: LMOVE left left with quicklist source and existing target quicklist (87 ms) [ok]: GETEX without argument does not propagate to replica (101 ms) [ok]: MGET (8 ms) [ok]: MGET against non existing key (0 ms) [ok]: MGET against non-string key (0 ms) [ok]: GETSET (set new value) (0 ms) [ok]: GETSET (replace old value) (0 ms) [ok]: MSET base case (1 ms) [ok]: MSET/MSETNX wrong number of args (0 ms) [ok]: MSET with already existing - same key twice (0 ms) [ok]: MSETNX with already existent key (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 (1 ms) [ok]: SETBIT against string-encoded key (0 ms) [ok]: SETBIT against integer-encoded key (0 ms) [ok]: SETBIT against key with wrong type (1 ms) [ok]: SETBIT with out of range bit offset (0 ms) [ok]: SETBIT with non-bit argument (0 ms) [ok]: LMOVE left right with quicklist source and existing target quicklist (86 ms) [ok]: LMOVE right left with quicklist source and existing target quicklist (87 ms) [ok]: ZDIFF fuzzing - skiplist (2454 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 (0 ms) [ok]: ZPOPMAX with negative count (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX with a single key - skiplist (1 ms) [ok]: LMOVE right right with quicklist source and existing target quicklist (87 ms) [ok]: ZPOPMIN/ZPOPMAX with count - skiplist (0 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX with a single key - skiplist (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist (1 ms) [ok]: BZPOPMIN/BZPOPMAX with a single existing sorted set - skiplist (0 ms) [ok]: BZPOPMIN/BZPOPMAX with multiple existing sorted sets - skiplist (1 ms) [ok]: BZPOPMIN/BZPOPMAX second sorted set has members - skiplist (0 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with a single existing sorted set - skiplist (1 ms) [ok]: Set cluster human announced nodename and let it propagate (103 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX with multiple existing sorted sets - skiplist (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX second sorted set has members - skiplist (1 ms) [ok]: Basic ZPOPMIN/ZPOPMAX - skiplist RESP3 (1 ms) [ok]: ZPOPMIN/ZPOPMAX with count - skiplist RESP3 (0 ms) [ok]: Basic ZMPOP_MIN/ZMPOP_MAX - skiplist RESP3 (1 ms) [ok]: ZMPOP_MIN/ZMPOP_MAX with count - skiplist RESP3 (1 ms) [ok]: BZPOPMIN/BZPOPMAX - skiplist RESP3 (1 ms) [ok]: BZMPOP_MIN/BZMPOP_MAX - skiplist RESP3 (1 ms) [ok]: ZPOP/ZMPOP against wrong type (0 ms) [ok]: ZMPOP with illegal argument (2 ms) [ok]: RPOPLPUSH with quicklist source and existing target listpack (43 ms) [ok]: SETBIT fuzzing (269 ms) [ok]: GETBIT against non-existing key (0 ms) [ok]: GETBIT against string-encoded key (0 ms) [ok]: GETBIT against integer-encoded key (1 ms) [ok]: SETRANGE against non-existing key (0 ms) [ok]: SETRANGE against string-encoded key (1 ms) [ok]: LMOVE left left with quicklist source and existing target listpack (43 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 (0 ms) [ok]: GETRANGE against integer-encoded value (1 ms) [ok]: ZMPOP propagate as pop with count command to replica (90 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP3 (1 ms) [ok]: LMOVE left right with quicklist source and existing target listpack (44 ms) [ok]: LMOVE right left with quicklist source and existing target listpack (43 ms) [ok]: LMOVE right right with quicklist source and existing target listpack (43 ms) [ok]: RPOPLPUSH base case - listpack (1 ms) [ok]: LMOVE left left base case - listpack (1 ms) [ok]: LMOVE left right base case - listpack (1 ms) [ok]: LMOVE right left base case - listpack (0 ms) [ok]: LMOVE right right base case - listpack (1 ms) [ok]: RPOPLPUSH with the same list as src and dst - listpack (0 ms) [ok]: LMOVE left left with the same list as src and dst - listpack (0 ms) [ok]: LMOVE left right with the same list as src and dst - listpack (0 ms) [ok]: LMOVE right left with the same list as src and dst - listpack (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 (46 ms) [ok]: Set cluster hostnames and verify they are propagated (209 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP3 (199 ms) [ok]: ZMPOP readraw in RESP3 (1 ms) [ok]: LMOVE left left with listpack source and existing target quicklist (46 ms) [ok]: LMOVE left right with listpack source and existing target quicklist (43 ms) [ok]: LMOVE right left with listpack source and existing target quicklist (43 ms) [ok]: LMOVE right right with listpack source and existing target quicklist (43 ms) [ok]: RPOPLPUSH with listpack source and existing target listpack (0 ms) [ok]: LMOVE left left with listpack source and existing target listpack (1 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 (0 ms) [ok]: LMOVE right right with listpack source and existing target listpack (0 ms) [ok]: RPOPLPUSH against non existing key (1 ms) [ok]: RPOPLPUSH against non list src key (0 ms) [ok]: RPOPLPUSH against non list dst key - quicklist (42 ms) [ok]: RPOPLPUSH against non list dst key - listpack (1 ms) [ok]: RPOPLPUSH against non existing src key (0 ms) [ok]: Update hostnames and make sure they are all eventually propagated (208 ms) [ok]: BZMPOP readraw in RESP3 (199 ms) [ok]: ZPOPMIN/ZPOPMAX readraw in RESP2 (1 ms) [ok]: intsets implementation stress testing (1038 ms) [48/96 done]: unit/type/set (12 seconds) Testing unit/cluster/links [ok]: Basic LPOP/RPOP/LMPOP - quicklist (85 ms) [ok]: Basic LPOP/RPOP/LMPOP - listpack (0 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 (25 ms) [ok]: Mass RPOP/LPOP - listpack (51 ms) [ok]: LMPOP with illegal argument (1 ms) [ok]: BZPOPMIN/BZPOPMAX readraw in RESP2 (199 ms) [ok]: ZMPOP readraw in RESP2 (1 ms) [ok]: Remove hostnames and make sure they are all eventually propagated (208 ms) [ok]: WAITAOF master isn't configured to do AOF (1001 ms) [ok]: LMPOP single existing list - quicklist (137 ms) [ok]: WAITAOF replica isn't configured to do AOF (103 ms) [ok]: GETRANGE fuzzing (764 ms) [ok]: Coverage: SUBSTR (0 ms) [ok]: Extended SET can detect syntax errors (0 ms) [ok]: Extended SET NX option (0 ms) [ok]: Extended SET XX option (0 ms) [ok]: Extended SET GET option (1 ms) [ok]: Extended SET GET option with no previous value (0 ms) [ok]: Extended SET GET option with XX (0 ms) [ok]: Extended SET GET option with XX and no previous value (0 ms) [ok]: Extended SET GET option with NX (1 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]: Extended SET EX option (0 ms) [ok]: Extended SET PX option (1 ms) [ok]: Extended SET EXAT option (0 ms) [ok]: Extended SET PXAT option (0 ms) [ok]: Extended SET using multiple options at once (0 ms) [ok]: GETRANGE with huge ranges, Github issue #1844 (0 ms) [ok]: LCS basic (1 ms) [ok]: LCS len (0 ms) [ok]: LCS indexes (1 ms) [ok]: LCS indexes with match len (0 ms) [ok]: LCS indexes with match len and minimum match len (1 ms) [ok]: SETRANGE with huge offset (0 ms) [ok]: APPEND modifies the encoding from int to raw (0 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 (0 ms) [ok]: Verify cluster-preferred-endpoint-type behavior for redirects and info (207 ms) [49/96 done]: unit/type/string (7 seconds) Testing unit/cluster/misc [ok]: LMPOP multiple existing lists - quicklist (174 ms) [ok]: LMPOP single existing list - listpack (2 ms) [ok]: LMPOP multiple existing lists - listpack (2 ms) [ok]: LMPOP propagate as pop with count command to replica (31 ms) [ok]: ZUNIONSTORE result is sorted (112 ms) [ok]: ZUNIONSTORE/ZINTERSTORE/ZDIFFSTORE error if using WITHSCORES (1 ms) [ok]: ZMSCORE retrieve (0 ms) [ok]: ZMSCORE retrieve from empty set (0 ms) [ok]: ZMSCORE retrieve with missing member (0 ms) [ok]: ZMSCORE retrieve single member (1 ms) [ok]: ZMSCORE retrieve requires one or more members (0 ms) [ok]: ZSET commands don't accept the empty strings as valid score (0 ms) [ok]: zunionInterDiffGenericCommand at least 1 input key (1 ms) [ok]: ZSCORE - listpack (15 ms) [ok]: LRANGE basics - quicklist (42 ms) [ok]: ZMSCORE - listpack (15 ms) [ok]: ZSCORE after a DEBUG RELOAD - listpack (21 ms) [ok]: LRANGE inverted indexes - quicklist (45 ms) [ok]: ZSET sorting stresser - listpack (23 ms) [ok]: LRANGE out of range indexes including the full list - quicklist (43 ms) [ok]: LRANGE out of range negative end index - quicklist (44 ms) [ok]: LRANGE basics - listpack (1 ms) [ok]: LRANGE inverted indexes - listpack (0 ms) [ok]: LRANGE out of range indexes including the full list - listpack (0 ms) [ok]: LRANGE out of range negative end index - listpack (0 ms) [ok]: LRANGE against non existing key (0 ms) [ok]: LRANGE with start > end yields an empty array for backward compatibility (0 ms) [ok]: Verify that single primary marks replica as failed (3243 ms) [ok]: Verify Lua performs GC correctly after script loading (3115 ms) [ok]: LTRIM basics - quicklist (523 ms) [ok]: LTRIM out of range negative end index - quicklist (87 ms) [ok]: LSET - quicklist (44 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 (0 ms) [ok]: Shebang support for lua engine (0 ms) [ok]: Unknown shebang option (1 ms) [ok]: Unknown shebang flag (0 ms) [ok]: allow-oom shebang flag (1 ms) [ok]: no-writes shebang flag (0 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 (43 ms) [ok]: LREM starting from tail with negative count (2) - quicklist (0 ms) [ok]: LREM deleting objects that may be int encoded - quicklist (43 ms) [ok]: LREM remove all the occurrences - listpack (1 ms) [ok]: LREM remove the first occurrence - listpack (0 ms) [ok]: LREM remove non existing element - listpack (0 ms) [ok]: LREM starting from tail with negative count - listpack (1 ms) [ok]: LREM starting from tail with negative count (2) - listpack (0 ms) [ok]: LREM deleting objects that may be int encoded - listpack (1 ms) [ok]: Regression for bug 593 - chaining BRPOPLPUSH with other blocking cmds (1 ms) [ok]: BLPOP/BLMOVE should increase dirty (2 ms) [ok]: client unblock tests (3 ms) [ok]: client unblock tests (2 ms) [ok]: List listpack -> quicklist encoding conversion (2 ms) [ok]: List listpack -> quicklist encoding conversion (177 ms) [ok]: no-writes shebang flag on replica (205 ms) [ok]: not enough good replicas (0 ms) [ok]: List quicklist -> listpack encoding conversion (220 ms) [ok]: List encoding conversion when RDB loading (4 ms) [ok]: List invalid list-max-listpack-size config (43 ms) [ok]: List of various encodings (47 ms) [ok]: List of various encodings - sanitize dump (2 ms) [ok]: Unblock fairness is kept while pipelining (1 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 (29 ms) [50/96 done]: unit/type/list (14 seconds) Testing unit/cluster/multi-slot-operations [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 128 element sorted set - listpack (1627 ms) [ok]: WAITAOF both local and replica got AOF enabled at runtime (1902 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (168 ms) [ok]: Broadcast message across a cluster shard while a cluster link is down (102 ms) [ok]: not enough good replicas state change during long script (626 ms) [ok]: allow-stale shebang flag (1 ms) [ok]: reject script do not cause a Lua stack leak (3 ms) [ok]: Consistent eval error reporting (7 ms) [ok]: LUA redis.error_reply API (1 ms) [ok]: LUA redis.error_reply API with empty string (0 ms) [ok]: LUA redis.status_reply API (1 ms) [ok]: LUA test pcall (0 ms) [ok]: LUA test pcall with error (0 ms) [ok]: LUA test pcall with non string/integer arg (0 ms) [ok]: LUA test trim string as expected (1 ms) [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 128 element sorted set - listpack (232 ms) [ok]: ZSETs skiplist implementation backlink consistency test - listpack (17 ms) [ok]: Functions are added to new node on redis-cli cluster add-node (2995 ms) [51/96 done]: unit/scripting (23 seconds) Testing unit/cluster/scripting [ok]: Key lazy expires during key migration (13 ms) [ok]: Coverage: Basic cluster commands (2 ms) [ok]: Test internal secret sync (2 ms) [ok]: Human nodenames are visible in log messages (3538 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - listpack (490 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) [52/96 done]: unit/cluster/human-announced-nodename (6 seconds) Testing unit/cluster/sharded-pubsub [ok]: WAITAOF master sends PING after last write (1202 ms) [ok]: Join a node to the cluster and make sure it gets the same secret (626 ms) [53/96 done]: unit/cluster/misc (4 seconds) Testing unit/cluster/slot-ownership [ok]: Verify the nodes configured with prefer hostname only show hostname for new nodes (3515 ms) [ok]: Test restart will keep hostname information (164 ms) [ok]: Test hostname validation (0 ms) [ok]: BZPOPMIN unblock but the key is expired and then block again - reprocessing command (1004 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) [54/96 done]: unit/cluster/hostnames (7 seconds) Testing integration/aof-multi-part [ok]: Continuous slots distribution (7 ms) [ok]: ADDSLOTS command with several boundary conditions test suite (1 ms) [ok]: ADDSLOTSRANGE command with several boundary conditions test suite (1 ms) [ok]: DELSLOTSRANGE command with several boundary conditions test suite (3 ms) [ok]: WAITAOF master client didn't send any write command (1202 ms) [ok]: Multi Part AOF can't load data when some file missing (109 ms) [ok]: Eval scripts with shebangs and functions default to no cross slots (0 ms) [ok]: Cross slot commands are allowed by default for eval scripts and with allow-cross-slot-keys flag (1 ms) [ok]: Cross slot commands are also blocked if they disagree with pre-declared keys (0 ms) [ok]: Cross slot commands are allowed by default if they disagree with pre-declared keys (1 ms) [ok]: Function no-cluster flag (0 ms) [ok]: Script no-cluster flag (0 ms) [ok]: Multi Part AOF can't load data when the sequence not increase monotonically (108 ms) [55/96 done]: unit/cluster/scripting (2 seconds) Testing integration/aof-race [ok]: Multi Part AOF can't load data when there are blank lines in the manifest file (109 ms) [ok]: Each node has two links with each peer (3 ms) [ok]: Validate cluster links format (1 ms) [ok]: Multi Part AOF can't load data when there is a duplicate base file (109 ms) [ignore]: experimental test not allowed [56/96 done]: unit/cluster/multi-slot-operations (3 seconds) Testing integration/aof [ok]: BZPOPMIN with zero timeout should block indefinitely (1001 ms) [ok]: MULTI/EXEC is isolated from the point of view of BZMPOP_MIN (0 ms) [ok]: BZMPOP_MIN with variadic ZADD (1 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (type unknown) (110 ms) [ok]: Unfinished MULTI: Server should start if load-truncated is yes (0 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (missing key) (108 ms) [57/96 done]: integration/aof-race (0 seconds) Testing integration/block-repl [ok]: Multi Part AOF can't load data when the manifest format is wrong (line too short) (109 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]: 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 (0 ms) [ok]: Sharded pubsub publish behavior within multi/exec with write operation on replica (1 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (line too long) (109 ms) [ok]: Multi Part AOF can't load data when the manifest format is wrong (odd parameter) (109 ms) [ok]: Short read + command: Server should start (0 ms) [ok]: Truncated AOF loaded: we expect foo to be equal to 6 now (0 ms) [ok]: Multi Part AOF can't load data when the manifest file is empty (111 ms) [ok]: Join another cluster, make sure clusters sync on the internal secret (2134 ms) [ok]: WAITAOF master client didn't send any command (1201 ms) [ok]: Bad format: Server should have logged an error (1 ms) [ok]: Multi Part AOF can start when no aof and no manifest (228 ms) [ok]: Unfinished MULTI: Server should have logged an error (1 ms) [ok]: Short read: Server should have logged an error (1 ms) [ok]: XRANGE fuzzing (10739 ms) [ok]: XREVRANGE regression test for issue #5006 (1 ms) [ok]: XREAD streamID edge (no-blocking) (0 ms) [ok]: XREAD streamID edge (blocking) (1 ms) [ok]: XADD streamID edge (0 ms) [ok]: Short read: Utility should confirm the AOF is not valid (8 ms) [ok]: Short read: Utility should show the abnormal line num in AOF (7 ms) [ok]: Stress tester for #3343-alike bugs comp: 1 (9381 ms) [ok]: Short read: Utility should be able to fix the AOF (7 ms) [ok]: XTRIM with MAXLEN option basic test (72 ms) [ok]: BZMPOP_MIN with zero timeout should block indefinitely (1002 ms) [ok]: Multi Part AOF can start when we have en empty AOF dir (226 ms) [ok]: XADD with LIMIT consecutive calls (8 ms) [ok]: XTRIM with ~ is limited (7 ms) [ok]: ZSCORE - skiplist (15 ms) [ok]: XTRIM without ~ is not limited (8 ms) [ok]: XTRIM without ~ and with LIMIT (8 ms) [ok]: XTRIM with LIMIT delete entries no more than limit (1 ms) [ok]: ZMSCORE - skiplist (15 ms) [ok]: ZSCORE after a DEBUG RELOAD - skiplist (16 ms) [ok]: Fixed AOF: Server should have been started (1 ms) [ok]: Fixed AOF: Keyspace should contain values that were parseable (0 ms) [ok]: ZSET sorting stresser - skiplist (19 ms) [ok]: XADD with MAXLEN > xlen can propagate correctly (7 ms) [ok]: Multi Part AOF can load data discontinuously increasing sequence (218 ms) [58/96 done]: unit/cluster/sharded-pubsub (3 seconds) Testing integration/convert-ziplist-hash-on-load [ok]: AOF+SPOP: Server should have been started (0 ms) [ok]: AOF+SPOP: Set should have 1 member (0 ms) [ok]: Verify that slot ownership transfer through gossip propagates deletes to replicas (206 ms) [ok]: RDB load ziplist hash: converts to listpack when RDB loading (0 ms) [ok]: XADD with MINID > lastid can propagate correctly (8 ms) [ok]: First server should have role slave after SLAVEOF (1002 ms) [ok]: Multi Part AOF can load data when manifest add new k-v (219 ms) [ok]: AOF+SPOP: Server should have been started (1 ms) [ok]: AOF+SPOP: Set should have 1 member (0 ms) [ok]: RDB load ziplist hash: converts to hash table when hash-max-ziplist-entries is exceeded (0 ms) [ok]: XADD with ~ MAXLEN can propagate correctly (7 ms) [ok]: Multi Part AOF can load data when some AOFs are empty (220 ms) [59/96 done]: integration/convert-ziplist-hash-on-load (1 seconds) Testing integration/convert-ziplist-zset-on-load [ok]: AOF+EXPIRE: Server should have been started (0 ms) [ok]: AOF+EXPIRE: List should be empty (0 ms) [ok]: Migrate the last slot away from a node using redis-cli (3927 ms) [ok]: RDB load ziplist zset: converts to listpack when RDB loading (0 ms) [ok]: XADD with ~ MAXLEN and LIMIT can propagate correctly (8 ms) [ok]: Redis should not try to convert DEL into EXPIREAT for EXPIRE -1 (0 ms) [ok]: Multi Part AOF can load data from old version redis (rdb preamble no) (336 ms) [ok]: RDB load ziplist zset: converts to skiplist when zset-max-ziplist-entries is exceeded (1 ms) [ok]: XADD with ~ MINID can propagate correctly (7 ms) [60/96 done]: integration/convert-ziplist-zset-on-load (0 seconds) Testing integration/convert-zipmap-hash-on-load [61/96 done]: unit/cluster/slot-ownership (3 seconds) Testing integration/corrupt-dump-fuzzer [ok]: RDB load zipmap hash: converts to listpack (0 ms) [ok]: XADD with ~ MINID and LIMIT can propagate correctly (8 ms) [62/96 done]: unit/cluster/internal-secret (8 seconds) Testing integration/corrupt-dump [ok]: ZRANGEBYSCORE fuzzy test, 100 ranges in 100 element sorted set - skiplist (1252 ms) [ok]: Multi Part AOF can load data from old version redis (rdb preamble yes) (323 ms) [ok]: ZRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (128 ms) [ok]: RDB load zipmap hash: converts to hash table when hash-max-ziplist-entries is exceeded (0 ms) [ok]: corrupt payload: #7445 - with sanitize (215 ms) [ok]: XTRIM with ~ MAXLEN can propagate correctly (8 ms) [ok]: Multi Part AOF can continue the upgrade from the interrupted upgrade state (220 ms) [ok]: ZREMRANGEBYLEX fuzzy test, 100 ranges in 100 element sorted set - skiplist (175 ms) [ok]: ZSETs skiplist implementation backlink consistency test - skiplist (13 ms) [ok]: corrupt payload: hash with valid zip list header, invalid entry len (218 ms) [ok]: XADD can CREATE an empty stream (1 ms) [ok]: XSETID can set a specific ID (0 ms) [ok]: RDB load zipmap hash: converts to hash table when hash-max-ziplist-value is exceeded (0 ms) [ok]: XSETID cannot SETID with smaller ID (1 ms) [ok]: XSETID cannot SETID on non-existent key (0 ms) [ok]: XSETID cannot run with an offset but without a maximal tombstone (0 ms) [ok]: XSETID cannot run with a maximal tombstone but without an offset (0 ms) [ok]: XSETID errors on negstive offset (0 ms) [ok]: XSETID cannot set the maximal tombstone with larger ID (1 ms) [ok]: XSETID cannot set the offset to less than the length (0 ms) [ok]: XSETID cannot set smaller ID than current MAXDELETEDID (1 ms) [ok]: Multi Part AOF can be loaded correctly when both server dir and aof dir contain old AOF (221 ms) [63/96 done]: integration/convert-zipmap-hash-on-load (1 seconds) Testing integration/dismiss-mem [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) [ok]: XADD advances the entries-added counter and sets the recorded-first-entry-id (0 ms) [ok]: XDEL/TRIM are reflected by recorded first entry (1 ms) [ok]: Maximum XDEL ID behaves correctly (1 ms) [ok]: XADD with artial ID with maximal seq (0 ms) [ok]: corrupt payload: invalid zlbytes header (223 ms) [ok]: ZSETs ZRANK augmented skip list stress testing - skiplist (469 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]: corrupt payload: valid zipped hash header, dup records (224 ms) [ok]: Multi Part AOF can upgrade when when two redis share the same server dir (redis1) (104 ms) [ok]: Empty stream can be rewrite into AOF correctly (104 ms) [ok]: Multi Part AOF can upgrade when when two redis share the same server dir (redis2) (104 ms) [ok]: Stream can be rewrite into AOF correctly after XDEL lastid (104 ms) [ok]: corrupt payload: hash listpackex with invalid string TTL (223 ms) [ok]: Multi Part AOF can upgrade when when two redis share the same server dir (628 ms) [ok]: XGROUP HELP should not have unexpected options (0 ms) [ok]: XINFO HELP should not have unexpected options (0 ms) [ok]: corrupt payload: hash listpackex with TTL large than EB_EXPIRE_TIME_MAX (224 ms) [64/96 done]: unit/type/stream (20 seconds) Testing integration/failover [ok]: Multi Part AOF can handle appendfilename contains whitespaces (329 ms) [ok]: corrupt payload: hash listpackex with unordered TTL fields (224 ms) [ok]: failover command fails without connected replica (0 ms) [ok]: WAITAOF when replica switches between masters, fsync: no (3335 ms) [ok]: Multi Part AOF can create BASE (RDB format) when redis starts from empty (223 ms) [ok]: corrupt payload: hash listpackex field without TTL should not be followed by field with TTL (224 ms) [ok]: dismiss all data types memory (1141 ms) [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 (0 ms) [ok]: BZPOPMIN with variadic ZADD (0 ms) [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 (0 ms) [ok]: Multi Part AOF can create BASE (AOF format) when redis starts from empty (222 ms) [ok]: corrupt payload: hash hashtable with TTL large than EB_EXPIRE_TIME_MAX (223 ms) [ok]: redis-cli -4 --cluster create using 127.0.0.1 with cluster-port (1921 ms) [ok]: Make sure aof manifest appendonly.aof.manifest not in aof directory (0 ms) [ok]: dismiss client output buffer (372 ms) [ok]: corrupt payload: quicklist big ziplist prev len (214 ms) [ok]: Verify that multiple primaries mark replica as failed (6245 ms) [ok]: dismiss client query buffer (204 ms) [65/96 done]: unit/cluster/failure-marking (14 seconds) Testing integration/logging [ok]: corrupt payload: quicklist small ziplist prev len (224 ms) [ok]: AOF enable will create manifest file (529 ms) [ok]: Crash report generated on SIGABRT (102 ms) [ok]: corrupt payload: quicklist ziplist wrong count (223 ms) [ok]: failover command to specific replica works (857 ms) [ok]: Crash report generated on DEBUG SEGFAULT (16 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]: corrupt payload: #3080 - quicklist (225 ms) [ok]: Stacktraces generated on SIGALRM (102 ms) [ok]: corrupt payload: quicklist with empty ziplist (223 ms) [66/96 done]: integration/logging (0 seconds) Testing integration/psync2-master-restart [ok]: redis-cli -4 --cluster add-node using 127.0.0.1 with cluster-port (1174 ms) [ok]: corrupt payload: quicklist encoded_len is 0 (214 ms) [ok]: corrupt payload: quicklist listpack entry start with EOF (223 ms) [ok]: failover command to any replica works (856 ms) [ok]: dismiss replication backlog (1323 ms) [ok]: corrupt payload: #3080 - ziplist (224 ms) [67/96 done]: integration/dismiss-mem (3 seconds) Testing integration/psync2-pingoff [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 (2 ms) [ok]: corrupt payload: load corrupted rdb with no CRC - #3505 (107 ms) [ok]: failover to a replica with force works (453 ms) [ok]: BZMPOP propagate as pop with count command to replica (193 ms) [ok]: BZMPOP should not blocks on non key arguments - #10762 (1 ms) [ok]: WAITAOF when replica switches between masters, fsync: everysec (2331 ms) [ok]: AOF multiple rewrite failures will open multiple INCR AOFs (1456 ms) [ok]: corrupt payload: load corrupted rdb with empty keys (218 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields when offset is 0 (113 ms) [ok]: corrupt payload: load corrupted rdb with empty keys (219 ms) [ok]: ZSET skiplist order consistency when elements are moved (504 ms) [ok]: ZRANGESTORE basic (1 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 (1 ms) [ok]: ZRANGESTORE BYSCORE REV LIMIT (0 ms) [ok]: ZRANGE BYSCORE REV LIMIT (0 ms) [ok]: ZRANGESTORE - src key missing (0 ms) [ok]: ZRANGESTORE - src key wrong type (0 ms) [ok]: ZRANGESTORE - empty range (0 ms) [ok]: ZRANGESTORE BYLEX - empty range (0 ms) [ok]: ZRANGESTORE BYSCORE - empty range (0 ms) [ok]: ZRANGE BYLEX (0 ms) [ok]: corrupt payload: listpack invalid size header (224 ms) [ok]: ZRANGESTORE invalid syntax (0 ms) [ok]: ZRANGESTORE with zset-max-listpack-entries 0 #10767 case (1 ms) [ok]: ZRANGESTORE with zset-max-listpack-entries 1 dst key should use skiplist encoding (0 ms) [ok]: ZRANGE invalid syntax (0 ms) [ok]: ZRANDMEMBER - listpack (5 ms) [ok]: ZRANDMEMBER - skiplist (4 ms) [ok]: ZRANDMEMBER with RESP3 (0 ms) [ok]: ZRANDMEMBER count of 0 is handled correctly (0 ms) [ok]: ZRANDMEMBER with against non existing key (0 ms) [ok]: ZRANDMEMBER count overflow (1 ms) [ok]: ZRANDMEMBER count of 0 is handled correctly - emptyarray (0 ms) [ok]: ZRANDMEMBER with against non existing key - emptyarray (0 ms) [ok]: failover with timeout aborts if replica never catches up (581 ms) [ok]: AOF rewrite doesn't open new aof when AOF turn off (529 ms) [ok]: failovers can be aborted (51 ms) [ok]: corrupt payload: listpack too long entry len (121 ms) [ok]: ZRANDMEMBER with - skiplist (156 ms) [ok]: corrupt payload: listpack very long entry len (120 ms) [ok]: AOF enable/disable auto gc (208 ms) [ok]: ZRANDMEMBER with - listpack (153 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) [68/96 done]: unit/type/zset (18 seconds) Testing integration/psync2-reg [ok]: AOF can produce consecutive sequence number after reload (139 ms) [ok]: corrupt payload: listpack too long entry prev len (224 ms) [ok]: PSYNC2 pingoff: setup (1002 ms) [ok]: PSYNC2 pingoff: write and wait replication (1 ms) [ok]: failover aborts if target rejects sync request (453 ms) [ok]: AOF fsync always barrier issue (5295 ms) [ok]: corrupt payload: stream with duplicate consumers (226 ms) [ok]: GETEX should not append to AOF (1 ms) [ok]: AOF enable during BGSAVE will not write data util AOFRW finish (407 ms) [ok]: WAITAOF when replica switches between masters, fsync: always (1326 ms) [ok]: corrupt payload: hash ziplist with duplicate records (223 ms) [ok]: Unknown command: Server should have logged an error (1 ms) [ok]: slave buffer are counted correctly (32124 ms) [ok]: corrupt payload: hash listpack with duplicate records (224 ms) [ok]: AOF+LMPOP/BLMPOP: pop elements from the list (101 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields with data (1115 ms) [ok]: corrupt payload: hash listpack with duplicate records - convert (120 ms) [ok]: AOF will trigger limit when AOFRW fails many times (585 ms) [ok]: setup replication for following tests (101 ms) [ok]: AOF+LMPOP/BLMPOP: after pop elements from the list (1 ms) [ok]: corrupt payload: hash ziplist uneven record count (224 ms) [ok]: redis-cli -4 --cluster create using localhost with cluster-port (1919 ms) [69/96 done]: integration/failover (5 seconds) Testing integration/psync2 [ok]: corrupt payload: hash duplicate records (224 ms) [ok]: PSYNC2 #3899 regression: setup (1003 ms) [ok]: AOF+ZMPOP/BZMPOP: pop elements from the zset (102 ms) [ok]: corrupt payload: hash empty zipmap (224 ms) [ok]: Disconnect link when send buffer limit reached (8958 ms) [ok]: AOF+ZMPOP/BZMPOP: after pop elements from the zset (0 ms) [ok]: corrupt payload: fuzzer findings - NPD in streamIteratorGetID (121 ms) [ok]: WAIT and WAITAOF replica multiple clients unblock - reuse last result (683 ms) [ok]: corrupt payload: fuzzer findings - listpack NPD on invalid stream (120 ms) [ok]: PSYNC2: --- CYCLE 1 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #4 as master (0 ms) [ok]: PSYNC2: Set #0 to replicate from #4 (0 ms) [70/96 done]: unit/wait (32 seconds) Testing integration/rdb [ok]: Generate timestamp annotations in AOF (225 ms) [ok]: corrupt payload: fuzzer findings - NPD in quicklistIndex (224 ms) [ok]: test old version rdb file (0 ms) [ok]: Successfully load AOF which has timestamp annotations inside (0 ms) [ok]: corrupt payload: fuzzer findings - encoded entry header reach outside the allocation (223 ms) [ok]: Link memory increases with publishes (701 ms) [ok]: redis-cli -4 --cluster add-node using localhost with cluster-port (1130 ms) [ok]: RDB encoding loading test (4 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: corrupt payload: fuzzer findings - invalid ziplist encoding (214 ms) [ok]: Stress tester for #3343-alike bugs comp: 0 (8753 ms) [ok]: Server started empty with non-existing RDB file (0 ms) [ok]: Link memory resets after publish messages flush (326 ms) [ok]: PSYNC2: Partial resync after Master restart using RDB aux fields with expire (1735 ms) [ok]: corrupt payload: fuzzer findings - hash crash (223 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [71/96 done]: unit/cluster/cli (20 seconds) Testing integration/redis-benchmark [ok]: Server started empty with empty RDB file (0 ms) [ok]: benchmark: set,get (4 ms) [ok]: benchmark: connecting using URI set,get (4 ms) [ok]: benchmark: connecting using URI with authentication set,get (4 ms) [72/96 done]: unit/cluster/links (15 seconds) Testing integration/redis-cli [ok]: Truncate AOF to specific timestamp (704 ms) [ok]: benchmark: full test suite (65 ms) [ok]: benchmark: multi-thread set,get (7 ms) [ok]: corrupt payload: fuzzer findings - uneven entry count in hash (224 ms) [ok]: PSYNC2: Set #1 to replicate from #3 (0 ms) [ok]: benchmark: pipelined full set,get (88 ms) [ok]: benchmark: arbitrary command (5 ms) [ok]: Test RDB stream encoding (62 ms) [ok]: Test RDB stream encoding - sanitize dump (6 ms) [ok]: benchmark: keyspace length (42 ms) [ok]: benchmark: clients idle mode should return error when reached maxclients limit (2 ms) [ok]: benchmark: read last argument from stdin (5 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [73/96 done]: integration/redis-benchmark (0 seconds) Testing integration/replication-2 [ok]: corrupt payload: fuzzer findings - invalid read in lzf_decompress (224 ms) [ok]: Server should not start if RDB file can't be open (1 ms) [ok]: Fuzzing dense/sparse encoding: Redis should always detect errors (43173 ms) [ok]: PFADD, PFCOUNT, PFMERGE type checking works (0 ms) [ok]: PFMERGE results on the cardinality of union of sets (1 ms) [ok]: PFMERGE on missing source keys will create an empty destkey (0 ms) [ok]: 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 (0 ms) [ok]: Interactive CLI: should find first search result (241 ms) [ok]: Server should not start if RDB is corrupted (1 ms) [ok]: corrupt payload: fuzzer findings - leak in rdbloading due to dup entry in set (214 ms) [ok]: First server should have role slave after SLAVEOF (102 ms) [ok]: If min-slaves-to-write is honored, write is accepted (0 ms) [ok]: No write if min-slaves-to-write is < attached slaves (0 ms) [ok]: If min-slaves-to-write is honored, write is accepted (again) (1 ms) [ok]: Interactive CLI: should find and use the first search result (303 ms) [ok]: corrupt payload: fuzzer findings - empty intset (224 ms) [ok]: Interactive CLI: should be ok if there is no result (121 ms) [ok]: Test FLUSHALL aborts bgsave (291 ms) [ok]: AOF will open a temporary INCR AOF to accumulate data until the first AOFRW success when AOF is dynamically enabled (2517 ms) [ok]: Interactive CLI: upon submitting search, (reverse-i-search) prompt should go away (121 ms) [ok]: bgsave resets the change counter (101 ms) [ok]: corrupt payload: fuzzer findings - zset ziplist entry lensize is 0 (224 ms) [ok]: PSYNC2: Set #2 to replicate from #0 (1 ms) [ok]: AOF rewrite during write load: RDB preamble=no (30815 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: corrupt payload: fuzzer findings - valgrind ziplist prevlen reaches outside the ziplist (224 ms) [ok]: Interactive CLI: should find second search result if user presses ctrl+r again (303 ms) [ok]: Multi Part AOF writes start offset in the manifest (222 ms) [ok]: PFMERGE results with simd (898 ms) [ok]: Multi Part AOF won't add the offset of incr AOF from old version (136 ms) [ok]: corrupt payload: fuzzer findings - valgrind - bad rdbLoadDoubleValue (224 ms) [ok]: Turning off AOF kills the background writing child if any (105 ms) [ok]: Fuzzer corrupt restore payloads - sanitize_dump: no (9357 ms) [ok]: Interactive CLI: should find second search result if user presses ctrl+s (303 ms) [ok]: AOF rewrite of list with listpack encoding, string data (104 ms) [ok]: Multi Part AOF can update master_repl_offset with only startoffset info (224 ms) [ok]: corrupt payload: fuzzer findings - valgrind ziplist prev too big (225 ms) [ok]: AOF rewrite of list with quicklist encoding, string data (118 ms) [ok]: Interactive CLI: should exit reverse search if user presses ctrl+g (181 ms) [ok]: PSYNC2: Full resync after Master restart when too many key expired (1930 ms) [ok]: AOF rewrite of list with listpack encoding, int data (103 ms) [ok]: Multi Part AOF can update master_repl_offset with endoffset info (235 ms) [ok]: corrupt payload: fuzzer findings - lzf decompression fails, avoid valgrind invalid read (222 ms) [ok]: Interactive CLI: should exit reverse search if user presses up arrow (181 ms) [ok]: AOF rewrite of list with quicklist encoding, int data (106 ms) [74/96 done]: integration/psync2-master-restart (7 seconds) Testing integration/replication-3 [ok]: client freed during loading (986 ms) [ok]: AOF rewrite of set with intset encoding, string data (103 ms) [ok]: Interactive CLI: should exit reverse search if user presses right arrow (182 ms) [ok]: Multi Part AOF will add the end offset if we close gracefully the AOF (243 ms) [ok]: corrupt payload: fuzzer findings - stream bad lp_count (222 ms) [ok]: PSYNC2: Set #3 to replicate from #0 (1 ms) [ok]: AOF rewrite of set with hashtable encoding, string data (116 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: corrupt payload: fuzzer findings - stream bad lp_count - unsanitized (120 ms) [ok]: AOF rewrite of set with intset encoding, int data (103 ms) [ok]: Interactive CLI: should exit reverse search if user presses down arrow (181 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: PSYNC2 pingoff: pause replica and promote it (5000 ms) [ok]: EVAL timeout with slow verbatim Lua script from AOF (2241 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]: Interactive CLI: should exit reverse search if user presses left arrow (181 ms) [ok]: corrupt payload: fuzzer findings - stream integrity check issue (223 ms) [ok]: EVAL can process writes from AOF in read-only replicas (222 ms) [ok]: Test redis-check-aof for old style resp AOF (7 ms) [ok]: Test redis-check-aof for old style resp AOF - has data in the same format as manifest (6 ms) [ok]: Test redis-check-aof for old style rdb-preamble AOF (7 ms) [ok]: Test redis-check-aof for Multi Part AOF with resp AOF base (7 ms) [ok]: corrupt payload: fuzzer findings - infinite loop (121 ms) [ok]: Test redis-check-aof for Multi Part AOF with rdb-preamble AOF base (8 ms) [ok]: Test redis-check-aof for Multi Part AOF contains a format error (6 ms) [ok]: Test redis-check-aof only truncates the last file for Multi Part AOF in fix mode (13 ms) [ok]: Test redis-check-aof only truncates the last file for Multi Part AOF in truncate-to-timestamp mode (7 ms) [ok]: Test RDB load info (521 ms) [ok]: AOF rewrite of hash with hashtable encoding, string data (176 ms) [ok]: INCR AOF has accurate start offset when AOFRW (532 ms) [75/96 done]: integration/aof-multi-part (14 seconds) Testing integration/replication-4 [ok]: Interactive CLI: should disable and persist line if user presses tab (243 ms) [ok]: FLUSHDB / FLUSHALL should persist in AOF (7 ms) [ok]: AOF rewrite of hash with listpack encoding, int data (103 ms) [ok]: corrupt payload: fuzzer findings - hash ziplist too long entry len (224 ms) [ok]: AOF rewrite of hash with hashtable encoding, int data (114 ms) [ok]: First server should have role slave after SLAVEOF (1 ms) [ok]: Interactive CLI: should disable and persist search result if user presses tab (242 ms) [ok]: AOF rewrite of zset with listpack encoding, string data (104 ms) [ok]: corrupt payload: fuzzer findings - zset ziplist invalid tail offset (224 ms) [ok]: AOF rewrite of zset with skiplist encoding, string data (125 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: PSYNC2: cluster is consistent after failover (0 ms) [ok]: AOF rewrite of zset with listpack encoding, int data (53 ms) [ok]: corrupt payload: fuzzer findings - negative reply length (120 ms) [ok]: Interactive CLI: should disable and persist line and move the cursor if user presses tab (302 ms) [ok]: AOF rewrite of zset with skiplist encoding, int data (132 ms) [ok]: Interactive CLI: INFO response should be printed raw (61 ms) [ok]: Make the old master a replica of the new one and check conditions (1003 ms) [ok]: replica buffer don't induce eviction (5027 ms) [ok]: AOF rewrite functions (103 ms) [ok]: Interactive CLI: Status reply (60 ms) [ok]: corrupt payload: fuzzer findings - valgrind negative malloc (223 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: Interactive CLI: Integer reply (60 ms) [ok]: Interactive CLI: Bulk reply (60 ms) [ok]: Interactive CLI: Multi-bulk reply (62 ms) [ok]: corrupt payload: fuzzer findings - valgrind invalid read (225 ms) [ok]: BGREWRITEAOF is delayed if BGSAVE is in progress (232 ms) [ok]: BGREWRITEAOF is refused if already in progress (29 ms) [76/96 done]: unit/aofrw (49 seconds) Testing integration/replication-buffer [ok]: Don't rehash if used memory exceeds maxmemory after rehash (151 ms) [ok]: corrupt payload: fuzzer findings - empty hash ziplist (224 ms) [ok]: corrupt payload: fuzzer findings - stream with no records (120 ms) [ok]: Interactive CLI: Parsing quotes (423 ms) [ok]: corrupt payload: fuzzer findings - quicklist ziplist tail followed by extra data which start with 0xff (224 ms) [ok]: Allow changing appendonly config while loading from AOF on startup (1343 ms) [ok]: corrupt payload: fuzzer findings - dict init to huge size (223 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: No write if min-slaves-max-lag is > of the slave lag (3830 ms) [ok]: min-slaves-to-write is ignored by slaves (0 ms) [ok]: Interactive CLI: Subscribed mode (605 ms) [ok]: corrupt payload: fuzzer findings - huge string (225 ms) [ok]: PFCOUNT multiple-keys merge returns cardinality of union #1 (3342 ms) [ok]: Test child sending info (2000 ms) [ok]: corrupt payload: fuzzer findings - stream PEL without consumer (224 ms) [ok]: script won't load anymore if it's in rdb (0 ms) [ok]: corrupt payload: fuzzer findings - stream listpack valgrind issue (120 ms) [ok]: Allow changing appendonly config while loading from RDB on startup (689 ms) [ok]: Interactive non-TTY CLI: Subscribed mode (413 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 (1 ms) [ok]: Non-interactive TTY CLI: Multi-bulk reply (2 ms) [ok]: Non-interactive TTY CLI: Read last argument from pipe (5 ms) [77/96 done]: integration/aof (15 seconds) Testing integration/replication-psync [ok]: Non-interactive TTY CLI: Read last argument from file (3 ms) [ok]: Non-interactive TTY CLI: Escape character in JSON mode (13 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 (1 ms) [ok]: Non-interactive non-TTY CLI: Multi-bulk reply (1 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 (4 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) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - no server (3 ms) [ok]: Non-interactive non-TTY CLI: Test command-line hinting - old server (9 ms) [ok]: All replicas share one global replication buffer rdbchannel=yes (55 ms) [ok]: Replication buffer will become smaller when no replica uses rdbchannel=yes (3 ms) [ok]: corrupt payload: fuzzer findings - stream with bad lpFirst (224 ms) [ok]: client tracking don't cause eviction feedback loop (1292 ms) [ok]: corrupt payload: fuzzer findings - stream listpack lpPrev valgrind issue (120 ms) [ok]: failed bgsave prevents writes (220 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, disabled, reconnect: 0, rdbchannel: no) (8 ms) [ok]: propagation with eviction (97 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: corrupt payload: fuzzer findings - stream with non-integer entry id (225 ms) [ok]: MASTER and SLAVE consistency with expire (3247 ms) [ok]: Master can replicate command longer than client-query-buffer-limit on replica (24 ms) [ok]: corrupt payload: fuzzer findings - empty quicklist (223 ms) [ok]: propagation with eviction in MULTI (96 ms) [ok]: HFE - save and load expired fields, expired soon after, or long after (listpack) (305 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 - empty zset (224 ms) [ok]: lru/lfu value of the key just added (1 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [78/96 done]: unit/maxmemory (48 seconds) Testing integration/replication-rdbchannel [ok]: HFE - save and load expired fields, expired soon after, or long after (dict) (321 ms) [ok]: PFCOUNT multiple-keys merge returns cardinality of union #2 (1567 ms) [ok]: corrupt payload: fuzzer findings - hash with len of 0 (224 ms) [ok]: corrupt payload: fuzzer findings - hash listpack first element too long entry len (224 ms) [ok]: HFE - save and load rdb all fields expired, (listpack) (306 ms) [ok]: Test replication with multiple replicas (rdbchannel enabled on both) (121 ms) [ok]: corrupt payload: fuzzer findings - stream double free listpack when insert dup node to rax returns 0 (224 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: HFE - save and load rdb all fields expired, (dict) (220 ms) [ok]: PFDEBUG GETREG returns the HyperLogLog raw registers (656 ms) [ok]: PFADD / PFCOUNT cache invalidation works (1 ms) [ok]: corrupt payload: fuzzer findings - LCS OOM (224 ms) [79/96 done]: unit/hyperloglog (52 seconds) Testing integration/replication [ok]: corrupt payload: fuzzer findings - gcc asan reports false leak on assert (120 ms) [ok]: Dumping an RDB - functions only: no (1993 ms) [ok]: corrupt payload: fuzzer findings - lpFind invalid access (118 ms) [ok]: Slave enters handshake (0 ms) [ok]: Slave enters wait_bgsave (0 ms) [ok]: PSYNC2 #3899 regression: kill first replica (4 ms) [ok]: save listpack, load dict (417 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: corrupt payload: fuzzer findings - invalid access in ziplist tail prevlen decoding (224 ms) [ok]: corrupt payload: fuzzer findings - zset zslInsert with a NAN score (223 ms) [ok]: test various edge cases of repl topology changes with missing pings at the end (3517 ms) [ok]: save dict, load listpack (420 ms) [ok]: corrupt payload: fuzzer findings - streamLastValidID panic (224 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: Dumping an RDB - functions only: yes (889 ms) [ok]: corrupt payload: fuzzer findings - valgrind fishy value warning (223 ms) [ok]: Scan mode (51 ms) [ok]: active field expiry after load, (listpack) (305 ms) [ok]: PSYNC2: generate load while killing replication links (5001 ms) [ok]: PSYNC2: cluster is consistent after load (x = 65201) (1 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (1 ms) [ok]: PSYNC2: --- CYCLE 2 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #1 as master (0 ms) [ok]: PSYNC2: Set #0 to replicate from #1 (1 ms) [ok]: Test replication with parallel clients writing in different DBs (5259 ms) [ok]: corrupt payload: fuzzer findings - empty set listpack (230 ms) [ok]: All replicas share one global replication buffer rdbchannel=no (47 ms) [ok]: Replication buffer will become smaller when no replica uses rdbchannel=no (3 ms) [ok]: corrupt payload: fuzzer findings - set with duplicate elements causes sdiff to hang (225 ms) [ok]: corrupt payload: fuzzer findings - set with invalid length causes smembers to hang (122 ms) [ok]: active field expiry after load, (dict) (305 ms) [ok]: First server should have role slave after SLAVEOF (100 ms) [ok]: With min-slaves-to-write (1,3): master should be writable (1 ms) [ok]: With min-slaves-to-write (2,3): master should not be writable (0 ms) [ok]: With min-slaves-to-write function without no-write flag (0 ms) [ok]: With not enough good slaves, read in Lua script is still accepted (0 ms) [ok]: corrupt payload: fuzzer findings - set with invalid length causes sscan to hang (121 ms) [ok]: corrupt payload: zset listpack encoded with invalid length causes zscan to hang (120 ms) [ok]: corrupt payload: hash listpack encoded with invalid length causes hscan to hang (121 ms) [80/96 done]: integration/corrupt-dump (17 seconds) Testing integration/shutdown [ok]: PSYNC2: Set #4 to replicate from #1 (0 ms) [ok]: lazy field expiry after load, (listpack) (504 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: MASTER and SLAVE dataset should be identical after complex ops (5194 ms) [81/96 done]: integration/replication-2 (10 seconds) [ok]: lazy field expiry after load, (dict) (504 ms) [ok]: PSYNC2: Set #2 to replicate from #4 (0 ms) [ok]: Connecting as a replica (2166 ms) [ok]: load un-expired items below and above rax-list boundary, (listpack) (222 ms) [ok]: Shutting down master waits for replica to catch up (sigterm) (1879 ms) [ok]: load un-expired items below and above rax-list boundary, (dict) (223 ms) [82/96 done]: integration/rdb (12 seconds) [ok]: ziplist implementation: value encoding and backlink (11392 ms) [ok]: Piping raw protocol (890 ms) [ok]: Options -X with illegal argument (4 ms) [ok]: DUMP RESTORE with -x option (9 ms) [ok]: DUMP RESTORE with -X option (8 ms) [ok]: Send eval command by using --eval option (2 ms) [ok]: PSYNC2: Set #3 to replicate from #0 (1 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: Chained replicas disconnect when replica re-connect with the same master (2913 ms) [ok]: Fuzzer corrupt restore payloads - sanitize_dump: yes (9978 ms) [83/96 done]: integration/corrupt-dump-fuzzer (20 seconds) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: Slave is able to evict keys created in writable slaves (6003 ms) [ok]: Writable replica doesn't return expired keys (101 ms) [ok]: PFCOUNT updates cache on readonly replica (0 ms) [ok]: PFCOUNT doesn't use expired key on readonly replica (101 ms) [ok]: Replication backlog size can outgrow the backlog limit config rdbchannel=yes (1954 ms) [ok]: Interactive CLI: db_num showed in redis-cli after reconnected (625 ms) [84/96 done]: integration/redis-cli (12 seconds) [85/96 done]: integration/replication-3 (10 seconds) [ok]: PSYNC2: cluster is consistent after failover (1 ms) [ok]: Test replication partial resync: ok psync (diskless: no, disabled, reconnect: 1, rdbchannel: no) (6319 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [86/96 done]: integration/psync2-pingoff (16 seconds) [ok]: With min-slaves-to-write: master not writable with lagged slave (3740 ms) [ok]: Test replication with multiple replicas (rdbchannel enabled on one of them) (5866 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: Shutting down master waits for replica to catch up (shutdown) (1772 ms) [ok]: Test rdbchannel is not used if repl-diskless-sync config is disabled on master (113 ms) [ok]: Slave should be able to synchronize with the master (100 ms) [ok]: Detect write load to master (1 ms) [ok]: First server should have role slave after SLAVEOF (101 ms) [ok]: Replication of an expired key does not delete the expired key (532 ms) [ok]: PSYNC2 #3899 regression: kill first replica (0 ms) [ok]: First server should have role slave after SLAVEOF (0 ms) [ok]: Replica could use replication buffer (beyond backlog config) for partial resynchronization rdbchannel=yes (2139 ms) [ok]: Test replica state should start with wait_bgsave (202 ms) [ok]: Test replica state advances to send_bulk_and_stream when rdbchannel connects (12 ms) [ok]: Test replica rdbchannel client has SC flag on client list output (0 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: PSYNC2 #3899 regression: kill first replica (1 ms) [ok]: Shutting down master waits for replica timeout (1862 ms) [ok]: Replication backlog memory will become smaller if disconnecting with replica rdbchannel=yes (785 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: Shutting down master waits for replica then fails (1236 ms) [ok]: Shutting down master waits for replica then aborted (524 ms) [87/96 done]: integration/shutdown (7 seconds) [ok]: Test replication with blocking lists and sorted sets operations (25003 ms) [88/96 done]: integration/block-repl (27 seconds) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 126557) (0 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (2 ms) [ok]: PSYNC2: --- CYCLE 3 --- (0 ms) [ok]: PSYNC2: [NEW LAYOUT] Set #0 as master (0 ms) [ok]: PSYNC2: Set #4 to replicate from #0 (0 ms) [ok]: Slave is able to detect timeout during handshake (0 ms) [ok]: Replication backlog size can outgrow the backlog limit config rdbchannel=no (1907 ms) [ok]: ziplist implementation: encoding stress testing (6474 ms) [89/96 done]: unit/type/list-3 (47 seconds) [ok]: Set instance A as slave of B (101 ms) [ok]: INCRBYFLOAT replication, should not remove expire (1 ms) [ok]: GETSET replication (1 ms) [ok]: BRPOPLPUSH replication, when blocking against empty list (2 ms) [ok]: BRPOPLPUSH replication, list exists (1 ms) [ok]: BLMOVE (left, left) replication, when blocking against empty list (2 ms) [ok]: BLMOVE (left, left) replication, list exists (1 ms) [ok]: BLMOVE (left, right) replication, when blocking against empty list (1 ms) [ok]: BLMOVE (left, right) replication, list exists (2 ms) [ok]: BLMOVE (right, left) replication, when blocking against empty list (1 ms) [ok]: BLMOVE (right, left) replication, list exists (1 ms) [ok]: BLMOVE (right, right) replication, when blocking against empty list (1 ms) [ok]: BLMOVE (right, right) replication, list exists (1 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (1 ms) [ok]: BLPOP followed by role change, issue #2473 (103 ms) [ok]: PSYNC2: Set #1 to replicate from #0 (0 ms) [ok]: Test replica state advances to online when fullsync is completed (4144 ms) [ok]: Second server should have role master at first (0 ms) [ok]: SLAVEOF should start with link status "down" (1 ms) [ok]: The role should immediately be changed to "replica" (0 ms) [ok]: PSYNC2 #3899 regression: kill chained replica (0 ms) [ok]: Sync should have transferred keys from master (0 ms) [ok]: The link status should be up (1 ms) [ok]: SET on the master should immediately propagate (0 ms) [ok]: FLUSHDB / FLUSHALL should replicate (182 ms) [ok]: ROLE in master reports master with a slave (0 ms) [ok]: ROLE in slave reports slave in connected state (1 ms) [ok]: PSYNC2 #3899 regression: verify consistency (19 ms) [ok]: PSYNC2: Set #2 to replicate from #1 (1 ms) [ok]: Replica could use replication buffer (beyond backlog config) for partial resynchronization rdbchannel=no (2140 ms) [90/96 done]: integration/psync2-reg (23 seconds) [ok]: PSYNC2: Set #3 to replicate from #1 (0 ms) [ok]: Replication backlog memory will become smaller if disconnecting with replica rdbchannel=no (984 ms) [ok]: Test replication partial resync: no backlog (diskless: no, disabled, reconnect: 1, rdbchannel: no) (7867 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [ok]: PSYNC2: cluster is consistent after failover (1 ms) [ok]: Replication: commands with many arguments (issue #1221) (9852 ms) [ok]: Partial resynchronization is successful even client-output-buffer-limit is less than repl-backlog-size rdbchannel=yes (3136 ms) [ok]: spopwithcount rewrite srem command (76 ms) [ok]: The update of replBufBlock's repl_offset is ok - Regression test for #11666 (1 ms) [ok]: Replication of SPOP command -- alsoPropagate() API (738 ms) [ok]: Replica client-output-buffer size is limited to backlog_limit/16 when no replication data is pending rdbchannel=yes (1125 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) [91/96 done]: integration/replication-4 (22 seconds) [ok]: Test master memory does not increase during replication (6830 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 192462) (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]: PSYNC2: Set #1 to replicate from #4 (0 ms) [ok]: PSYNC2: Set #2 to replicate from #3 (0 ms) [ok]: PSYNC2: Set #3 to replicate from #4 (0 ms) [ok]: PSYNC2: cluster is consistent after failover (0 ms) [ok]: Partial resynchronization is successful even client-output-buffer-limit is less than repl-backlog-size rdbchannel=no (3137 ms) [ok]: Test replication stream buffer becomes full on replica (2426 ms) [ok]: The update of replBufBlock's repl_offset is ok - Regression test for #11666 (1 ms) [ok]: Replica client-output-buffer size is limited to backlog_limit/16 when no replication data is pending rdbchannel=no (1125 ms) [92/96 done]: integration/replication-buffer (25 seconds) [ok]: Test replication stream buffer config replica-full-sync-buffer-limit (1156 ms) [ok]: Test replication partial resync: ok after delay (diskless: no, disabled, reconnect: 1, rdbchannel: no) (9510 ms) Waiting for process 18989 to exit... [ok]: Slave should be able to synchronize with the master (101 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 = 264608) (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 #2 as master (0 ms) [ok]: PSYNC2: Set #0 to replicate from #3 (0 ms) Waiting for process 18989 to exit... [ok]: PSYNC2: Set #4 to replicate from #2 (0 ms) Waiting for process 18989 to exit... [ok]: PSYNC2: Set #1 to replicate from #2 (1 ms) [ok]: PSYNC2: Set #3 to replicate from #2 (0 ms) [ok]: PSYNC2: cluster is consistent after failover (0 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=no, replica diskless=disabled, rdbchannel=no (17944 ms) [ok]: Test master disconnects replica when output buffer limit is reached (4625 ms) [ok]: PSYNC2: generate load while killing replication links (5000 ms) [ok]: PSYNC2: cluster is consistent after load (x = 333209) (0 ms) [ok]: PSYNC2: total sum of full synchronizations is exactly 4 (1 ms) [ok]: PSYNC2: Bring the master back again for next test (2 ms) [ok]: Test replication partial resync: backlog expired (diskless: no, disabled, reconnect: 1, rdbchannel: no) (9451 ms) [ok]: PSYNC2: Partial resync after restart using RDB aux fields (207 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, reconnect: 0, rdbchannel: no) (6 ms) [ok]: Test replication recovers after output buffer failures (3580 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [93/96 done]: integration/psync2 (43 seconds) [ok]: Test replication partial resync: ok psync (diskless: no, swapdb, reconnect: 1, rdbchannel: no) (6312 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [ok]: Test master continues RDB delivery if not all replicas are dropped (8578 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=no, replica diskless=swapdb, rdbchannel=no (17650 ms) [ok]: Test replication partial resync: no backlog (diskless: no, swapdb, reconnect: 1, rdbchannel: no) (7882 ms) [ok]: Slave should be able to synchronize with the master (101 ms) [ok]: Detect write load to master (0 ms) [ok]: Test master aborts rdb delivery if all replicas are dropped (6017 ms) [ok]: Test replica recovers when rdb channel connection is killed (691 ms) [ok]: Test replica recovers when main channel connection is killed (703 ms) [ok]: Test replica recovers connection failures (3401 ms) [ok]: Test master connection drops while streaming repl buffer into the db (2369 ms) [ok]: Test replication partial resync: ok after delay (diskless: no, swapdb, reconnect: 1, rdbchannel: no) (9450 ms) [ok]: Slave should be able to synchronize with the master (102 ms) [ok]: Detect write load to master (0 ms) [ok]: Test main channel connection drops while loading rdb (disk based) (1771 ms) [ok]: Test main channel connection drops while loading rdb (diskless) (1355 ms) [ok]: Test replicaof command while streaming repl buffer into the db (2287 ms) [94/96 done]: integration/replication-rdbchannel (66 seconds) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=yes, replica diskless=disabled, rdbchannel=yes (17953 ms) [ok]: Test replication partial resync: backlog expired (diskless: no, swapdb, reconnect: 1, rdbchannel: no) (9445 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, disabled, reconnect: 0, rdbchannel: yes) (44 ms) [ok]: Slave should be able to synchronize with the master (1861 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, disabled, reconnect: 1, rdbchannel: yes) (6386 ms) [ok]: Slave should be able to synchronize with the master (804 ms) [ok]: Detect write load to master (0 ms) [ok]: Connect multiple replicas at the same time (issue #141), master diskless=yes, replica diskless=swapdb, rdbchannel=yes (17376 ms) [ok]: Test replication partial resync: no backlog (diskless: yes, disabled, reconnect: 1, rdbchannel: yes) (7899 ms) [ok]: Slave should be able to synchronize with the master (844 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, disabled, reconnect: 1, rdbchannel: yes) (9460 ms) [ok]: Slave should be able to synchronize with the master (805 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, disabled, reconnect: 1, rdbchannel: yes) (9695 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, disabled, reconnect: 0, rdbchannel: no) (44 ms) [ok]: Slave should be able to synchronize with the master (805 ms) [ok]: Detect write load to master (0 ms) [ok]: Master stream is correctly processed while the replica has a script in -BUSY state (32065 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, disabled, reconnect: 1, rdbchannel: no) (6345 ms) [ok]: Diskless load swapdb (different replid): new database is exposed after swapping (0 ms) [ok]: Diskless load swapdb (different replid): replica enter loading rdbchannel=no (161 ms) [ok]: Diskless load swapdb (different replid): old database is exposed after replication fails rdbchannel=no (0 ms) [ok]: Slave should be able to synchronize with the master (805 ms) [ok]: Detect write load to master (0 ms) [ok]: Diskless load swapdb (async_loading): new database is exposed after swapping (0 ms) [ok]: Diskless load swapdb (async_loading): replica enter async_loading (115 ms) [ok]: Diskless load swapdb (async_loading): old database is exposed while async replication is in progress (425 ms) [ok]: Busy script during async loading (628 ms) [ok]: Blocked commands and configs during async-loading (121 ms) [ok]: Diskless load swapdb (async_loading): old database is exposed after async replication fails (0 ms) Waiting for process 22142 to exit... Waiting for process 22142 to exit... Waiting for process 22142 to exit... [ok]: Test replication partial resync: no backlog (diskless: yes, disabled, reconnect: 1, rdbchannel: no) (7916 ms) Waiting for process 22142 to exit... Waiting for process 22142 to exit... [ok]: Slave should be able to synchronize with the master (804 ms) [ok]: Detect write load to master (1 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, disabled, reconnect: 1, rdbchannel: no) (9479 ms) [ok]: Slave should be able to synchronize with the master (1941 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, disabled, reconnect: 1, rdbchannel: no) (10629 ms) [ok]: Slave should be able to synchronize with the master (1841 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: yes, swapdb, reconnect: 0, rdbchannel: yes) (96 ms) [ok]: Slave should be able to synchronize with the master (805 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, swapdb, reconnect: 1, rdbchannel: yes) (6287 ms) [ok]: diskless loading short read (32303 ms) [ok]: Slave should be able to synchronize with the master (819 ms) [ok]: Detect write load to master (0 ms) [ok]: diskless no replicas drop during rdb pipe (6966 ms) [ok]: Test replication partial resync: no backlog (diskless: yes, swapdb, reconnect: 1, rdbchannel: yes) (7906 ms) [ok]: diskless slow replicas drop during rdb pipe (3532 ms) [ok]: Slave should be able to synchronize with the master (1854 ms) [ok]: Detect write load to master (0 ms) [ok]: diskless fast replicas drop during rdb pipe (6860 ms) [ok]: diskless all replicas drop during rdb pipe (1104 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, swapdb, reconnect: 1, rdbchannel: yes) (9427 ms) [ok]: Slave should be able to synchronize with the master (864 ms) [ok]: Detect write load to master (0 ms) [ok]: diskless timeout replicas drop during rdb pipe (6887 ms) [ok]: diskless replication child being killed is collected (1507 ms) [ok]: replication child dies when parent is killed - diskless: yes (1778 ms) [ok]: replication child dies when parent is killed - diskless: no (1553 ms) [ok]: diskless replication read pipe cleanup (756 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, swapdb, reconnect: 1, rdbchannel: yes) (9414 ms) [ok]: Slave should be able to synchronize with the master (816 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: no reconnection, just sync (diskless: yes, swapdb, reconnect: 0, rdbchannel: no) (40 ms) [ok]: replicaof right after disconnection (1733 ms) [ok]: Slave should be able to synchronize with the master (804 ms) [ok]: Detect write load to master (0 ms) [ok]: Kill rdb child process if its dumping RDB is not useful (1021 ms) [ok]: Don't disconnect with replicas before loading transferred RDB when full sync (1 ms) [ok]: Discard cache master before loading transferred RDB when full sync (104 ms) [ok]: replica can handle EINTR if use diskless load (647 ms) [ok]: replica do not write the reply to the replication link - SYNC (_addReplyToBufferOrList) (104 ms) [ok]: replica do not write the reply to the replication link - SYNC (addReplyDeferredLen) (101 ms) [ok]: replica do not write the reply to the replication link - PSYNC (_addReplyToBufferOrList) (118 ms) [ok]: replica do not write the reply to the replication link - PSYNC (addReplyDeferredLen) (103 ms) [ok]: PSYNC with wrong offset should throw error (1 ms) [ok]: Test replication with lazy expire (111 ms) [ok]: Test replication partial resync: ok psync (diskless: yes, swapdb, reconnect: 1, rdbchannel: no) (6343 ms) [ok]: Replica should reply LOADING while flushing a large db (disklessload: disabled) (3454 ms) [ok]: Slave should be able to synchronize with the master (1809 ms) [ok]: Detect write load to master (0 ms) [ok]: Replica should reply LOADING while flushing a large db (disklessload: on-empty-db) (3447 ms) [ok]: Allow appendonly config change while loading rdb on slave (2263 ms) [ok]: Replica flushes db lazily when replica-lazy-flush enabled (102 ms) [ok]: Test replication with functions when repl-diskless-load is set to on-empty-db (111 ms) [95/96 done]: integration/replication (209 seconds) [ok]: Test replication partial resync: no backlog (diskless: yes, swapdb, reconnect: 1, rdbchannel: no) (7987 ms) [ok]: Slave should be able to synchronize with the master (852 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: ok after delay (diskless: yes, swapdb, reconnect: 1, rdbchannel: no) (9408 ms) [ok]: Slave should be able to synchronize with the master (1869 ms) [ok]: Detect write load to master (0 ms) [ok]: Test replication partial resync: backlog expired (diskless: yes, swapdb, reconnect: 1, rdbchannel: no) (10497 ms) [96/96 done]: integration/replication-psync (237 seconds) Testing solo test [ignore]: BIT pos larger than UINT_MAX: large memory flag not provided [ignore]: SETBIT values larger than UINT32_MAX and lzf_compress/lzf_decompress correctly: large memory flag not provided [96/96 done]: bitops-large-memory (0 seconds) Testing solo test [96/96 done]: defrag (3 seconds) Testing solo test [ignore]: XADD one huge field: large memory flag not provided [ignore]: XADD one huge field - 1: large memory flag not provided [ignore]: several XADD big fields: large memory flag not provided [ignore]: single XADD big fields: large memory flag not provided [ignore]: hash with many big fields: large memory flag not provided [ignore]: hash with one huge field: large memory flag not provided [96/96 done]: violations (1 seconds) Testing solo test [96/96 done]: list-large-memory (0 seconds) Testing solo test [96/96 done]: set-large-memory (1 seconds) The End Execution time of different units: 1 seconds - unit/info-command 1 seconds - unit/acl-v2 2 seconds - unit/bitfield 1 seconds - unit/keyspace 3 seconds - unit/acl 3 seconds - unit/bitops 3 seconds - unit/info 3 seconds - unit/auth 1 seconds - unit/limits 4 seconds - unit/functions 1 seconds - unit/networking 0 seconds - unit/oom-score-adj 3 seconds - unit/memefficiency 1 seconds - unit/pause 0 seconds - unit/printver 5 seconds - unit/multi 7 seconds - unit/lazyfree 8 seconds - unit/latency-monitor 2 seconds - unit/pubsub 10 seconds - unit/introspection-2 0 seconds - unit/quit 9 seconds - unit/introspection 1 seconds - unit/pubsubshard 1 seconds - unit/replybufsize 4 seconds - unit/protocol 1 seconds - unit/shutdown 1 seconds - unit/tls 1 seconds - unit/slowlog 0 seconds - unit/violations 2 seconds - unit/tracking 15 seconds - unit/client-eviction 6 seconds - unit/querybuf 0 seconds - unit/type/incr 16 seconds - unit/expire 14 seconds - unit/obuf-limits 13 seconds - unit/other 3 seconds - unit/type/hash 8 seconds - unit/sort 5 seconds - unit/type/stream-cgroups 24 seconds - unit/dump 10 seconds - unit/type/hash-field-expire 15 seconds - unit/scan 26 seconds - unit/info-keysizes 0 seconds - unit/cluster/cluster-response-tls 3 seconds - unit/cluster/announced-endpoints 11 seconds - unit/type/list-2 29 seconds - unit/geo 12 seconds - unit/type/set 7 seconds - unit/type/string 14 seconds - unit/type/list 23 seconds - unit/scripting 6 seconds - unit/cluster/human-announced-nodename 4 seconds - unit/cluster/misc 7 seconds - unit/cluster/hostnames 2 seconds - unit/cluster/scripting 3 seconds - unit/cluster/multi-slot-operations 0 seconds - integration/aof-race 3 seconds - unit/cluster/sharded-pubsub 1 seconds - integration/convert-ziplist-hash-on-load 0 seconds - integration/convert-ziplist-zset-on-load 3 seconds - unit/cluster/slot-ownership 8 seconds - unit/cluster/internal-secret 1 seconds - integration/convert-zipmap-hash-on-load 20 seconds - unit/type/stream 14 seconds - unit/cluster/failure-marking 0 seconds - integration/logging 3 seconds - integration/dismiss-mem 18 seconds - unit/type/zset 5 seconds - integration/failover 32 seconds - unit/wait 20 seconds - unit/cluster/cli 15 seconds - unit/cluster/links 0 seconds - integration/redis-benchmark 7 seconds - integration/psync2-master-restart 14 seconds - integration/aof-multi-part 49 seconds - unit/aofrw 15 seconds - integration/aof 48 seconds - unit/maxmemory 52 seconds - unit/hyperloglog 17 seconds - integration/corrupt-dump 10 seconds - integration/replication-2 12 seconds - integration/rdb 20 seconds - integration/corrupt-dump-fuzzer 12 seconds - integration/redis-cli 10 seconds - integration/replication-3 16 seconds - integration/psync2-pingoff 7 seconds - integration/shutdown 27 seconds - integration/block-repl 47 seconds - unit/type/list-3 23 seconds - integration/psync2-reg 22 seconds - integration/replication-4 25 seconds - integration/replication-buffer 43 seconds - integration/psync2 66 seconds - integration/replication-rdbchannel 209 seconds - integration/replication 237 seconds - integration/replication-psync 0 seconds - bitops-large-memory 3 seconds - defrag 1 seconds - violations 0 seconds - list-large-memory 1 seconds - set-large-memory \o/ All tests passed without errors! Cleanup: may take some time... OK make[1]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src' >>> redis: Entering fakeroot... for dir in src; do make -C $dir install; done make[1]: Entering directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src' INSTALL redis-sentinel INSTALL redis-check-rdb Hint: It's a good idea to run 'make test' ;) INSTALL redis-server INSTALL redis-benchmark INSTALL redis-cli make[1]: Leaving directory '/home/buildozer/aports/community/redis/src/redis-8.0.0/src' >>> redis-openrc*: Running split function openrc... 'etc/conf.d' -> '/home/buildozer/aports/community/redis/pkg/redis-openrc/etc/conf.d' 'etc/init.d' -> '/home/buildozer/aports/community/redis/pkg/redis-openrc/etc/init.d' >>> redis-openrc*: Preparing subpackage redis-openrc... >>> redis-openrc*: Running postcheck for redis-openrc >>> redis*: Running postcheck for redis >>> redis*: Preparing package redis... >>> redis*: Stripping binaries >>> redis*: Script found. /bin/sh added as a dependency for redis-8.0.0-r0.apk >>> redis*: Adding .pre-install >>> redis*: Adding .post-install >>> redis-openrc*: Scanning shared objects >>> redis*: Scanning shared objects >>> redis-openrc*: Tracing dependencies... >>> redis-openrc*: Package size: 1.7 KB >>> redis-openrc*: Compressing data... >>> redis-openrc*: Create checksum... >>> redis-openrc*: Create redis-openrc-8.0.0-r0.apk >>> redis*: Tracing dependencies... /bin/sh so:libc.musl-armv7.so.1 so:libcrypto.so.3 so:libgcc_s.so.1 so:libssl.so.3 so:libstdc++.so.6 >>> redis*: Package size: 2.8 MB >>> redis*: Compressing data... >>> redis*: Create checksum... >>> redis*: Create redis-8.0.0-r0.apk >>> redis: Build complete at Wed, 14 May 2025 13:35:24 +0000 elapsed time 0h 5m 20s >>> redis: Cleaning up srcdir >>> redis: Cleaning up pkgdir >>> redis: Uninstalling dependencies... (1/8) Purging .makedepends-redis (20250514.133005) (2/8) Purging linux-headers (6.14.2-r0) (3/8) Purging openssl-dev (3.5.0-r0) (4/8) Purging tcl (8.6.16-r0) (5/8) Purging tzdata (2025b-r0) (6/8) Purging procps-ng (4.0.4-r2) (7/8) Purging libintl (0.24.1-r0) (8/8) Purging libproc2 (4.0.4-r2) Executing busybox-1.37.0-r17.trigger OK: 274 MiB in 104 packages >>> redis: Updating the community/armv7 repository index... >>> redis: Signing the index...