SQL Server - Evitar deadlocks en sql server2008

   
Vista:

Evitar deadlocks en sql server2008

Publicado por Alberto (1 intervención) el 18/02/2013 11:08:36
Hola a todos, lo primero es daros las gracias solo por atenderme y lo segundo es pasar a explicaros mi problema.

Tengo en mi trabajo un servidor de sql server 2008 en un windows server 2003, en otra maquina tenemos un apache tomcat corriendo una aplicación jsp, la cual ataca a la base de datos antes mencionada.

El caso es que tenemos un problema y es que de vez en cuando, sin motivo aparente, la aplicación se queda como parada, pero cuando nos ponemos a ver de donde puede venir el fallo, nos damos cuenta de que tomcat no está colgado y la base de datos lanza deadlocks por lo que tiene transacciones bloqueadas... Lo cierto es que me gustaria saber como se suele solucionar este tipo de cosas, si he de revisar el codigo fuente de nuestra aplicación o he de configurar el sql server para que trate los deadlocks de otra manera.

Perdón por el tostón, Un saludo, Alberto.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias

Evitar deadlocks en sql server2008

Publicado por Isaias (3181 intervenciones) el 18/02/2013 23:15:44
Alberto

En el 99:99% de los casos de DeadLocks, es por la pesima programacion y manejo de las transacciones.

Las transacciones, deben ser administradas por el servidor, muchos desarrolladores, las menejan desde la capa cliente y eso es una pesima programacion.

¿Ya descubriste que proceso te esta generando los deadlocks?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Evitar deadlocks en sql server2008

Publicado por Ana (1 intervención) el 23/04/2013 17:46:45
Hola Isaias,

De igual manera yo tengo problemas con los DeadLocks, el detalle es que yo no manejo transacciones desde ninguna aplicacion, yo corro isp, que ejecutan stores procedure directamente en la base y en el servidor, esto lo hago mediante jobs, se ejecutan varios procesos a la ves y no siempre me manda el error.

¿cuando y como saber la generacion de un deadlock y como resolverlo en el instante para que no pare los procesos que se estan ejecutando?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Evitar deadlocks en sql server2008

Publicado por Alberto (1 intervención) el 24/04/2013 11:52:51
Hola Isaias, muchas gracias por contestar.

Si, ya están solucionados los deadlocks, el problema venia porque tenemos una tabla de trazabiliad la cual se atacaba continuamente y a mayor numero de usuarios conectados a nuestro servidor, mayor numero de choques en esa tabla, finalmente cambiamos la política sobre como atacar a esa tabla.

Muchas gracias y un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar