DBAtlas · Atlas de operações de banco de dados

601: Could not continue scan with NOLOCK due to data movement

SQL Server

O que significa?

Durante uma varredura com NOLOCK (READ UNCOMMITTED), a varredura não pôde continuar por causa de movimentação concorrente de dados (page splits/movimentações de páginas). A leitura sem lock encontrou um estado inconsistente.

Por que acontece?

Páginas varridas sendo realocadas por updates/deletes/page splits concorrentes durante a leitura com o hint NOLOCK ou o nível de isolamento READ UNCOMMITTED.

Como resolver

Execute a consulta novamente (geralmente é transitório). Evite o hint NOLOCK sempre que possível; use o isolamento READ COMMITTED SNAPSHOT (RCSI) para leituras sem bloqueio e ainda assim consistentes. Em tabelas com muita escrita, prefira snapshot isolation a dirty reads.

Abrir no DBAtlas →

Mais entradas deste banco