KB4042251 - FIX: Database mirroring failover fails with error 3456 in SQL Server 2016 or 2017


You set up database mirroring by using Microsoft SQL Server 2016 or 2017. When an automatic failover occurs for the mirrored database, the database transition on the mirror side may fail, and you receive an error message that resembles the following:

Error 3456: Could not redo log record %S_LSN, for transaction ID %S_XID, on page %S_PGID, allocation unit %I64d, database '%.*ls' (database ID %d). Page: LSN = %S_LSN, allocation unit = %I64d, type = %ld. Log: OpCode = %ld, context %ld, PrevPageLSN: %S_LSN. Restore from a backup of the database, or repair the database.


This fix is included in the following cumulative updates for SQL Server:

Cumulative Update 1 for SQL Server 2017

Cumulative Update 5 for SQL Server 2016 Service Pack 1

About SQL Server builds:

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

Latest cumulative update for SQL Server 2017

latest build for SQL Server 2016


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


Learn about the terminology 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!