Symptômes
Supposez que vous créez une session XEvent qui comporte des prédicats dans Microsoft SQL Server 2012. Lorsque vous démarrez et arrêtez la session XEvent, la fuite de mémoire se produit et vous remarquez que la mémoire allouée par « MEMORYCLERK_XE » augmente progressivement. Voici un exemple de session XEvent illustrant le comportement :
CREATE EVENT SESSION[MyDiagnosticSession]ON SERVERADD EVENT sqlserver.module_end( ACTION (sqlserver.client_app_name,sqlserver.plan_handle,sqlserver.session_id,sqlserver.sql_text) WHERE ([package0].[Greater_than_equal_unicode_string]([sqlserver].[client_app_name],'MyApplication1') AND[package0].[Less_than_equal_unicode_string]([sqlserver].[client_app_name],'Myapplication2')))
Remarque Vous pouvez surveiller cette fuite de mémoire en utilisant la requête suivante ou en exécutant DBCC MEMORYSTATUS :
select [Memory Used KB] = page_size_in_bytes /1024 from sys.dm_os_memory_clerks where type = 'MEMORYCLERK_XE'
Résolution
Le problème a été résolu dans la mise à jour cumulative suivante de SQL Server.
Mise à jour cumulative 2 pour SQL Server 2012 SP2 /en-us/help/2983175
Mise à jour cumulative 11 pour SQL Server 2012 SP1 /en-us/help/2975396
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.