Symptômes
Prenons l’exemple du scénario suivant :
-
Vous pouvez activer le Service Broker Microsoft SQL Server (SSB) dans la base de données de groupe AlwaysOn SQL Server.
-
Vous fermez et redémarrez la base de données.
-
Assurez-vous que l’accusé de réception (ACK) est correctement reçu.
Dans ce scénario, le message n’est pas supprimé de la file d’attente de transmission même si l’ACK est reçu correctement.
Cause
Ce problème survient parce que lorsque vous démarrez la base de données après l’arrêt propre, SQL Server ne vérifie pas si la tâche de suppression différée de la file d’attente de transmission est réutilisable. Il part du principe que la tâche de suppression différée de la file d’attente de transmission est OK.
Résolution
Le problème a été résolu dans la mise à jour cumulative suivante de SQL Server.
Mise à jour cumulative 1 pour SQL Server 2014 /en-us/help/2931693
Mise à jour cumulative 9 pour SQL Server 2012 SP1 /en-us/help/2931078
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 :
Solution de contournement
Pour contourner ce problème, basculez le groupe de disponibilité SQL Server vers le réplica secondaire (et la restauration automatique, le cas échéant).
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.