Article ID: 886708
Article Last Modified on 11/2/2007
APPLIES TO
- Microsoft SQL Server 2000 Developer Edition
- Microsoft SQL Server 2000 Standard Edition
- Microsoft SQL Server 2000 Enterprise Edition
- Microsoft SQL Server 2000 Personal Edition
- Microsoft SQL Server 2000 Enterprise Edition
- Microsoft SQL Server 2000 Workgroup Edition
- Microsoft SQL Server 2000 Desktop Engine (Windows)
- Microsoft SQL Server 2000 Developer Edition
- Microsoft SQL Server 2000 Enterprise Edition 64-bit
Bug #: 472729 (SQL Server 8.0)
Article contents
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
SYMPTOMS
In Microsoft SQL Server 2000, when you insert lots of text, ntext, or image data over multiple concurrent connections, the data may take longer to insert than in scenarios where the data is inserted serially.
When the concurrent inserts occur, the sysprocesses virtual table may display one of the following values in the waittype column for the connections that perform the inserts:
- 0x0413 (PAGELATCH_UP)
- 0x0414 (PAGELATCH_EX)
The value of the waitresource column for the PAGELATCH_UP waittype is a page number that is always an even multiple of 8088.
For a list of all publicly released SQL Server 2000 Post-Service Pack 3a hotfixes, see the following article in the Microsoft Knowledge Base:
810185 SQL Server 2000 hotfix update for SQL Server 2000 Service Pack 3 and 3a
CAUSE
This problem occurs when the binary large object (BLOB) data is inserted over concurrent connections.
Text, ntext, and image data is stored in chunks. These chunks are linked and form the sequence of the binary data for a specific row in SQL Server 2000. These chunks of data can be one of the following:
- Full pages, where all the data on the page is associated with a single row.
- A mixed page that stores fragments from multiple rows.
When full pages are allocated, delay may occur between allocating the page and marking the page as full. This delay may cause other concurrent insertions to examine the page to see if there is available space for that insert.
When you insert the data over a concurrent connection, the sysprocesses virtual table may indicate that the connection that is trying the insert has a waittype of either of the following values for the PAGELATCH_UP and PAGELATCH_EX waittypes.
- 0x0413 (PAGELATCH_UP)
- 0x0414 (PAGELATCH_EX)
With a concurrent connection, an incoming thread for an insert tries to latch the page PAGELATCH_EX. However, the thread is blocked. Then, the insert waits for the thread that is currently inserting onto the page. Only when the first insert is complete can the second insert find that the page is full and does not have space that is available for the second insert. When this scenario occurs, the second insert is returned to the allocation code to look for another page to insert on. These additional trips to the allocation code cause the delay in inserting data to SQL Server 2000 over concurrent connections.
back to the top
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 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
Additionally, this hotfix requires that you also have SQL Server 2000 hotfix build 2000.80.977 installed. For more information about SQL Server 2000 Post SP3a hotfix build 2000.80.977, click the following article number to view the article in the Microsoft Knowledge Base:
888007 You receive a "The product does not have a prerequisite update installed" error message when you try to install a SQL Server 2000 post-Service Pack 3 hotfix
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.
SQL Server 2000, 32-bit versions
Date Time Version Size File name ------------------------------------------------------------------ 08-Oct-2004 01:13 2000.80.980.0 664,128 Autoplt.dll 08-Oct-2004 01:13 2000.80.980.0 78,400 Console.exe 08-Oct-2004 01:13 2000.80.980.0 332,352 Ctasksui.dll 08-Oct-2004 01:13 2000.80.980.0 315,968 Custtask.dll 08-Oct-2004 01:13 2000.80.980.0 33,340 Dbmslpcn.dll 08-Apr-2004 21:42 786,432 Distmdl.ldf 08-Apr-2004 21:42 2,359,296 Distmdl.mdf 30-Sep-2003 22:55 180 Drop_repl_hotfix.sql 08-Oct-2004 01:13 2000.80.980.0 1,905,216 Dtspkg.dll 08-Oct-2004 01:13 2000.80.980.0 528,960 Dtspump.dll 08-Oct-2004 01:13 2000.80.980.0 1,557,052 Dtsui.dll 08-Oct-2004 01:13 2000.80.980.0 639,552 Dtswiz.dll 30-Sep-2003 22:55 747,927 Instdist.sql 30-Sep-2003 22:55 1,581 Inst_repl_hotfix.sql 08-Oct-2004 01:13 2000.80.980.0 352,828 Isqlw.exe 08-Oct-2004 01:13 2000.80.980.0 82,492 Itwiz.exe 08-Oct-2004 01:13 2000.80.980.0 90,692 Msgprox.dll 19-May-2004 23:43 8.11.40209.0 209,408 Mssdi98.dll 08-Oct-2004 01:13 2000.80.980.0 62,024 Odsole70.dll 08-Oct-2004 01:14 2000.80.980.0 25,144 Opends60.dll 08-Oct-2004 01:13 2000.80.980.0 57,904 Osql.exe 08-Oct-2004 01:13 2000.80.980.0 279,104 Pfutil80.dll 30-Sep-2003 22:48 550,780 Procsyst.sql 08-Apr-2004 21:42 12,305 Qfe469315.sql 08-Apr-2004 21:42 19,195 Qfe469571.sql 27-Aug-2004 00:13 5,157 Qfe472197.sql 08-Oct-2004 01:13 2000.80.980.0 143,940 Qrdrsvc.exe 30-Sep-2004 16:25 1,105,167 Replmerg.sql 08-Oct-2004 01:13 2000.80.980.0 221,768 Replprov.dll 08-Oct-2004 01:13 2000.80.980.0 307,784 Replrec.dll 30-Sep-2004 01:51 2000.80.980.0 159,813 Replres.rll 27-Aug-2004 00:13 1,086,925 Replsys.sql 30-Sep-2003 22:55 986,603 Repltran.sql 08-Oct-2004 01:13 2000.80.980.0 287,304 Rinitcom.dll 08-Oct-2004 01:13 2000.80.980.0 78,416 Sdiclnt.dll 08-Oct-2004 01:13 2000.80.980.0 66,112 Semmap.dll 08-Oct-2004 01:13 2000.80.980.0 57,916 Semnt.dll 08-Oct-2004 01:13 2000.80.980.0 492,096 Semobj.dll 30-Sep-2004 02:20 2000.80.980.0 172,032 Semobj.rll 08-Oct-2004 01:13 2000.80.980.0 53,832 Snapshot.exe 30-Sep-2003 22:48 117,834 Sp3_serv_uni.sql 08-Oct-2004 01:12 2000.80.980.0 28,672 Sqlagent.dll 08-Oct-2004 01:13 2000.80.980.0 311,872 Sqlagent.exe 08-Oct-2004 01:12 2000.80.980.0 168,001 Sqlakw32.dll 08-Oct-2004 01:13 2000.80.980.0 33,344 Sqlctr80.dll 08-Oct-2004 01:13 2000.80.980.0 4,215,360 Sqldmo.dll 08-Oct-2004 01:13 25,172 Sqldumper.exe 30-Sep-2004 01:34 2000.80.980.0 28,672 Sqlevn70.rll 08-Oct-2004 01:13 2000.80.980.0 156,224 Sqlmaint.exe 08-Oct-2004 01:13 2000.80.980.0 180,792 Sqlmap70.dll 08-Oct-2004 01:13 2000.80.980.0 188,992 Sqlmmc.dll 30-Sep-2004 02:34 2000.80.980.0 479,232 Sqlmmc.rll 08-Oct-2004 01:13 2000.80.980.0 401,984 Sqlqry.dll 08-Oct-2004 01:13 2000.80.980.0 57,920 Sqlrepss.dll 08-Oct-2004 01:13 2000.80.980.0 7,712,849 Sqlservr.exe 08-Oct-2004 01:13 2000.80.980.0 590,396 Sqlsort.dll 08-Oct-2004 01:13 2000.80.980.0 45,644 Sqlvdi.dll 08-Oct-2004 01:13 2000.80.980.0 106,588 Sqsrvres.dll 08-Oct-2004 01:13 2000.80.980.0 33,340 Ssmsgnet.dll 08-Oct-2004 01:13 2000.80.980.0 33,340 Ssmslpcn.dll 08-Oct-2004 01:13 2000.80.980.0 33,340 Ssmsqlgc.dll 08-Oct-2004 01:13 2000.80.980.0 82,492 Ssnetlib.dll 08-Oct-2004 01:13 2000.80.980.0 25,148 Ssnmpn70.dll 08-Oct-2004 01:13 2000.80.980.0 123,456 Stardds.dll 08-Oct-2004 01:13 2000.80.980.0 158,240 Svrnetcn.dll 08-Oct-2004 01:13 2000.80.980.0 76,416 Svrnetcn.exe 08-Oct-2004 01:13 2000.80.980.0 49,228 Ums.dll 08-Oct-2004 01:13 2000.80.980.0 74,304 Xplog70.dll 08-Oct-2004 01:13 2000.80.980.0 98,872 Xpweb70.dll
SQL Server 2000, 64-bit version
Date Time Version Size File name Platform ----------------------------------------------------------------------------- 01-Oct-2004 02:28 2000.80.980.0 56,832 Dbmslpcn.dll IA-64 08-Apr-2004 21:42 786,432 Distmdl.ldf 08-Apr-2004 21:42 2,359,296 Distmdl.mdf 30-Sep-2003 22:55 180 Drop_repl_hotfix.sql 30-Sep-2003 22:55 747,927 Instdist.sql 30-Sep-2003 22:55 1,581 Inst_repl_hotfix.sql 01-Oct-2004 02:28 2000.80.980.0 185,856 Msgprox.dll IA-64 19-May-2004 23:43 8.11.40517.0 722,944 Mssdi98.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 151,040 Odsole70.dll IA-64 01-Oct-2004 02:29 2000.80.980.0 27,136 Opends60.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 148,992 Osql.exe IA-64 30-Sep-2003 22:48 550,780 Procsyst.sql 08-Apr-2004 21:42 12,305 Qfe469315.sql 08-Apr-2004 21:42 19,195 Qfe469571.sql 27-Aug-2004 00:13 5,157 Qfe472197.sql 01-Oct-2004 02:28 2000.80.980.0 353,280 Qrdrsvc.exe IA-64 30-Sep-2004 16:25 1,105,167 Replmerg.sql 01-Oct-2004 02:28 2000.80.980.0 534,528 Replprov.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 769,024 Replrec.dll IA-64 30-Sep-2004 16:26 2000.80.980.0 146,432 Replres.rll 27-Aug-2004 00:13 1,086,925 Replsys.sql 30-Sep-2003 22:55 986,603 Repltran.sql 01-Oct-2004 02:28 2000.80.980.0 650,240 Rinitcom.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 160,768 Semmap.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 132,608 Semnt.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 88,576 Snapshot.exe IA-64 30-Sep-2003 22:48 117,834 Sp3_serv_uni.sql 01-Oct-2004 02:27 2000.80.980.0 10,240 Sqlagent.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 1,055,232 Sqlagent.exe IA-64 01-Oct-2004 02:28 2000.80.980.0 90,112 Sqlboot.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 32,256 Sqlctr80.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 13,845,504 Sqldmo.dll IA-64 01-Oct-2004 02:28 39,936 Sqldumper.exe IA-64 30-Sep-2004 16:15 2000.80.980.0 19,968 Sqlevn70.rll 01-Oct-2004 02:28 2000.80.980.0 493,568 Sqlmaint.exe IA-64 01-Oct-2004 02:28 2000.80.980.0 23,040 Sqlmap70.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 152,064 Sqlrepss.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 25,205,760 Sqlservr.exe IA-64 01-Oct-2004 02:28 2000.80.980.0 616,960 Sqlsort.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 120,320 Sqlvdi.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 227,328 Sqsrvres.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 53,760 Ssmslpcn.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 59,904 Ssmsqlgc.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 255,488 Ssnetlib.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 20,992 Ssnmpn70.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 430,080 Svrnetcn.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 185,856 Svrnetcn.exe IA-64 01-Oct-2004 02:28 2000.80.980.0 183,296 Xplog70.dll IA-64 01-Oct-2004 02:28 2000.80.980.0 187,392 Xpweb70.dll IA-64
Note Because of file dependencies, the most recent hotfix that contains these files may also contain additional files.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 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 it corrects software after it 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
Additional query words: SQL2000 PFS text insert contention latch timeouts
Keywords: kbbug kbfix kbqfe kbsqlserv2000presp4fix kbhotfixserver KB886708