KB3201865 - CORRECTIF : le temps de récupération cible d’une base de données définie sur une valeur différente de zéro provoque une assertion et un délai d’expiration du bail dans SQL Server

S’applique à
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Enterprise Core SQL Server 2012 Standard 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) 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)

Symptômes

Supposons que le temps de récupération cible d’une base de données soit défini sur une valeur différente de zéro dans Microsoft SQL Server 2012, 2014 ou 2016. Si une assertion se produit pendant le processus de point de contrôle, l’assertion provoque un délai d’expiration du bail sur la base de données, et vous recevez le fichier d’image mémoire suivant :

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. 

Résolution

Ce problème est résolu dans les mises à jour cumulatives suivantes pour SQL Server :

Mise à jour cumulative 7 pour SQL Server 2012 Service Pack 3
      

Mise à jour cumulative 3 pour SQL Server 2014 Service Pack 2

Mise à jour cumulative 10 pour SQL Server 2014 Service Pack 1

Mise à jour cumulative 4 pour SQL Server 2016

Mise à jour cumulative 1 pour SQL Server 2016 SP1


À propos des mises à jour cumulatives pour SQL Server

À propos des mises à jour cumulatives pour SQL Server

Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et tous les correctifs de sécurité inclus dans la mise à jour cumulative précédente. Consultez les dernières mises à jour cumulatives pour SQL Server :

     Dernière mise à jour cumulative pour SQL Server 2012 SP3

Dernière mise à jour cumulative pour SQL Server 2014Dernière mise à jour cumulative pour SQL Server 2016

      

Solution de contournement

Pour contourner ce problème, définissez le temps de récupération cible sur zéro pour la base de données affectée.

État

Microsoft a confirmé qu’il s’agissait d’un problème dans les produits Microsoft répertoriés dans la section « S’applique à ».

Références

Découvrez la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.