FIX: Error 5262 when you execute DBCC CHECKDB on the primary replica in SQL Server 2012


Assume that you use SQL Server 2012 AlwaysOn Availability Groups and that your database contains some corrupted pages because of a fault such as a malfunctioning storage driver. In this situation, the automatic page repair feature may successfully repair the pages silently in the background. However, the DBCC CHECKDB or DBCC CHECKTABLE command does not work well with these repaired pages. Additionally, you receive a false error message that resembles the following:
Msg 5262, Level 16, State 1, Line line_id Object ID object_id, index ID index_id, partition ID partition_id, alloc unit ID alloc_unit_id (type In-row data), page (page_id), row row_id: Row contains a NULL versioning timestamp, but its version chain pointer is not NULL. Version chain points to page (0:0), slot -1.
When you receive this error message, it does not mean that you have database corruption. Instead, it indicates that the DBCC command does not recognize that these pages have been repaired. After you apply this fix, the DBCC command now recognizes that the pages have been repaired, and you will no longer receive this error message.

To check the repaired pages, run the following Dynamic Management Views (DMV) query:

select * from msdb..suspect_pages


This problem was first fixed in the following cumulative update for SQL Server:

About cumulative updates for SQL Server
About cumulative updates for SQL Server


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


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

Article ID: 3211304 - Last Review: 18-Jan-2017 - Revision: 17