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.