Sintomas
Suponha que você tenha um script que usa notificações de eventos para eventos AUDIT_LOGIN e AUDIT_LOGIN_FAILED no Microsoft SQL Server 2016 e 2017. Ao executar o script, você notará que o TempDB cresce rapidamente em tamanho.
Pode utilizar a consulta abaixo para verificar se o espaço atribuído aos objetos internos de TempDB está corretamente deslocado.
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
Causa
Este problema ocorre devido a uma regressão na Atualização Cumulativa 6 para SQL Server 2016 Service Pack 1.
Resolução
Este problema foi corrigido nas seguintes atualizações cumulativas para SQL Server:
Atualização cumulativa 10 para SQL Server 2017
Atualização cumulativa 2 para SQL Server 2016 SP2
Atualização cumulativa 10 para SQL Server 2016 SP1
Acerca das atualizações cumulativas para SQL Server:
Cada nova atualização cumulativa para SQL Server contém todos os hotfixes e todas as correções de segurança que foram incluídas com a atualização cumulativa anterior. Consulte as atualizações cumulativas mais recentes para SQL Server:
Atualização cumulativa mais recente para o SQL Server 2017
Atualização cumulativa mais recente para o SQL Server 2016
Estado
A Microsoft confirmou que se trata de um problema nos produtos Microsoft listados na secção "Aplica-se a".
Referências
Saiba mais sobre a terminologia que a Microsoft utiliza para descrever as atualizações de software.