From 62466d25dc365a265923152ac6506e0483404317 Mon Sep 17 00:00:00 2001 From: fcosta_oliveira Date: Tue, 14 Oct 2025 16:54:38 +0100 Subject: [PATCH 1/2] Fixed description of leaderboard top100/1000 --- .../memtier_benchmark-playbook-leaderboard-top-100.yml | 2 +- .../memtier_benchmark-playbook-leaderboard-top-1000.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-100.yml b/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-100.yml index d637d6d..a144e11 100644 --- a/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-100.yml +++ b/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-100.yml @@ -1,7 +1,7 @@ version: 0.4 name: memtier_benchmark-playbook-leaderboard-top-100 description: Runs memtier_benchmark, for a keyspace length of 10K keys loading/querying ZSETs. Esports/live events with constant score changes, occasional bursts of reads. writes ≈ 60, reads ≈ 40%. - with encoding:listpack with 100 elements. + with encoding:ziplist with 100 elements. dbconfig: configuration-parameters: diff --git a/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-1000.yml b/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-1000.yml index 7e67d42..c1dcd97 100644 --- a/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-1000.yml +++ b/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-1000.yml @@ -1,7 +1,7 @@ version: 0.4 name: memtier_benchmark-playbook-leaderboard-top-1000 description: Runs memtier_benchmark, for a keyspace length of 10K keys loading/querying ZSETs. Esports/live events with constant score changes, occasional bursts of reads. writes ≈ 60, reads ≈ 40%. - with encoding:listpack with 1000 elements. + with encoding:skiplist with 1000 elements. dbconfig: configuration-parameters: From a2cb02a621ff67bc3288b797cd17ed1510068512 Mon Sep 17 00:00:00 2001 From: fcosta_oliveira Date: Tue, 14 Oct 2025 18:08:33 +0100 Subject: [PATCH 2/2] Fixed mem check on client runner. --- pyproject.toml | 2 +- redis_benchmarks_specification/__runner__/runner.py | 8 +++++++- .../memtier_benchmark-playbook-leaderboard-top-10.yml | 4 ++-- .../memtier_benchmark-playbook-leaderboard-top-100.yml | 6 +++--- .../memtier_benchmark-playbook-leaderboard-top-1000.yml | 4 ++-- 5 files changed, 15 insertions(+), 9 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 40982d7..4400cdd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "redis-benchmarks-specification" -version = "0.2.25" +version = "0.2.26" description = "The Redis benchmarks specification describes the cross-language/tools requirements and expectations to foster performance and observability standards around redis related technologies. Members from both industry and academia, including organizations and individuals are encouraged to contribute." authors = ["filipecosta90 ","Redis Performance Group "] readme = "Readme.md" diff --git a/redis_benchmarks_specification/__runner__/runner.py b/redis_benchmarks_specification/__runner__/runner.py index bba538f..a9f44f8 100644 --- a/redis_benchmarks_specification/__runner__/runner.py +++ b/redis_benchmarks_specification/__runner__/runner.py @@ -3283,7 +3283,13 @@ def used_memory_check( ): used_memory = 0 for conn in redis_conns: - used_memory = used_memory + conn.info("memory")["used_memory"] + info_mem = conn.info("memory") + if "used_memory" in info_mem: + used_memory = used_memory + info_mem["used_memory"] + else: + logging.warning( + "used_memory not present in Redis memory info. Cannot enforce memory checks." + ) used_memory_gb = int(math.ceil(float(used_memory) / 1024.0 / 1024.0 / 1024.0)) logging.info("Benchmark used memory at {}: {}g".format(stage, used_memory_gb)) if used_memory > benchmark_required_memory: diff --git a/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-10.yml b/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-10.yml index c20946a..1f13f9e 100644 --- a/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-10.yml +++ b/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-10.yml @@ -34,11 +34,11 @@ dbconfig: -- Use the same pairs for all keys for k = 1, 10000 do local key = tostring(k) - local args = {'ZADD', key} + local args = {key} for i = 1, #score_member_pairs do table.insert(args, score_member_pairs[i]) end - redis.call(unpack(args)) + redis.call('ZADD', unpack(args)) end return 'OK' diff --git a/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-100.yml b/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-100.yml index a144e11..bb9601d 100644 --- a/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-100.yml +++ b/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-100.yml @@ -1,7 +1,7 @@ version: 0.4 name: memtier_benchmark-playbook-leaderboard-top-100 description: Runs memtier_benchmark, for a keyspace length of 10K keys loading/querying ZSETs. Esports/live events with constant score changes, occasional bursts of reads. writes ≈ 60, reads ≈ 40%. - with encoding:ziplist with 100 elements. + with encoding:skiplist with 100 elements. dbconfig: configuration-parameters: @@ -34,11 +34,11 @@ dbconfig: -- Use the same pairs for all keys for k = 1, 10000 do local key = tostring(k) - local args = {'ZADD', key} + local args = {key} for i = 1, #score_member_pairs do table.insert(args, score_member_pairs[i]) end - redis.call(unpack(args)) + redis.call('ZADD', unpack(args)) end return 'OK' diff --git a/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-1000.yml b/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-1000.yml index c1dcd97..6a851b7 100644 --- a/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-1000.yml +++ b/redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-leaderboard-top-1000.yml @@ -34,11 +34,11 @@ dbconfig: -- Use the same pairs for all keys for k = 1, 10000 do local key = tostring(k) - local args = {'ZADD', key} + local args = {key} for i = 1, #score_member_pairs do table.insert(args, score_member_pairs[i]) end - redis.call(unpack(args)) + redis.call('ZADD', unpack(args)) end return 'OK'