KB4046056 - CORREÇÃO: A asserção ocorre quando acede à tabela com otimização de memória através do MARS no SQL Server 2017 ou 2016

Aplica-se A
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 SQL Server 2016 SQL Server 2016 Service Pack 3 - duplicate (do not use)

Sintomas

Tenha em conta o seguinte cenário:

  • Utilizar In-Memory OLTP e Múltiplos conjuntos de resultados ativos (MARS) numa instância do Microsoft SQL Server 2017 ou 2016.
  • Você cria um índice de armazenamento de colunas clusterizadas para uma tabela com otimização de memória.
  • Você se conecta à instância do SQL Server usando uma conexão habilitada para MARS.
  • Quando você executa uma consulta para acessar dados da tabela de memória otimizada, você pode notar que ocorre um erro de asserção e a conexão é morta.
  • Além disso, um minidump é gerado no lado do servidor.

Estado

A Microsoft confirmou que se trata de um problema nos produtos Microsoft listados na secção "Aplica-se a".

Resolução

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

Atualização cumulativa 2 para SQL Server 2017

Atualização cumulativa 9 para SQL Server 2016 RTM

Atualização cumulativa 6 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ções cumulativas mais recentes do SQL Server 2016

Informações do service pack para o SQL Server 2016

Esse problema foi corrigido no seguinte service pack para SQL Server:

Acerca dos service packs para SQL Server:

Os service packs são cumulativos. Cada novo service pack contém todas as correções que estão em service packs anteriores, juntamente com quaisquer novas correções. Recomendamos que aplique o service pack mais recente e a atualização cumulativa mais recente para esse service pack. Não é necessário instalar um service pack anterior antes de instalar o service pack mais recente. Use a Tabela 1 no artigo a seguir para encontrar mais informações sobre o service pack mais recente e a atualização cumulativa mais recente:

Determinar a versão, edição e nível de atualização do SQL Server e seus componentes

Referências

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