KB4341398 - CORRECTIF : les notifications d’événements pour les événements AUDIT_LOGIN et AUDIT_LOGIN_FAILED entraîneront une croissance inhabituelle de TempDB en SQL Server 2016 et 2017

S’applique à
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2016 Service Pack 1 SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows

Symptômes

Supposons que vous disposez d’un script qui utilise des notifications d’événements pour les événements AUDIT_LOGIN et AUDIT_LOGIN_FAILED dans Microsoft SQL Server 2016 et 2017. Lorsque vous exécutez le script, vous remarquerez que la TempDB augmente rapidement en taille.

Vous pouvez utiliser la requête ci-dessous pour case activée si l’espace alloué aux objets internes TempDB est correctement libéré.


SELECT *
FROM (
SELECT  TS.internal_objects_alloc_page_count , TS.internal_objects_dealloc_page_count, [Net Allocation MB] = CAST((TS.internal_objects_alloc_page_count - TS.internal_objects_dealloc_page_count) AS DECIMAL(15, 2)) / 128
  , TS.session_id
  , ER.command
FROM    sys.dm_db_task_space_usage TS
   INNER JOIN sys.dm_exec_requests ER ON ER.request_id = TS.request_id AND ER.session_id = TS.session_id
where TS.session_id < 50
) internal
where [Net Allocation MB] != 0

Cause

Ce problème survient en raison d’une régression dans la mise à jour cumulative 6 pour SQL Server 2016 Service Pack 1.

Résolution

Ce problème est résolu dans les mises à jour cumulatives suivantes pour SQL Server :

Mise à jour cumulative 10 pour SQL Server 2017

Mise à jour cumulative 2 pour SQL Server 2016 SP2

Mise à jour cumulative 10 pour SQL Server 2016 SP1

À propos des mises à jour cumulatives 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. Consultez les dernières mises à jour cumulatives pour SQL Server :

Dernière mise à jour cumulative pour SQL Server 2017

Dernière mise à jour cumulative pour SQL Server 2016

État

Microsoft a confirmé qu’il s’agissait d’un problème dans les produits Microsoft répertoriés dans la section « S’applique à ».

Références

En savoir plus à propos de la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.