bloqueo complicado

02/03/2006 - 14:28 por Mauro | Informe spam
tengo 2 procesos que se estan bloueando, paso a explicarles.

uno de ellos lo que hace es borrar todas las filas que cumplen cierta
condicion

DELETE FROM tabla WHERE listo = 1

el otro es el que marca los campos basado en un id que existe en esa tabla
pero que no es el primario, el mismo tiene un indice asociado

UPDATE tabla SET listo = 1 WHERE foreign_ID = @foreign_ID

ambos son muy importantes, es por eso que no se como administrar la
prioridades, de todos modos el que sucumbe al deadlock es el update.

Preguntas similare

Leer las respuestas

#1 Maxi
02/03/2006 - 15:24 | Informe spam
Mauro estos procesos como se estan corriendo? por separado? en un mismo SP?¡

si ambos tocan la misma tabla es logico que pase esto


Salu2
Maxi [MVP SQL SERVER]
www.sqlgurus.org


"Mauro" escribió en el mensaje
news:
tengo 2 procesos que se estan bloueando, paso a explicarles.

uno de ellos lo que hace es borrar todas las filas que cumplen cierta
condicion

DELETE FROM tabla WHERE listo = 1

el otro es el que marca los campos basado en un id que existe en esa tabla
pero que no es el primario, el mismo tiene un indice asociado

UPDATE tabla SET listo = 1 WHERE foreign_ID = @foreign_ID

ambos son muy importantes, es por eso que no se como administrar la
prioridades, de todos modos el que sucumbe al deadlock es el update.


Respuesta Responder a este mensaje
#2 Mauro
02/03/2006 - 15:40 | Informe spam
por separado , el marcado de los registros se hace con un trigger cuando se
cumple cierta condicion de un campo calculado. es muy dificil hacer que sean
secuenciales.

"Maxi" wrote in message
news:%
Mauro estos procesos como se estan corriendo? por separado? en un mismo


SP?¡

si ambos tocan la misma tabla es logico que pase esto


Salu2
Maxi [MVP SQL SERVER]
www.sqlgurus.org


"Mauro" escribió en el mensaje
news:
> tengo 2 procesos que se estan bloueando, paso a explicarles.
>
> uno de ellos lo que hace es borrar todas las filas que cumplen cierta
> condicion
>
> DELETE FROM tabla WHERE listo = 1
>
> el otro es el que marca los campos basado en un id que existe en esa


tabla
> pero que no es el primario, el mismo tiene un indice asociado
>
> UPDATE tabla SET listo = 1 WHERE foreign_ID = @foreign_ID
>
> ambos son muy importantes, es por eso que no se como administrar la
> prioridades, de todos modos el que sucumbe al deadlock es el update.
>
>


Respuesta Responder a este mensaje
#3 Maxi
02/03/2006 - 16:48 | Informe spam
Hola, bueno asi no puedo comprender que pasa, deberia verlo mas en detalle.
Los bloqueos son normales, habria que ver como estan armandos esos triggers
y como funciona la cosa


Salu2
Maxi [MVP SQL SERVER]
www.sqlgurus.org


"Mauro" escribió en el mensaje
news:%23mp%
por separado , el marcado de los registros se hace con un trigger cuando
se
cumple cierta condicion de un campo calculado. es muy dificil hacer que
sean
secuenciales.

"Maxi" wrote in message
news:%
Mauro estos procesos como se estan corriendo? por separado? en un mismo


SP?¡

si ambos tocan la misma tabla es logico que pase esto


Salu2
Maxi [MVP SQL SERVER]
www.sqlgurus.org


"Mauro" escribió en el mensaje
news:
> tengo 2 procesos que se estan bloueando, paso a explicarles.
>
> uno de ellos lo que hace es borrar todas las filas que cumplen cierta
> condicion
>
> DELETE FROM tabla WHERE listo = 1
>
> el otro es el que marca los campos basado en un id que existe en esa


tabla
> pero que no es el primario, el mismo tiene un indice asociado
>
> UPDATE tabla SET listo = 1 WHERE foreign_ID = @foreign_ID
>
> ambos son muy importantes, es por eso que no se como administrar la
> prioridades, de todos modos el que sucumbe al deadlock es el update.
>
>






email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida