601: Could not continue scan with NOLOCK due to data movement
SQL ServerO 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.
Mais entradas deste banco
- 8623The query processor ran out of internal resources and could not produce a query plan
- 4104The multi-part identifier could not be bound
- 2714There is already an object named in the database
- 50000Erro personalizado gerado com RAISERROR
- 3902The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION
- 1101Could not allocate a new page because of insufficient disk space in filegroup (não foi possível alocar uma nova página por falta de espaço em disco no filegroup)
- 3729Cannot DROP because it is being referenced by object (não é possível remover porque outro objeto o referencia)