FIX : DBCC CHECKTABLE May Fail if Corruption Exists in Indexes

Article translations Article translations
Article ID: 299323 - View products that this article applies to.
This article was previously published under Q299323
BUG #: 235391 (SHILOH_BUGS)
Expand all | Collapse all

SYMPTOMS

If you run DBCC CHECKTABLE on a table that has corruption in the indexes, the check may terminate with this error message:
[Microsoft][ODBC SQL Server Driver][Named Pipes]ConnectionCheckForData (PeekNamedPipe()).
[Microsoft][ODBC SQL Server Driver][Named Pipes]Connection broken.

RESOLUTION

To resolve this problem, obtain the latest service pack for SQL Server 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
290211 INF: How to Obtain the Latest SQL Server 2000 Service Pack

WORKAROUND

  1. Script out the Database Objects. For example, bulk copy (bcp) out and bcp in the data to a new database.
  2. Drop all automatically created statistics.

STATUS

Microsoft has confirmed that this is a problem in SQL Server 2000. This problem was first corrected in SQL Server 2000 Service Pack 1.

MORE INFORMATION

Before SQL Server 2000 Service Pack 1 (SP1), the following text appears in the error log (that is, when the Connection breaks):
Short Stack Dump
77F810B5 Module(ntdll+000010B5) (NtGetContextThread+0000000B) 
0092569E Module(sqlservr+0052569E) (utassert_fail(enum UTASSERT_TYPE,char const *,char const *,int,char const *,...)+000002E9) 
0083A351 Module(sqlservr+0043A351) (LatchBase::Release(enum LatchBase::LATCH_TYPE)+00000039) 
008E0365 Module(sqlservr+004E0365) (CheckResultSet::Set(class PageId const &,int,unsigned short,int,unsigned short,class PageId const &,int,int,int,int,long,int,unsigned short const *,int,int const * const,short,int,unsigned char const *,int,int)+000004 
77E8314D Module(KERNEL32+0000314D) (SetEvent+0000000C)
-------------------------------------------------------------------------------
2001-05-21 16:09:26.17 spid51    SQL Server Assertion: File: <latch.cpp>, line=799 
Failed Assertion = 'type > NL && type < LASTLATCH'.
2001-05-21 16:09:26.26 spid51    Error: 3624, Severity: 20, State: 1.
				

In SQL Server 2000 SP1, this is the error that should occur:
Server: Msg 8929, Level 16, State 1, Line 1
Object ID 1549468469: Errors found in text ID 105872687104 owned by data record identified by RID = (1:359718:4) OBJECTID1 = 1 and OBJECTVALUE1 = 'FUNCLIB_EN ' and OBJECTID2 = 2 and OBJECTVALUE2 = 'EXPL_BOM_SQL ' and OBJECTID3 = 12 and OBJECTVALUE3 = 'FieldF.

Server: Msg 8965, Level 16, State 1, Line 1
Table error: Object ID 1549468469. The text, ntext, or image node at page (1:362025), slot 1, text ID 105872687104 is referenced by page (1:183752), slot 8, but was not seen in the scan.
DBCC results for 'PSPCMPROG'.
There are 44936 rows in 1893 pages for object 'PSPCMPROG'.
CHECKTABLE found 0 allocation errors and 2 consistency errors in table 'PSPCMPROG' (object ID 1549468469).
repair_allow_data_loss is the minimum repair level for the errors found by DBCC CHECKTABLE (xyz.dbo.PSPCMPROG).
NOTE: Running with NOINDEX does not cause the error to occur or terminate the connection.

Properties

Article ID: 299323 - Last Review: November 5, 2003 - Revision: 3.2
APPLIES TO
  • Microsoft SQL Server 2000 Standard Edition
Keywords: 
kbbug kbfix kbsqlserv2000sp1fix KB299323

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com