Symptômes

Prenons l’exemple du scénario suivant :

  • Vous disposez d’une base de données Microsoft SQL Server 2012 pour laquelle les options de ALLOW_SNAPSHOT_ISOLATION et de READ_COMMITTED_SNAPSHOT sont activées.

  • Vous avez au moins trois requêtes simultanées qui s’exécutent au sein de la même table.

  • Les requêtes utilisent l’indicateur de requête (TABLOCK, UPDLOCK) .

  • Chaque requête est encapsulée dans une instruction BEGIN TRAN explicite, mais l’instruction Commit TRAN n’est pas exécutée.

Lorsque la première requête est validée dans ce scénario, l’une des autres requêtes se bloque. Lorsque READ_COMMITTED_SNAPSHOT est activée conjointement avec les indicateurs de requête TABLOCK et UPDLOCK , les sessions prennent des verrous IX sur la table. Le blocage se produit lorsque les deux sessions simultanées essaient de convertir en même temps les verrouillages IX en X. Si READ_COMMITTED_SNAPSHOT est désactivé, les sessions obtiennent six verrous qui ne se bloquent pas lorsqu’ils sont convertis en verrous X. Le correctif résout ce comportement en autorisant les verrous de LCK_M_SCH_S au lieu de indicateurs IX lorsque READ_COMMITTED_SNAPSHOT est utilisé avec les indications TABLOCK et UPDLOCK .RemarqueCe problème survient également dans Microsoft SQL Server 2008 R2. Un correctif pour SQL Server 2008 R2 sera bientôt disponible.

Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs et les correctifs de sécurité inclus dans la mise à jour cumulative précédente. Consultez les dernières mises à jour cumulatives pour SQL Server :

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.

Besoin d’aide ?

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoindre Microsoft Insider

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la traduction ?

Qu’est-ce qui a affecté votre expérience ?

Avez-vous d’autres commentaires ? (Facultatif)

Nous vous remercions pour vos commentaires.

×