You are currently offline, waiting for your internet to reconnect

Your browser is out-of-date

You need to update your browser to use the site.

Update to the latest version of Internet Explorer

Error message when you run the DBCC CHECKDB command on a computer that contains a SQL Server database: "Error 8967"

Extended support for SQL Server 2005 ends on April 12, 2016

If you are still running SQL Server 2005 after April 12, 2016, you will no longer receive security updates and technical support. We recommend upgrading to SQL Server 2014 and Azure SQL Database to achieve breakthrough performance, maintain security and compliance, and optimize your data platform infrastructure. Learn more about the options for upgrading from SQL Server 2005 to a supported version here.

SYMPTOMS
Consider the following scenario:
  • You restore a Microsoft SQL Server 2008 or SQL Server 2005 database from a backup.
  • You receive errors during the restore process that prevent you from restoring the database.
  • You successfully restore the database from the same backup by using the CONTINUE_AFTER_ERRORoption.
In this scenario, when you run the DBCC CHECKDB command on the computer that contains the SQL Server database, you receive an error message that resembles the following:
Msg 8967, Level 16, State 216, Server <server name>, Line 2
An internal error occurred in DBCC which prevented further processing. Please contact Customer Support.
DBCC results for '<database name>'.
Msg 8921, Level 16, State 1, Server <server name>, Line 1
Check terminated. A failure was detected while collecting facts. Possibly tempdb out of space or a system table is inconsistent. Check previous errors.
Additionally, a message that resembles the following may be displayed in the SQL Server error log:
2007-05-26 07:13:49.21 spid58 DBCC encountered a page with an LSN greater than the current end of log LSN (<LSN>) for its internal database snapshot. Could not read page (file id:page id), database '<database name' (database ID database id>), LSN = (<LSN>), type = 32, isInSparseFile = 1. Please re-run this DBCC command.
CAUSE
This problem occurs if the DBCC CHECKDB command cannot perform the necessary checks to confirm the consistency of the database. These checks could not be performed for many reasons. For example, this behavior may occur if there are fundamental inconsistencies in the database, such as metadata inconsistencies or database snapshot corruption. More information about the specific cause of this error can be determined by examining the different state that is displayed in the error message.In the scenario that is described in the "Symptoms" section, the state 216 message indicates that the DBCC CHECKDB command read a page from the internal snapshot that has a larger log sequence number (LSN) than the end of log LSN. This behavior might occur if you restore databases by using the CONTINUE_AFTER_ERROR option.
WORKAROUND
To work around this problem, use the TABLOCK hint with the DBCC CHECKDB command. This lets the DBCC CHECKDB command finish without generating the error message.

For more information about TABLOCK hints, visit the following Microsoft Web site:
STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
Properties

Article ID: 960791 - Last Review: 01/01/2009 00:11:49 - Revision: 1.2

  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • kbexpertiseadvanced kberrmsg kbtshoot kbsurveynew kbprb KB960791
Feedback