Bloqueos en TEMPDB..SYSOBJECTS

14/11/2005 - 11:50 por Antonio Zorita | Informe spam
¿Qué hay?
Desde hace tiempo estamos teniendo problemas con bloqueos en la bd TEMPDB.
En concreto, nos hemos fijado que si hacemos un SELECT * FROM
TEMPDB..SYSOBJECTS WITH(NOLOCK), en bastantes ocasiones tarda muchísimo
tiempo en devolver los datos. Esto coincide normalmente con problemas de
acceso en las aplicaciones que terminan por dar tiempo de espera finalizado.

Si esta select la sustituimos por SELECT NAME FROM TEMPDB..SYSOBJECTS
WITH(NOLOCK), devuelve los datos rápidamente. Pero en cuento tiene que
devolver los valores de los campos instrig, updtrig, seltrig y deltrig, la
cosa cambia. Parece que dichos campos son los que están bloqueados.

¿Por qué puede ocurrir esto? ¿Puede haber algún proceso que esté
continuamente bloqueando dichos campos, o es el propio sistema? ¿Cómo
evitarlo?

Gracias.
 

Leer las respuestas

#1 Carlos Sacristán
14/11/2005 - 12:10 | Informe spam
¿Se usan muchas tablas temporales en vuestro sistema? Ten en cuenta que
al igual que las tablas normales, las temporales también generan bloqueos en
la base de datos en donde se crean, en este caso TEMPDB.

Te recomendaría estudiar la situación con el monitor del sistema y el
profiler para ver por qué se producen esos bloqueos...


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Antonio Zorita" escribió en el
mensaje news:
¿Qué hay?
Desde hace tiempo estamos teniendo problemas con bloqueos en la bd TEMPDB.
En concreto, nos hemos fijado que si hacemos un SELECT * FROM
TEMPDB..SYSOBJECTS WITH(NOLOCK), en bastantes ocasiones tarda muchísimo
tiempo en devolver los datos. Esto coincide normalmente con problemas de
acceso en las aplicaciones que terminan por dar tiempo de espera


finalizado.

Si esta select la sustituimos por SELECT NAME FROM TEMPDB..SYSOBJECTS
WITH(NOLOCK), devuelve los datos rápidamente. Pero en cuento tiene que
devolver los valores de los campos instrig, updtrig, seltrig y deltrig, la
cosa cambia. Parece que dichos campos son los que están bloqueados.

¿Por qué puede ocurrir esto? ¿Puede haber algún proceso que esté
continuamente bloqueando dichos campos, o es el propio sistema? ¿Cómo
evitarlo?

Gracias.

Preguntas similares