KB983516: se produce un interbloqueo cuando dos transacciones tratan de realizar una operación DML en una tabla que contiene una sugerencia de bloqueo TABLOCK o una sugerencia de bloqueo de XLOCK

Se aplica a: Microsoft SQL Server Compact 3.5Microsoft SQL Server Compact 3.5 Service Pack 2

Síntomas


Considere el siguiente escenario en Microsoft SQL Server Compact 3,5:
  • Tiene dos transacciones de aislamiento serializable.
  • Ambas transacciones tratan de realizar una operación DML (consulta o DML) en la misma tabla que contiene una sugerencia de bloqueo TABLOCK o una sugerencia de bloqueo de XLOCK.
En este escenario, se encuentra con un interbloqueo.

Causa


Este problema se produce porque ambas transacciones esperan para XLOCK. Cuando se compila la consulta, ambas transacciones obtienen el bloqueo compartido en la tabla y, a continuación, mantienen el bloqueo para el aislamiento serializable. Cuando las dos transacciones intentan realizar una ejecución, la consulta en la misma tabla que contiene una sugerencia de bloqueo de XLOCK, ambas transacciones esperan una para XLOCK. Por lo tanto, se produce un interbloqueo.Nota: Este problema también se produce cuando ambas transacciones realizan una operación DML en la misma tabla que contiene una sugerencia de bloqueo TABLOCK.

Resolución


SQL Server Compact 3,5 Service Pack 2

La corrección para este problema se publicó por primera vez en la actualización acumulativa 2. Para obtener más información sobre cómo obtener este paquete de actualización acumulativa para SQL Server 2008 R2, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2289547 Actualización acumulativa 2 para SQL Server Compact 3,5 Service Pack 2

Estado


Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "Se aplica a".

Más información


Para obtener más información sobre el interbloqueo, visite el siguiente sitio web de Microsoft Developer Network (MSDN): Para obtener más información acerca de DML, visite el siguiente sitio web de MSDN:Para obtener más información acerca de la terminología relativa a las actualizaciones de software de Microsoft, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684 Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft