KB2934934-FIX : le programmateur sans yield tente de fermer l’écouteur pour le groupe disponibilité dans SQL Server 2012

Symptômes

Prenons l’exemple du scénario suivant :

  • Vous avez déployé un écouteur de groupe de disponibilité et de disponibilité SQL Server AlwaysOn.

  • La détection de l’intégrité AlwaysOn détecte un problème d’intégrité lié au serveur SQL Server hébergeant le réplica principal et commence la transition du groupe de disponibilité du rôle principal au rôle de résolution. Cette partie implique la mise hors connexion de la ressource de l’écouteur du groupe de disponibilité.

  • L’opération qui tente d’arrêter la ressource de l’écouteur est susceptible de ne pas aboutir et les notifications de diagnostic SQL Server ne produisant aucun rapport sur le blocage en tant que programmateur sans yield dans le journal des erreurs SQL Server.

  • L’opération risque de se bloquer indéfiniment lors de la tentative d’arrêt de l’écouteur de groupe de disponibilité s’il n’y a pas d’assistance.

Dans ce scénario, les bases de données de disponibilité du groupe disponibilité restent en mode récupération et ne peuvent pas être mises en ligne. Les messages d’erreur suivants s’affichent :

<date> <temps> <nom du serveur> * * * impossible d’obtenir le contexte du thread pour le SPID 0<date> <temps> <nom du serveur> <1 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *> <2 date> <Time> <nom du serveur> <7 *> <8 date> < temps> <nom du serveur> <3 * commencer la vidage de la pile, comme suit :> <4 date> <durée> <nom du serveur> <9 *> <0 date> < temps > <3 SPID 1068> <4> <> <nom du serveur> <9> <0> <> <> <5 nom du serveur> <6> <nom du serveur> < de date> de l’heure<du nom du serveur> <*> <de date>de date nom du serveur * * nom du serveur * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *>> <> <<

Cause

Le problème se produit car le thread arrête le gel des ressources de l’écouteur et ne peut pas être généré. Ce thread sans yield a bloqué d’autres threads sur le même processeur, ce qui a empêché d’autres threads d’essayer de récupérer les bases de données de disponibilité.

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 ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×