KB4520109 - CORREÇÃO: Violação de acesso ocorre quando você restaura In-Memory banco de dados OLTP no SQL Server 2016

Aplica-se A
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Express - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

Sintomas

Quando tenta restaurar In-Memory base de dados de processamento de transações online (OLTP), falha devido a espaço em disco insuficiente. Em seguida, você pode notar que uma violação de acesso (AV) ocorre e obter o seguinte arquivo de despejo.

Despejo de violação de acesso

DateTime SpidId Usando 'dbghelp.dll' versão 'VersionId'

DateTime SpidId ***Despejo de pilha sendo enviado para o FilePath

DateTime SpidId SqlDumpExceptionHandler: Processo 346 gerou exceção fatal c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server está a terminar este processo.
      

DateTime SpidId * BEGIN STACK DUMP:

DateTime SpidId    *   CurrentTime spid SpidId
      

DateTime SpidId * Endereço de Exceção = 00007FFB7E6DA7B5 Module(sqlmin+0000000018CA7B5)

DateTime SpidId * Código de Exceção = c0000005 EXCEPTION_ACCESS_VIOLATION

DateTime SpidId * Ocorreu violação de acesso endereço de leitura 0000000000000B4
      

DateTime SpidId * TAMANHO FINAL DA BASE DO MÓDULO

DateTime SpidId * sqlservr 00007FF65AAA0000 00007FF65AB07FFF 00068000

DateTime SpidId * ntdll 00007FFBA0470000 00007FFBA061CFFF 001ad000

DateTime SpidId * KERNEL32 00007FFBA0190000 00007FFBA02CDFFF 0013e000
      

      

Além disso, você pode receber um despejo de asserção semelhante ao seguinte se tentar descartar o banco de dados.

Assertion dump
      

DateTime SpidId **Dump thread - spid = SPIDId, EC = 0x0000024216677B60

DateTime SpidId ***Despejo de pilha sendo enviado para o FilePath
      

DateTime SpidId * BEGIN STACK DUMP:

DateTime SpidId     *   CurrentTime spid SPIDId
      

DateTime SpidId * Local: "FilePath":10210

DateTime SpidId * Expression: LdImm(&db-CkptContext-CheckpointCount>>) == 0

DateTime SpidId * SPID: SPIDId

DateTime SpidId * ID do Processo: ProcessID
      

DateTime SpidId * Buffer de entrada 252 bytes -

DateTime SpidId * /****** Object: Database [DatabaseName] Script Date: ScriptDate

DateTime SpidId * /CurrentTime ******/ DROP DATABASE [DatabaseName]

      

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 na seguinte atualização cumulativa para SQL Server:

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:

Referências

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