Skip to content

Upgrade redis to 7.4.9#200

Open
abhiksark wants to merge 2 commits into
yahoo:masterfrom
abhiksark:upgrade-redis-7.4.9
Open

Upgrade redis to 7.4.9#200
abhiksark wants to merge 2 commits into
yahoo:masterfrom
abhiksark:upgrade-redis-7.4.9

Conversation

@abhiksark

@abhiksark abhiksark commented Jun 5, 2026

Copy link
Copy Markdown

I confirm that this contribution is made under the terms of the license found in the root directory of this repository's source tree and that I have the authority necessary to make this contribution on behalf of its copyright owner.

Summary

Upgrade the embedded redis-server from 6.2.14 to 7.4.9, the latest 7.x release.

Validation

Built redis 7.4.9 locally and ran the full test suite against it on Python 3.10 (a CI-supported interpreter): all 42 tests pass.

Two tests needed updating for redis 7.x behavior (second commit):

  • test_redis_log_attribute — the startup log wording changed in 7.x: "Ready to accept connections" replaces "The server is now ready to accept connections".
  • test_slave — redis 7.0 enables diskless replication by default (repl-diskless-sync yes, repl-diskless-sync-delay 5), so the initial sync begins later than the test's fixed sleep(.5) allowed. The test now sets the master's repl-diskless-sync-delay to 0 and polls for replication. Replication itself is unaffected.

Configuration compatibility

redislite/configuration.py needs no changes. The directives renamed in redis 7.x are all still accepted by 7.4.9:

  • slave-serve-stale-data, slave-read-only, slave-priority remain aliases of their replica-* equivalents.
  • hash-max-ziplist-* and zset-max-ziplist-* remain aliases of the *-listpack-* directives.
  • list-max-ziplist-entries / list-max-ziplist-value are accepted as deprecated directives.
  • slaveof is still an alias of replicaof.

Changes

  • setup.py, setup.cfg, screwdriver.yaml, build_scripts/update_redis_server.py — bump redis version to 7.4.9 (mirrors Upgrade redis to 6.2.14 #190).
  • tests/test_client.py, tests/test_slave.py — update for the 7.x log wording and replication defaults described above.

Follow-up

Upgrading to redis 8.x will come as a separate PR. Redis 8 bundles additional modules and changed its build system, so it needs build-toolchain verification beyond a version bump.

abhiksark added 2 commits June 5, 2026 21:59
- test_redis_log_attribute: match the 7.x startup log wording
  ("Ready to accept connections" replaces "The server is now ready
  to accept connections").
- test_slave: redis 7.x enables diskless replication by default, which
  delays the initial sync past the old fixed sleep. Set the master's
  repl-diskless-sync-delay to 0 and poll for replication instead.
@abhiksark abhiksark force-pushed the upgrade-redis-7.4.9 branch from 4f449cc to 3490303 Compare June 6, 2026 06:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant