Redis

Redis: Diskless Replication Performance Fix

Redis merged a critical fix for diskless replication where slow replicas were causing all replicas to stall during RDB synchronization. The fix improves test reliability and prevents TCP buffer issues from blocking the entire replication process.

Duration: PT1M50S

https://podlog.io/listen/redis-84394f5e/episode/redis-diskless-replication-performance-fix-ae3e1558

Transcript

Good morning, this is your Redis development update for May 20th, 2026.

Vitah Lin merged a significant fix for diskless replication performance issues. Pull request 15131 addresses a critical problem where a single slow replica could stall RDB data delivery to all replicas during diskless replication. The root cause was in the RDB pipe read handler - when any replica's TCP send buffer filled up, the master would stop reading from the RDB pipe entirely, effectively throttling all replicas to the speed of the slowest one.

The issue manifested as a burst-and-stall pattern where fast replicas would starve for 4 to 5 seconds while waiting for slow replicas to drain their buffers. This led to significantly degraded synchronization performance across the entire master-replica cluster.

The merged solution focuses on test improvements to better handle these scenarios. Key changes include skipping the diskless replica test under Valgrind to avoid timing issues, creating fresh master instances for each test subcase instead of sharing state, and optimizing dataset sizes to exercise the blocked-writer path without causing TCP deadlocks. The fix also includes better timeout handling and process management during replica disconnections.

This change builds on previous work from Valkey issue 3511 and closes Redis issue 14983. The pull request received thorough review with 8 comments before approval, indicating the complexity and importance of this replication subsystem fix.

What's next: Monitor for any regression reports from the replication changes, and watch for related performance improvements in upcoming releases.

That's your Redis update. We'll be back tomorrow with more development news.