Symptômes
Votre requête peut s’exécuter lentement si les conditions suivantes sont remplies :
- La requête utilise des agrégats tels que grouper par.
- SQL Server utilise l’agrégation de hachage dans le plan de requête.
- Le nombre estimé de valeurs distinctes est bien inférieur au nombre réel de valeurs distinctes pour l’agrégat.
Lorsque ce problème se produit, un événement d’avertissement de hachage s’affiche si vous effectuez le suivi du profileur ou des événements étendus.
Cause
Ce problème se produit parce que SQL Server sous-estime la quantité de mémoire allouée nécessaire. Ceci entraîne la propagation des résultats intermédiaires vers tempdb.
Résolution
Ce problème a été résolu dans la mise à jour cumulative de SQL Server suivante :
Remarque Vous devez activer l’indicateur de trace 9410 pour activer ce correctif.
Recommandation : Installer la dernière mise à jour cumulative pour SQL Server
Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et tous les correctifs de sécurité inclus dans la mise à jour cumulative précédente. Nous vous recommandons de télécharger et d’installer les dernières mises à jour cumulatives pour SQL Server :
- Dernière mise à jour cumulative pour SQL Server 2014 SP1
- Dernière mise à jour cumulative pour SQL Server 2016
Références
En savoir plus à propos de la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.