Symptômes
Prenons l’exemple du scénario suivant :
-
Vous utilisez une configuration d' estimation de cardinalité qui correspond au niveau de compatibilité de base de données 120 ou au niveau ultérieur pour votre système Microsoft SQL Server 2016 et 2017.
-
Vous exécutez une requête qui contient un prédicat de recherche.
-
La requête recherche les valeurs inférieures ou égales à un nombre inférieur à la valeur minimale de RANGE_HI_KEY stockées dans l' objet Statistics. La requête recherche les valeurs dont la valeur est supérieure à la valeur maximale de RANGE_HI_KEY pour les mêmes statistiques.
Dans ce scénario, l’optimiseur de requête surestime le nombre de lignes. Cela peut entraîner un choix de plan de requête moins optimal et des performances médiocres.
Résolution
Le correctif pour résoudre ce problème est inclus dans les mises à jour cumulatives de SQL Server suivantes :
Mise à jour cumulative 6 pour SQL Server 2017
Mise à jour cumulative 8 pour SQL Server 2016 SP1
Mise à jour cumulative 2 pour SQL Server 2016 Remarque Après l’installation de cette mise à jour, vous devez activer l’indicateur de suivi 4199 pour pouvoir activer ce correctif. Pour activer l’indicateur de suivi 4199, consultez la rubrique relative aux indicateurs de trace (Transact-SQL) sur le site Web Microsoft Developer Network (MSDN).
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.
Références
Apprenez-en davantage sur la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.