Symptom
Anta att du skapar en XEvent-session med predikat i Microsoft SQL Server 2012. När du startar och stoppar XEvent-sessionen flera gånger uppstår minnes läcka och du märker att minnet som tilldelats av MEMORYCLERK_XE ökar gradvis. Här är ett exempel på en XEvent-session som demonstrerar beteendet:
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')))
Obs! Du kan övervaka den här minnes läckan genom att använda följande fråga eller genom att köra DBCC MEMORYSTATUS:
select [Memory Used KB] = page_size_in_bytes /1024 from sys.dm_os_memory_clerks where type = 'MEMORYCLERK_XE'
Lösning
Problemet är först åtgärdat i den kumulativa uppdateringen av SQL Server.
Kumulativ uppdatering 2 för SQL Server 2012 SP2 /en-us/help/2983175
Kumulativ uppdatering 11 för SQL Server 2012 SP1 /en-us/help/2975396
Varje ny kumulativ uppdatering för SQL Server innehåller alla snabb korrigeringar och alla säkerhets korrigeringar som ingick i den föregående kumulativa uppdateringen. Kolla in de senaste kumulativa uppdateringarna för SQL Server:
Status
Microsoft har bekräftat att det här är ett problem i Microsoft-produkterna som nämns i "gäller".