Su uso de NOLOCK en todas partes significa que está haciendo lecturas sucias y verá datos no confirmados, datos que se revertirán, datos transitorios e inconsistentes, etc.
Quítatelos, inténtalo de nuevo, informa de las súplicas
Editar:algunas opciones con NOLOCKS eliminados
- Los datos realmente están cambiando
- Algún parámetro o filtro está cambiando (por ejemplo, GETDATE)
- Algunas comparaciones flotantes se ejecutan en diferentes núcleos cada vez
Vea esto en dba.se https://dba.stackexchange.com/q/4810/630 - NOLOCK integrados en udfs o vistas (por ejemplo, iCentral.dbo.GetSubUserGroups)
- ...