KB4295233 - FIX: Database recovery could hang if it contains in-memory objects and a recovery failure is encountered during a race condition in SQL Server 2017


As part of SQL Server in-memory database recovery, a parallel task is started to recover in-memory objects. In certain scenarios, this task could fail. There is a race condition during log recovery that, if the failure happens at the last phase of log redo, the parallel task misses the failure notification and does not exit. This translates to a database hang during recovery.

Note This is a transient-race condition issue, and a server restart would unblock the database.


This fix is included in the following update for SQL Server:

Cumulative Update 8 for SQL Server 2017

This update fixes the missed notification so that the recovery task detects the failure and leaves the database as recovery failed. Then an ALTER DATABASE SET ONLINE statement can be issued to restart the database recovery process.

About SQL Server builds

Each new build for SQL Server contains all the hotfixes and security fixes that were in the previous build. We recommend that you install the latest build for your version of SQL Server:

The latest build for SQL Server 2017


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


Learn about the standard terminology that Microsoft uses to describe software updates.

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

What affected your experience?

Any additional feedback? (Optional)

Thank you for your feedback!