fix: rewrite memory benchmark bulk loading and mode handling#158
Merged
Conversation
three issues discovered during GCP testing: 1. redis-cli --pipe doesn't work with ember — silently drops commands. switched to a python bulk loader using redis-py pipelining. 2. hash and sorted set commands only work in sharded mode, not concurrent. skip concurrent mode for those types instead of reporting 0. 3. sorted set adds all members to one key (DBSIZE=1), making per-key division meaningless. divide by member count instead.
kacy
added a commit
that referenced
this pull request
Feb 19, 2026
three issues discovered during GCP testing: 1. redis-cli --pipe doesn't work with ember — silently drops commands. switched to a python bulk loader using redis-py pipelining. 2. hash and sorted set commands only work in sharded mode, not concurrent. skip concurrent mode for those types instead of reporting 0. 3. sorted set adds all members to one key (DBSIZE=1), making per-key division meaningless. divide by member count instead.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
summary
fixes three issues discovered during GCP c2-standard-8 testing:
redis-cli --pipe doesn't work with ember — commands are silently dropped and no data is loaded. switched to a python bulk loader using redis-py pipelining (batches of 1000), which works reliably with both ember and redis.
hash/sorted set not supported in concurrent mode — ember returns
ERR command not supported in concurrent modefor HSET/ZADD. the script now only tests sharded mode for these types, showing "—" for concurrent.sorted set per-key metric was meaningless — all ZADD members go into one key (
myzset), so DBSIZE=1 andused_memory / 1gives the entire sorted set size as "bytes per key". now divides by member count to report per-member overhead.what was tested
used_memorychanges are tracked and non-zero after loading