Sintomas
No Microsoft SQL Server 2016 e 2017, a contenção temporária do objeto de memória cachestore da tabela faz com que o CMEMTHREAD aguarde, o que leva a um desempenho lento.
Causa
Um dos principais pontos de discórdia em cargas de trabalho Tempdb altamente concorrentes, que criam tabelas temporárias em processos armazenados, é a contenção no objeto de memória cachestore da Tabela Temp. Isso ocorre principalmente quando o CMEMTHREAD aguarda devido à contenção no objeto de memória cachestore, quando muitos trabalhadores simultâneos tentam CRIAR/SOLTAR as tabelas temporárias. Como o objeto de memória do cachestore não está particionado atualmente, a contenção do objeto de memória ocorre em todos os threads.
Estado
A Microsoft confirmou que se trata de um problema nos produtos Microsoft listados na secção "Aplica-se a".
Resolução
Este problema foi corrigido nas seguintes atualizações cumulativas para SQL Server:
Observação: A resolução para a correção é particionar o objeto de memória (pela CPU) que irá melhorar o desempenho.
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
Referências
Saiba mais sobre a terminologia que a Microsoft utiliza para descrever as atualizações de software.