CORRECTIF : Contention de verrouillage spinlock SOS_CACHESTORE sur le cache de plan ad hoc de SQL Server provoque une utilisation élevée de l'UC dans SQL Server 2012 ou 2014

IMPORTANT : Cet article est issu d'une traduction automatique réalisée par un logiciel Microsoft et non par un traducteur professionnel. Cette traduction automatique a pu aussi être révisée par la communauté Microsoft grâce à la technologie Community Translation Framework (CTF). Pour en savoir plus sur cette technologie, veuillez consulter la page http://support.microsoft.com/gp/machine-translation-corrections/fr. Microsoft vous propose en effet des articles traduits par des professionnels, des articles issus de traductions automatiques et des articles issus de traductions automatiques révisées par la communauté Microsoft, de manière à ce que vous ayez accès à tous les articles de notre Base de connaissances dans votre langue. Il est important de noter que les articles issus de la traduction automatique, y compris ceux révisés par la communauté Microsoft, peuvent contenir des erreurs de vocabulaire, de syntaxe ou de grammaire. Microsoft ne pourra être tenu responsable des imprécisions, erreurs, ainsi que de tout dommage résultant d’une traduction incorrecte du contenu ou de son utilisation par les clients.

La version anglaise de cet article est la suivante: 3026083
Symptômes
Lorsque le trop grand nombre d'insertions simultanées se produisent dans le même compartiment de hachage ou le cache de plan SQL Server ad hoc atteint sa limite de saisie de le 160,036, graves conflits de verrouillage spinlock SOS_CACHESTORE se produit. Dans ce cas, une utilisation élevée du processeur se produit dans Microsoft SQL Server 2012 ou SQL Server 2014.
Cause
Le problème se produit car, lorsque le cache de plan SQL Server atteint sa limite de saisie, les plans avec faible coût doit être supprimé pour insérer de nouveaux plans. Cela conduit à une lourde contention pour le verrouillage spinlock SOS_CACHESTORE qui assure la synchronisation pour les compartiments de table de hachage du cache de plan SQL Server.
Résolution

Informations de mise à jour cumulatives

Le problème a été tout d'abord résolu dans la mise à jour cumulative suivante de SQL Server.

À propos des mises à jour cumulatives pour SQL Server

Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et des correctifs de sécurité qui ont été inclus dans la précédente mise à jour cumulative. Découvrez les dernières mises à jour cumulatives pour SQL Server :
Plus d'informations
Le cache de plan a deux limites, la taille totale et le nombre total de tous les plans. Les limites du nombre de taille et entrée sont expliqués dans le livre blanc Fonctionnement du Cache de plan. Le nombre maximum d'entrées pouvant être un cache de plan est quatre fois du nombre de compartiments. Vous pouvez vérifier ces informations en utilisant les requêtes suivantes :
select name, type, buckets_count from sys.dm_os_memory_cache_hash_tableswhere name IN ( 'SQL Plans' , 'Object Plans' , 'Bound Trees' ) select name, type, pages_kb, entries_count from sys.dm_os_memory_cache_counterswhere name IN ( 'SQL Plans' , 'Object Plans' ,  'Bound Trees' )
Par exemple, sur les systèmes 64 bits, les compartiments pour le cache de plan SQL Server est 40,009. Par conséquent, le nombre maximal d'entrées qui peuvent tenir dans le cache de plan SQL Server est 160,036. Lorsque vous avez une charge de travail à l'aide de différentes requêtes ad hoc, cette limite peut devenir un goulet d'étranglement. Dans ces cas, vous pouvez utiliser la modification dans ce correctif logiciel. Après avoir installé ce correctif et activer la modification à l'aide de la trace de démarrage indicateur T - 174, le nombre de compartiments est porté à 160,001 sur les systèmes 64 bits. Par conséquent, le cache de plan maintenant peut contenir un nombre maximal de 640,004 plans.
Statut
Microsoft a confirmé l'existence de ce problème dans les produits Microsoft répertoriés dans la section « S'applique à ».

Avertissement : Cet article a été traduit automatiquement.

Propriétés

ID d'article : 3026083 - Dernière mise à jour : 06/24/2015 08:32:00 - Révision : 3.0

Microsoft SQL Server 2012 Service Pack 2, Microsoft SQL Server 2012 Service Pack 1, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Web, Microsoft SQL Server 2014 Service Pack 1

  • kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB3026083 KbMtfr
Commentaires