FIX: An assertion error occurs when you insert data in the same row in a table by using multiple connections to an instance of SQL Server

Bug #: 354812 (SQL Server 8.0)
BUG #: 354812 (SQL Server 8.0)
BUG #: 26763 (Content Maintenance)

Summary

This article describes the following about this hotfix release:
  • The issues that are fixed by this hotfix package.
  • The prerequisites for installing the hotfix package.
  • Whether you must restart your computer after you install the hotfix package.
  • Whether the hotfix package is replaced by any other hotfix package.
  • Whether you must make any registry changes.
  • The files that are contained in the hotfix package.

back to the top

Symptoms

When you try to insert data in a row in a table by using multiple connections to an instance of Microsoft SQL Server, you may receive the following assertion error message in the SQL Server error log:
2001-06-18 21:33:32.87 spid55 SQL Server Assertion: File: <insert.c>, line=571
Failed Assertion = 'sdesP->m_pIndex->indindid == CLUSTIND'.

2001-06-18 21:33:32.90 spid55 Error: 3624, Severity: 20, State: 1.
This problem occurs if all the following conditions are true:
  • The data that you try to insert is the same data as in at least one of the columns in the row.
  • In the table, a non-clustered index is defined on the column where you insert the same data.
  • This non-clustered index is created by using the IGNORE_DUP_KEY option.
For more information about previous hotfixes, click the following article number to view the article in the Microsoft Knowledge Base:

290211 How to obtain the latest SQL Server 2000 service pack


back to the top

Cause

This problem occurs because the row that you insert is inserted in the last row on an index page.

Resolution

Service pack information

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

Hotfix information

Prerequisites

This hotfix requires Microsoft SQL Server 2000 Service Pack 3 (SP3).

For more information about how to obtain SQL Server 2000 Service Pack 3, click the following article number to view the article in the Microsoft Knowledge Base:

290211 How to obtain the latest SQL Server 2000 service pack


back to the top

Restart information

You do not have to restart your computer after you apply this hotfix.

back to the top

Hotfix file information

This hotfix contains only those files that are required to correct the issues that this article lists. This hotfix may not contain all the files that you must have to fully update a product to the latest build.
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.


Date Time Version Size File name
------------------------------------------------------------------------
23-Aug-2004 14:15 2000.80.972.0 664,128 Autoplt.dll
23-Aug-2004 14:15 2000.80.972.0 78,400 Console.exe
23-Aug-2004 14:15 2000.80.972.0 332,352 Ctasksui.dll
23-Aug-2004 14:15 2000.80.972.0 315,968 Custtask.dll
23-Aug-2004 14:15 2000.80.972.0 33,340 Dbmslpcn.dll
08-Apr-2004 09:12 786,432 Distmdl.ldf
08-Apr-2004 09:12 2,359,296 Distmdl.mdf
10-Oct-2003 06:18 180 Drop_repl_hotfix.sql
23-Aug-2004 14:15 2000.80.972.0 1,905,216 Dtspkg.dll
23-Aug-2004 14:15 2000.80.972.0 528,960 Dtspump.dll
23-Aug-2004 14:15 2000.80.972.0 1,557,052 Dtsui.dll
23-Aug-2004 14:15 2000.80.972.0 639,552 Dtswiz.dll
10-Oct-2003 06:18 747,927 Instdist.sql
10-Oct-2003 06:18 1,581 Inst_repl_hotfix.sql
23-Aug-2004 14:15 2000.80.972.0 352,828 Isqlw.exe
23-Aug-2004 14:15 2000.80.972.0 82,492 Itwiz.exe
23-Aug-2004 14:15 2000.80.972.0 90,692 Msgprox.dll
19-May-2004 11:13 8.11.40209.0 209,408 Mssdi98.dll
23-Aug-2004 14:15 2000.80.972.0 62,024 Odsole70.dll
23-Aug-2004 14:16 2000.80.972.0 25,144 Opends60.dll
23-Aug-2004 14:15 2000.80.972.0 57,904 Osql.exe
23-Aug-2004 14:15 2000.80.972.0 279,104 Pfutil80.dll
10-Oct-2003 06:07 550,780 Procsyst.sql
08-Apr-2004 09:12 12,305 Qfe469315.sql
08-Apr-2004 09:12 19,195 Qfe469571.sql
17-Aug-2004 11:57 5,155 Qfe472197.sql
23-Aug-2004 14:15 2000.80.972.0 143,940 Qrdrsvc.exe
23-Aug-2004 14:43 1,105,167 Replmerg.sql
23-Aug-2004 14:15 2000.80.972.0 221,768 Replprov.dll
23-Aug-2004 14:15 2000.80.972.0 307,784 Replrec.dll
23-Aug-2004 13:05 2000.80.972.0 159,813 Replres.rll
17-Aug-2004 11:57 1,086,925 Replsys.sql
10-Oct-2003 06:18 986,603 Repltran.sql
23-Aug-2004 14:15 2000.80.972.0 287,304 Rinitcom.dll
23-Aug-2004 14:15 2000.80.972.0 78,416 Sdiclnt.dll
23-Aug-2004 14:15 2000.80.972.0 66,112 Semmap.dll
23-Aug-2004 14:15 2000.80.972.0 57,916 Semnt.dll
23-Aug-2004 14:15 2000.80.972.0 492,096 Semobj.dll
23-Aug-2004 13:41 2000.80.972.0 172,032 Semobj.rll
23-Aug-2004 14:15 2000.80.972.0 53,832 Snapshot.exe
13-Jul-2004 08:29 117,834 Sp3_serv_uni.sql
23-Aug-2004 14:14 2000.80.972.0 28,672 Sqlagent.dll
23-Aug-2004 14:15 2000.80.972.0 311,872 Sqlagent.exe
23-Aug-2004 14:14 2000.80.972.0 168,001 Sqlakw32.dll
23-Aug-2004 14:15 2000.80.972.0 33,344 Sqlctr80.dll
23-Aug-2004 14:15 2000.80.972.0 4,215,360 Sqldmo.dll
23-Aug-2004 14:15 25,172 Sqldumper.exe
23-Aug-2004 12:51 2000.80.972.0 28,672 Sqlevn70.rll
23-Aug-2004 14:15 2000.80.972.0 156,224 Sqlmaint.exe
23-Aug-2004 14:15 2000.80.972.0 180,792 Sqlmap70.dll
23-Aug-2004 14:15 2000.80.972.0 188,992 Sqlmmc.dll
23-Aug-2004 13:47 2000.80.972.0 479,232 Sqlmmc.rll
23-Aug-2004 14:16 2000.80.972.0 401,984 Sqlqry.dll
23-Aug-2004 14:16 2000.80.972.0 57,920 Sqlrepss.dll
23-Aug-2004 14:16 2000.80.972.0 7,581,777 Sqlservr.exe
23-Aug-2004 14:16 2000.80.972.0 590,396 Sqlsort.dll
23-Aug-2004 14:16 2000.80.972.0 45,644 Sqlvdi.dll
23-Aug-2004 14:16 2000.80.972.0 106,588 Sqsrvres.dll
23-Aug-2004 14:16 2000.80.972.0 33,340 Ssmslpcn.dll
23-Aug-2004 14:16 2000.80.972.0 82,492 Ssnetlib.dll
23-Aug-2004 14:16 2000.80.972.0 25,148 Ssnmpn70.dll
23-Aug-2004 14:16 2000.80.972.0 123,456 Stardds.dll
23-Aug-2004 14:16 2000.80.972.0 158,240 Svrnetcn.dll
23-Aug-2004 14:15 2000.80.972.0 76,416 Svrnetcn.exe
23-Aug-2004 14:16 2000.80.972.0 49,228 Ums.dll
23-Aug-2004 14:16 2000.80.972.0 98,872 Xpweb70.dll


Note Because of file dependencies, the most recent hotfix that contains these files may also contain additional files.

Workaround

To work around this problem, remove the IGNORE_DUP_KEY option that is set on the unique non-clustered index of the table.

back to the top

Status

Microsoft has confirmed that this is a bug in the Microsoft products that are listed in the "Applies to" section. This problem was first corrected in Microsoft SQL Server 2000 Service Pack 4.

back to the top

More Information

For more information about the naming schema for Microsoft SQL Server updates, click the following article number to view the article in the Microsoft Knowledge Base:

822499 New naming schema for Microsoft SQL Server software update packages

For more information about the terminology that Microsoft uses when correcting software after the software is released, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates

Stack information

A stack dump file that is similar to the following is logged in the SQL Server error log:

Short Stack Dump
00866627 Module(sqlservr+00466627) (CStackDump::GetContextAndDump+0000002E)
0086804E Module(sqlservr+0046804E) (stackTrace+0000021D)
0091D108 Module(sqlservr+0051D108) (utassert_fail+000002E3)
007FA5B3 Module(sqlservr+003FA5B3) (rowinsert+000001E5)
0041B2AB Module(sqlservr+0001B2AB) (insert+00000013)
0041D1B1 Module(sqlservr+0001D1B1) (RowsetSS::InsertRow+000001F4)
0041A9BE Module(sqlservr+0001A9BE) (CValRow::SetDataX+00000026)
00419E0E Module(sqlservr+00019E0E) (SetMultData+0000001C)
0041ADB9 Module(sqlservr+0001ADB9) (CEs::GeneralEval+000000DC)
006EA774 Module(sqlservr+002EA774) (CQScanUpdate::GetRow+000001DA)
004197AA Module(sqlservr+000197AA) (CQueryScan::GetRow+00000014)
00418CD7 Module(sqlservr+00018CD7) (CStmtQuery::ErsqExecuteQuery+0000035A)
0041A522 Module(sqlservr+0001A522) (CStmtDML::XretExecuteNormal+000002BD)
0041A346 Module(sqlservr+0001A346) (CStmtDML::XretExecute+0000001C)
00413CEE Module(sqlservr+00013CEE) (CMsqlExecContext::ExecuteStmts+000002D2)
004133E9 Module(sqlservr+000133E9) (CMsqlExecContext::Execute+000001B6)
00412918 Module(sqlservr+00012918) (CSQLSource::Execute+00000331)
004E737F Module(sqlservr+000E737F) (CStmtExec::XretLocalExec+0000014D)
004E721B Module(sqlservr+000E721B) (CStmtExec::XretExecute+0000031A)
00413CEE Module(sqlservr+00013CEE) (CMsqlExecContext::ExecuteStmts+000002D2)
004133E9 Module(sqlservr+000133E9) (CMsqlExecContext::Execute+000001B6)
00412918 Module(sqlservr+00012918) (CSQLSource::Execute+00000331)
00448916 Module(sqlservr+00048916) (language_exec+000003E1)
00411D4C Module(sqlservr+00011D4C) (process_commands+000000E0)
41073379 Module(UMS+00003379) (ProcessWorkRequests+0000024A)
41073071 Module(UMS+00003071) (ThreadStartRoutine+000000BD)
7800BEE4 Module(MSVCRT+0000BEE4) (beginthread+000000CE)
77F04EE8 Module(KERNEL32+00004EE8) (lstrcmpiW+000000BE)
-------------------------------------------------------------------------------
2001-06-18 21:33:32.87 spid55 SQL Server Assertion: File: <insert.c>,
line=571
Failed Assertion = 'sdesP->m_pIndex->indindid == CLUSTIND'.
2001-06-18 21:33:32.90 spid55 Error: 3624, Severity: 20, State: 1.
2001-06-18 21:33:32.90 spid57 Using 'dbghelp.dll' version '4.0.5'
Dump thread - spid = 57, PSS = 0x4907d690, EC = 0x4907d9a0
Stack Dump being sent to d:\devices\MSSQL\log\SQL00012.dmp


back to the top
Properties

Article ID: 885290 - Last Review: Jul 10, 2008 - Revision: 1

Feedback