FIX: Offline checkpoint thread shuts down without providing detailed exception information in SQL Server 2014

Applies to: SQL Server 2014 DeveloperSQL Server 2014 DeveloperSQL Server 2014 Enterprise


Assume that you have a database that has a memory-optimized filegroup in Microsoft SQL Server 2014. The transaction log may continue to grow large, and you can't truncate or shrink the log. If you're hitting this issue, you'll see the following symptoms:
  • The sys.databases catalog view reports log_reuse_wait_desc as "XTP_CHECKPOINT."
    Select name, log_reuse_wait_desc from sys.databases where name='<DatabaseName>'
  • A manual checkpoint operation on the affected database fails, and you receive the following error message:
    Msg 41315, Level 16, State 4, Line N
    Checkpoint operation failed in database <database name>.
  • You can't find the offline checkpoint thread that corresponds to the affected database.
    Select db_name(database_id) as DatabaseName, * from sys.dm_exec_requests where command = 'XTP_OFFLINE_CKPT'
  • Querying statistics about the In-Memory OLTP checkpoint operation for the affected database returns 0 for every column:
    Select * from sys.dm_db_xtp_checkpoint_stats


The issue was first fixed in the following cumulative updates of SQL Server:


To work around this issue, bring the affected database offline and then back online, or recycle the instance of SQL Server.

Note The transaction log can be truncated or shrank. However, the issue may reoccur until the fix is applied.


Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.