Redis: Fixing Silent Data Loss in Migration and Streams

Two correctness fixes for atomic slot migration and stream trimming prevent acknowledged writes from disappearing and replicas from diverging. The rest of the activity focuses on cutting latency overhead and hardening scripting paths ahead of the 8.12 release.

Duration: PT3M

Episode overview

This episode is a short developer briefing from Redis.

It explains recent repository work in plain language.

  • Show: Redis
  • Published: 2026-10-21T13:22:58Z
  • Audio duration: PT3M

Transcript excerpt

This excerpt keeps the crawler page concise. Listen to the episode or use the RSS feed for the full update.

Good morning, it's October 21st, 2026, and this is Redis Daily.

The lead story is reliability: two fixes address cases where data could silently diverge between nodes.

First, M-S-E-T-E-X handling in cluster mode, in PR 15937. The command was missing its key extraction callback, so migration logic treated it as having no keys. In practice, an acknowledged M-S-E-T-E-X write during atomic slot migration was never sent to the destination, and the source then trimmed its copy. The same…

Related, stream trimming with acknowledged entries, in PR 16006. A trim for maximum length with the acked strategy stopped early when it hit a storage node containing still-referenced entries, even if later nodes could be trimmed. That left streams longer than requested, and because replicas can pack nodes…

Second theme is latency overhead. PR 15761 makes unshared client reply memory accounting incremental. Instead of scanning every output buffer on I-N-F-O memory or client list, the server caches the value and refreshes it in cron, roughly once per second. Expect slightly stale memory stats in exchange for less…

Finally, hardening and the 8.12 train. Two open scripting fixes stand out: PR 16032 for…

Nearby episodes from Redis

  1. Sorted Set Fixes and Faster Persistence
  2. Stream Efficiency and Failure Handling Fixes
  3. Packed B-Tree for Sorted Sets and Client Hardening
  4. Security Fixes and Replication Reliability
  5. Vector Restart Crashes and Lua Script Safety
  6. Replay Correctness and Vector Set Hardening
  7. Blessed Key Protection and Sentinel Failover Fix
  8. Float Formatting Speedup and Restart Fix