IT-словарь › Программирование › Фантомное чтение

Фантомное чтение

Программирование Svenska → Обновлено: 2026-10-18

Транзакция дважды выполняет один и тот же запрос по диапазону и получает разное число строк — потому что другая транзакция успела выполнить INSERT подходящих строк.

От неповторяющегося чтения (когда меняется та же строка) отличается тем, что появляются НОВЫЕ строки. Предотвращается Snapshot Isolation и Serializable. Стандарт SQL определяет фантом как аномалию, отделяющую «Repeatable Read» от «Serializable». «Repeatable Read» в Postgres на деле реализует Snapshot Isolation (фантомов при чтении нет, но write-skew возможен). MySQL InnoDB использует gap-блокировки, чтобы предотвращать фантомы и в Repeatable Read.

← Назад к словарю