DBAtlas · Атлас эксплуатации баз данных

601: Не удалось продолжить сканирование с NOLOCK из-за перемещения данных

SQL Server

Что это значит?

Во время сканирования с NOLOCK (READ UNCOMMITTED) сканирование не смогло продолжиться из-за параллельного перемещения данных (разделения/перемещения страниц). Чтение без блокировок наткнулось на несогласованное состояние.

Почему возникает?

Сканируемые страницы перемещаются параллельными обновлениями/удалениями/разделениями страниц при чтении с подсказкой NOLOCK или на уровне изоляции READ UNCOMMITTED.

Как исправить

Повторите запрос (обычно ошибка временная). По возможности избегайте подсказки NOLOCK; для неблокирующего, но согласованного чтения используйте изоляцию READ COMMITTED SNAPSHOT (RCSI). На таблицах с интенсивной записью предпочитайте snapshot isolation грязному чтению.

Открыть в DBAtlas →

Ещё по этой СУБД