CORRECTIF : Un blocage se produit lorsque deux transactions essaient d’effectuer une opération DML sur une table qui contient un indicateur de verrouillage TABLOCK ou un indicateur de verrouillage XLOCK

S’applique à : Microsoft SQL Server Compact 3.5SQL Server Compact 3.5 Service Pack 2

Symptômes


Envisagez le scénario suivant dans Microsoft SQL Server Compact 3.5 :
  • Vous avez deux transactions d’isolation sérialisable.
  • Les deux transactions essayez d’effectuer une opération DML (requête/DML) sur la table qui contient un indicateur de verrouillage TABLOCK ou un indicateur de verrouillage XLOCK.
Dans ce scénario, vous rencontrez un blocage.

Cause


Ce problème se produit parce que les deux transactions attendent d’un autre XLOCK. Lorsque la requête obtient compilée, les deux transactions obtenir le verrou partagé sur la table et puis détient le verrou pour l’isolation sérialisable. Lorsque vous essaient d’effectuer une exécution, la requête sur la table qui contient un indicateur de verrouillage XLOCK, les deux transactions puis les transactions d’attendent d’un autre XLOCK. Par conséquent, un blocage se produit.RemarqueCe problème se produit également lorsque les deux transactions effectuent une opération DML sur la table qui contient un indicateur de verrouillage TABLOCK.

Résolution


SQL Server Compact 3.5 Service Pack 2

Le correctif de ce problème a été publié dans les 2 mise à jour Cumulative. Pour plus d’informations sur l’obtention de ce package de mise à jour cumulative pour SQL Server 2008 R2, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
2289547 Mise à jour cumulative 2 pour SQL Server Compact 3.5 Service Pack 2

Statut


Microsoft a confirmé l'existence de ce problème dans les produits Microsoft figurant dans la liste des produits concernés par cet article.

Informations supplémentaires


Pour plus d’informations sur le blocage, visitez le site Web Microsoft Developer Network (MSDN) suivant : Pour plus d’informations sur DML, visitez le site Web MSDN suivant :Pour plus d’informations sur la terminologie de mise à jour logicielle, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
824684 Terminologie standard utilisée pour décrire les mises à jour logicielles Microsoft