Sintomas
Suponha que você tenha o tempo de recuperação de destino de um banco de dados definido para um valor diferente de zero no Microsoft SQL Server 2012, 2014 ou 2016. Se uma asserção ocorrer durante o processo de ponto de verificação, a asserção causará um tempo limite de concessão no banco de dados e você receberá o seguinte arquivo de despejo:
date time spid14s Error: 17066, Severity: 16, State: 1.
date time spid14s SQL Server Assertion: File: <recoveryunit.cpp>, line=7849 Failed Assertion = 'm_ReducedDataSlice <= MaxReducedDataSlice'. This error may be timing-related. If the error persists after rerunning the statement, use DBCC CHECKDB to check the database for structural integrity, or restart the server to ensure in-memory data structures are not corrupted.
date time spid14s Error: 3624, Severity: 20, State: 1.
date time spid14s A system assertion check has failed. Check the SQL Server error log for details. Typically, an assertion failure is caused by a software bug or data corruption. To check for database corruption, consider running DBCC CHECKDB. If you agreed to send dumps to Microsoft during setup, a mini dump will be sent to Microsoft. An update might be available from Microsoft in the latest Service Pack or in a Hotfix from Technical Support.
date time spid14s Error: 18400, Severity: 16, State: 1.
date time spid14s The background checkpoint thread has encountered an unrecoverable error. The checkpoint process is terminating so that the thread can clean up its resources. This is an informational message only. No user action is required.
Resolução
Este problema foi corrigido nas seguintes atualizações cumulativas para SQL Server:
Atualização cumulativa 7 para SQL Server 2012 Service Pack 3
Atualização cumulativa 3 para SQL Server 2014 Service Pack 2
Atualização cumulativa 10 para SQL Server 2014 Service Pack 1
Atualização cumulativa 4 para SQL Server 2016
Atualização cumulativa 1 para SQL Server 2016 SP1
Acerca das atualizações cumulativas 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:
Atualização cumulativa mais recente para o SQL Server 2012 SP3
Atualização cumulativa mais recente para o SQL Server 2014Atualização cumulativa mais recente para o SQL Server 2016
Solução
Para contornar esse problema, defina o tempo de recuperação de destino como zero para o banco de dados afetado.
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.