Представьте, что у вас есть воркер, который обрабатывает заявки из базы данных. Он открывает транзакцию, делает SELECT
Условие
Заголовок раздела «Условие»Представьте, что у вас есть воркер, который обрабатывает заявки из базы данных. Он открывает транзакцию, делает SELECT всех заявок со статусом New, обрабатывает их в течение ~20 секунд, а затем делает UPDATE, меняя статус на Processed. Все это происходит в рамках одной долгой транзакции. Приходит баг-репорт: некоторые новые заявки помечаются как обработанные, но фактически не были обработаны. Почему такая ситуация возможна?
Решение
Заголовок раздела «Решение»Источник: Rambler / Рамблер - 2 · 4 кв 2025
← Есть огромная таблица «Все люди мира» с… · Все задачи · SQL и реляционные БД · Представьте, что у вас есть аналитическ… →