Bloqueo de punto muerto de la base de datos
Frecuentes
Visto 163 veces
0
¿El punto muerto de la base de datos es causado principalmente por el bloqueo de la base de datos? En otras palabras, ¿el bloqueo es una razón inherente para el interbloqueo? ¿El bloqueo múltiple de recursos es una condición necesaria para el interbloqueo? Si se evita el bloqueo en las bases de datos, ¿eso significa que podemos evitar los interbloqueos de la base de datos?
He revisado diferentes recursos de Internet y obtuve respuestas contradictorias:
http://docs.oracle.com/cd/E17277_02/html/TransactionGettingStarted/blocking_deadlocks.html
Del recurso anterior, la respuesta es indicativa del siguiente extracto
Un interbloqueo ocurre cuando se bloquean dos o más subprocesos de control, cada uno de los cuales espera un recurso del otro subproceso. Cuando esto sucede, no hay posibilidad de que los subprocesos avancen a menos que algún agente externo tome medidas para romper el punto muerto.
http://publib.boulder.ibm.com/tividd/td/BSM/SC32-9084-00/en_US/HTML/bsmd240.htm
Del recurso anterior, la respuesta es indicativa del siguiente extracto
El bloqueo es diferente a un interbloqueo. Interbloqueo es una condición que ocurre cuando dos usuarios o sesiones tienen bloqueos en objetos separados y cada proceso intenta adquirir un bloqueo en el objeto que tiene el otro proceso. El servidor SQL detecta y resuelve automáticamente los interbloqueos. Si se encuentra un interbloqueo, uno de los procesos finaliza, lo que permite que el otro proceso continúe.
2 Respuestas
1
No veo los dos fragmentos como conflictivos. Ambos específicos se deben a que cada uno de los dos (o más) procesos/hilos tiene un recurso que el otro necesita.
El bloqueo y el interbloqueo no son lo mismo, pero el interbloqueo ocurre debido al bloqueo, pero solo porque cada uno de los dos procesos bloquea la solicitud de recursos de los demás.
Entonces, se está produciendo un interbloqueo debido al bloqueo, pero el bloqueo no provoca automáticamente un interbloqueo.
respondido 25 nov., 13:07
0
Considere la inconsistencia de lectura/escritura como una enfermedad, el bloqueo como el medicamento para esa enfermedad y el interbloqueo como un efecto secundario del medicamento.
respondido 26 nov., 13:11
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas database blocking database-deadlocks or haz tu propia pregunta.
¿Tu pregunta es teórica? o un problema del mundo real? si es un mundo real, sería mejor si proporciona el error/problema que está viendo y no cita la documentación. En la mayoría de los casos, se trata de un bloqueo de la TABLA y no de la base de datos, pero puede producirse un bloqueo de la base de datos si la base de datos se encuentra en proceso de copia de seguridad/restauración/migración/etc. Noam Rathaus
@nrathaus Es un problema del mundo real que ocurrió en nuestros servidores de bases de datos. Donde mi colega y yo tuvimos un altercado hoy en el que le pedí que verificara el bloqueo de la base de datos en el servidor y dijo que hay un punto muerto y no un bloqueo de la base de datos como se observó. Dije que una lleva a la otra….- Sreedhar Danturthi
¿Cómo llegaste a la conclusión de que se produjo el bloqueo? es decir, ¿qué viste? pegue aquí su observación y no la guía del usuario - Noam Rathaus