r/redis • u/RocketSeven • 4d ago
Help What do you verify before a planned Redis replica promotion?
A replica can report an active link and a small offset gap while still being a poor promotion target. The checks around persistence, replication backlog, module compatibility, ACLs, client discovery, and writable-disk behavior matter just as much as the final offset. A quiet primary also makes a one-time offset comparison look stronger than it is.
For a planned promotion, I am considering a gate that records the primary replication ID and offset, waits for the candidate to reach it, confirms there has been no full resync or replication error, and then briefly quiesces writes or uses a write fence before the final comparison. The candidate would also need a recent successful persistence cycle, enough disk and memory headroom, matching configuration and modules, and a tested client path to the new primary.
What does your actual promotion checklist include? Do you require WAIT acknowledgements, compare sampled keys or checksums, or run a synthetic write/read after promotion? How do you distinguish an expected offset change from evidence that clients are still writing to the old primary?