теория
Вот та самая деталь. Реплики повторяют изменения лидера не мгновенно: пока запись доедет по сети и применится, проходит время. Этот зазор называется , и обычно он крошечный — миллисекунды. Но под нагрузкой, при сетевых заминках или сразу после failover он вырастает до секунд. А значит, реплика какое-то время отдаёт слегка устаревшие данные.
Отсюда — семейство коварных багов, которые не видно в спокойный день:
Всё это — лица одной сделки: мы разменяли идеальную согласованность на доступность и масштаб. Реплики почти всегда сходятся с лидером — это называют , — но «в конечном счёте» не значит «сейчас».
Так что репликация не бесплатна: она платит не деньгами, а маленькими окнами, в которых разные узлы рассказывают о мире чуть по-разному. Инженерная работа — не убрать эти окна (нельзя), а знать, где они недопустимы, и там читать с лидера.