Could not continue scan with NOLOCK due to data movement

27/06/2008 - 16:14 por Jorge Yanez | Informe spam
Hola a todos,

Me ha salido el siguiente error ejecutando una instrucción SQL:

Could not continue scan with NOLOCK due to data movement.

Una vez ya me ha sucedido el error, ¿se puede saber de algún modo qué
instrucción SQL movió los datos causando así el error en la ejecución de mi
instrucción SQL?

Supongo que si hubiera estado ejecutando una traza de la actividad del
servidor SQL podría haber detectado qué se estaba ejecutando sobre el
servidor en ese momento. Pero no es el caso, y tengo curiosidad por saber
qué ha pasado.

Un saludo, y gracias por adelantado.

Jorge.
 

Leer las respuestas

#1 Gux (MVP)
27/06/2008 - 17:19 | Informe spam
No menciona usted versión/edición de SQL Server ni los detalles de la
instrucción SQL que provoca el error cuando usa el hint NOLOCK.

Le pego la explicación de ese tipo de error por si le sirve de pista para
analizar el problema:

Error 601 Severity Level 12 Message
Text Could not continue scan with NOLOCK due to data movement.

Explanation: When scanning with the NOLOCK locking hint or with the
transaction
isolation level set to READ UNCOMMITTED, it is possible for the page at the
current
position of the scan to be deleted. When this happens, Microsoft® SQL
ServerT is not able to continue the scan.

Action: This error aborts the query. Either resubmit the query or remove the
NOLOCK locking hint.

Gustavo Larriera, Microsoft MVP
http://www.linkedin.com/in/gustavolarriera
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Jorge Yanez" wrote:

Hola a todos,

Me ha salido el siguiente error ejecutando una instrucción SQL:

Could not continue scan with NOLOCK due to data movement.

Una vez ya me ha sucedido el error, ¿se puede saber de algún modo qué
instrucción SQL movió los datos causando así el error en la ejecución de mi
instrucción SQL?

Supongo que si hubiera estado ejecutando una traza de la actividad del
servidor SQL podría haber detectado qué se estaba ejecutando sobre el
servidor en ese momento. Pero no es el caso, y tengo curiosidad por saber
qué ha pasado.

Un saludo, y gracias por adelantado.

Jorge.



Preguntas similares