KB4057280 - CORRECÇÃO: Alto uso da CPU quando um índice grande é usado em uma consulta em uma tabela com otimização de memória no SQL Server

Aplica-se a
SQL Server 2016 Service Pack 1 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 2017 Developer SQL Server 2017 Enterprise SQL Server 2017 Enterprise Core SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Sintomas

Considere o seguinte cenário:

  • Você usa OLTP (Processamento de Transações Online) na memória no Microsoft SQL Server 2017, 2016 e 2014.
  • Você executa uma consulta em uma tabela com otimização de memória que contém um índice grande.

Nesse cenário, se você usar o índice grande durante a execução da consulta, o uso da CPU poderá aumentar drasticamente para 100% muito rapidamente. Se você tiver mais de um processador lógico, o uso de apenas um deles poderá aumentar para 100% rapidamente.

Causa

Esse problema ocorre porque a coleta de lixo no OLTP in-memory poderá levar muito tempo para ser concluída se um índice grande for usado em uma execução de consulta.

Resolução

Esse problema é corrigido nas seguintes atualizações cumulativas para o SQL Server:

Atualização cumulativa 4 para o SQL Server 2017

Atualização cumulativa 7 para o SQL Server 2016 SP1

Atualização cumulativa 2 para o SQL Server 2014 SP3

Observação Depois de instalar essa atualização, você deve habilitar o sinalizador de rastreamento (TF) 9945 para corrigir esse problema. Para habilitar o TF 9945, consulte o tópico Sinalizadores de Rastreamento (Transact-SQL) no Microsoft Developer Network (MSDN).

Sobre atualizações cumulativas para o SQL Server:

Cada nova atualização cumulativa do SQL Server contém todos os hotfixes e todas as correções de segurança incluídas na atualização cumulativa anterior. Confira as atualizações cumulativas mais recentes para o SQL Server:

Atualização cumulativa mais recente do SQL Server 2017

Atualização cumulativa mais recente do SQL Server 2016

Atualização cumulativa mais recente do SQL Server 2014

Status

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Referências

Saiba mais sobre a terminologia que a Microsoft usa para descrever atualizações de software.