Microsoft distributes Microsoft SQL Server 2008 and Microsoft SQL Server 2008 R2 fixes as one downloadable file. Because the fixes are cumulative, each new release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 or SQL Server 2008 R2 fix release.
Symptoms
When you run a Transaction-SQL query in Microsoft SQL Server 2008 or in SQL Server 2008 R2, you notice the following symptoms:
-
You receive an error message that resembles the following:
Location: e:\sql10_katmai_t\sql\ntdbms\storeng\dfs\access\sebind.h:1139
Expression: bufferLen >= colLen SPID: <SPID> Process ID: <ProcessID> Msg 3624, Level 20, State 1, Line 2 A system assertion check has failed. Check the SQL Server error log for more information. Typically, an assertion failure is caused by a software bug or data corruption. To check for database corruption, consider running DBCC CHECKDB. If you agreed to send dumps to Microsoft during setup, a mini dump will be sent to Microsoft. An update might be available from Microsoft in the latest Service Pack or in a QFE from Technical Support. Msg 0, Level 20, State 0, Line 0 A severe error occurred on the current command. The results, if any, should be discarded. -
An error message that resembles the following is logged in the SQL Server Error log:
<Date Time> spid<ID> Using 'dbghelp.dll' version '4.0.5'
<Date Time> spid<ID> **Dump thread - spid = 0, EC = 0x0000000086DC00F0 <Date Time> spid<ID> ***Stack Dump being sent to C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\LOG \SQLDump0001.txt <Date Time> spid<ID> * ******************************************************************************* <Date Time> spid<ID> * <Date Time> spid<ID> * BEGIN STACK DUMP: <Date Time> spid<ID> * <Date Time> spid <ID> <Date Time> spid<ID> * <Date Time> spid<ID> * Location: e:\sql10_katmai_t\sql\ntdbms\storeng\dfs\access\sebind.h:1139 <Date Time> spid<ID> * Expression: bufferLen >= colLen <Date Time> spid<ID> * SPID: <SPID> <Date Time> spid<ID> * Process ID: <ProcessID> <Date Time> spid<ID> * <Date Time> spid<ID> * Input Buffer 264 bytes - <Date Time> spid<ID> * select * from t1 O inner join t2 T on O.id = T.id and O.tit <Date Time> spid<ID> * le = T.title order by O.id, O.title option (loop join) <Date Time> spid<ID> * ... ... ... ... <Date Time> spid<ID> Error: 17066, Severity: 16, State: 1. <Date Time> spid<ID> SQL Server Assertion: File: <e:\sql10_katmai_t\sql\ntdbms\storeng\dfs\access\sebind.h>, line=1139 Failed Assertion = 'bufferLen >= colLen'. This error may be timing-related. If the error persists after rerunning the statement, use DBCC CHECKDB to check the database for structural integrity, or restart the server to ensure in-memory data structures are not corrupted. <Date Time> spid<ID> Error: 3624, Severity: 20, State: 1. <Date Time> spid<ID> A system assertion check has failed. Check the SQL Server error log for details. Typically, an assertion failure is caused by a software bug or data corruption. To check for database corruption, consider running DBCC CHECKDB. If you agreed to send dumps to Microsoft during setup, a mini dump will be sent to Microsoft. An update might be available from Microsoft in the latest Service Pack or in a QFE from Technical Support. -
A mini-dump file is generated in the folder that contains the SQL Server Error logs.
These problems occur when the following conditions are true:
-
The query obtains data from two or more tables by using the JOIN statement.
-
One of the tables has data compression enabled.
-
In the table, you have a clustered index key on a column.
-
The column refers to columns in other tables that have different lengths.
-
The column is used in the ON filter.
-
The query uses the LOOP JOIN join hint, or SQL Server performs an operation that uses the LOOP JOIN join hint.
Cause
The issue occurs because the length of the key data is bigger than the length of the compressed key value buffer.
Resolution
Cumulative update information
SQL Server 2008 Service Pack 1
The fix for this issue was first released in Cumulative Update 9 for SQL Server 2008 Service Pack 1. For more information about this cumulative update package, click the following article number to view the article in the Microsoft Knowledge Base:
2083921 cumulative update 9 for SQL Server 2008 Service Pack 1Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 fix release. Microsoft recommends that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
970365 The SQL Server 2008 builds that were released after SQL Server 2008 Service Pack 1 was released Microsoft SQL Server 2008 hotfixes are created for specific SQL Server service packs. You must apply a SQL Server 2008 Service Pack 1 hotfix to an installation of SQL Server 2008 Service Pack 1. By default, any hotfix that is provided in a SQL Server service pack is included in the next SQL Server service pack.
SQL Server 2008 Service Pack 2
The fix for this issue was first released in Cumulative Update 1 for SQL Server 2008 Service Pack 2. For more information about this cumulative update package, click the following article number to view the article in the Microsoft Knowledge Base:
2289254 Cumulative update 1 for SQL Server 2008 Service Pack 2Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 fix release. We recommend that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
2402659 The SQL Server 2008 builds that were released after SQL Server 2008 Service Pack 2 was released
SQL Server 2008 R2
The fix for this issue was first released in Cumulative Update 4. For more information about how to obtain this cumulative update package for SQL Server 2008 R2, click the following article number to view the article in the Microsoft Knowledge Base:
2345451 Cumulative Update package 4 for SQL Server 2008 R2 Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 R2 fix release. We recommend that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
981356 The SQL Server 2008 R2 builds that were released after SQL Server 2008 R2 was released
Hotfix information
A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem.
If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, submit a request to Microsoft Customer Service and Support to obtain the hotfix. Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft website:http://support.microsoft.com/contactus/?ws=supportNote The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.
Prerequisites
You must have SQL Server 2008 Service Pack 1 installed to apply this hotfix.
Restart information
You do not have to restart the computer after you apply this hotfix.
Registry information
You do not have to change the registry after you apply this hotfix.
File information
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 item in Control Panel.
SQL Server 2008, 32-bit version
File name |
File version |
File size |
Date |
Time |
Platform |
---|---|---|---|---|---|
Databasemailengine.dll |
10.0.2781.0 |
75,624 |
07-Jun-2010 |
03:45 |
x86 |
Databasemailprotocols.dll |
10.0.2781.0 |
42,856 |
07-Jun-2010 |
03:45 |
x86 |
Instmdw.sql |
Not applicable |
469,806 |
05-Jun-2010 |
00:40 |
Not applicable |
Instmsdb.sql |
Not applicable |
1,676,518 |
04-Jun-2010 |
21:02 |
Not applicable |
Mssqlsystemresource.ldf |
Not applicable |
524,288 |
05-Jun-2010 |
03:36 |
Not applicable |
Mssqlsystemresource.mdf |
Not applicable |
63,307,776 |
05-Jun-2010 |
03:36 |
Not applicable |
Queryactivityupload.dtsx |
Not applicable |
680,107 |
05-Jun-2010 |
00:40 |
Not applicable |
Sql_engine_core_inst_keyfile.dll |
2007.100.2781.0 |
13,672 |
07-Jun-2010 |
04:26 |
x86 |
Sqlaccess.dll |
2007.100.2781.0 |
405,352 |
07-Jun-2010 |
05:32 |
x86 |
Sqlagent.exe |
2007.100.2781.0 |
367,464 |
07-Jun-2010 |
05:32 |
x86 |
Sqlagent100_msdb_upgrade.sql |
Not applicable |
1,790,639 |
05-Jun-2010 |
00:21 |
Not applicable |
Sqlctr100.dll |
2007.100.2781.0 |
72,552 |
07-Jun-2010 |
05:32 |
x86 |
Sqlscriptdowngrade.dll |
2007.100.2781.0 |
14,696 |
07-Jun-2010 |
05:33 |
x86 |
Sqlscriptupgrade.dll |
2007.100.2781.0 |
3,380,072 |
07-Jun-2010 |
05:33 |
x86 |
Sqlservr.exe |
2007.100.2781.0 |
42,745,192 |
07-Jun-2010 |
05:33 |
x86 |
Sqsrvres.dll |
2007.100.2781.0 |
89,960 |
07-Jun-2010 |
05:33 |
x86 |
Xpstar.dll |
2007.100.2781.0 |
300,904 |
07-Jun-2010 |
05:36 |
x86 |
SQL Server 2008, x64-based version
File name |
File version |
File size |
Date |
Time |
Platform |
---|---|---|---|---|---|
Databasemailengine.dll |
10.0.2781.0 |
75,624 |
06-Jun-2010 |
04:15 |
x86 |
Databasemailprotocols.dll |
10.0.2781.0 |
42,856 |
06-Jun-2010 |
04:15 |
x86 |
Instmdw.sql |
Not applicable |
469,806 |
05-Jun-2010 |
00:40 |
Not applicable |
Instmsdb.sql |
Not applicable |
1,676,518 |
04-Jun-2010 |
21:02 |
Not applicable |
Mssqlsystemresource.ldf |
Not applicable |
524,288 |
05-Jun-2010 |
03:36 |
Not applicable |
Mssqlsystemresource.mdf |
Not applicable |
63,307,776 |
05-Jun-2010 |
03:36 |
Not applicable |
Queryactivityupload.dtsx |
Not applicable |
680,107 |
05-Jun-2010 |
00:40 |
Not applicable |
Sql_engine_core_inst_keyfile.dll |
2007.100.2781.0 |
14,184 |
06-Jun-2010 |
04:36 |
x64 |
Sqlaccess.dll |
2007.100.2781.0 |
412,008 |
06-Jun-2010 |
05:16 |
x86 |
Sqlagent.exe |
2007.100.2781.0 |
427,880 |
06-Jun-2010 |
05:16 |
x64 |
Sqlagent100_msdb_upgrade.sql |
Not applicable |
1,790,639 |
05-Jun-2010 |
00:21 |
Not applicable |
Sqlctr100.dll |
2007.100.2781.0 |
108,392 |
06-Jun-2010 |
05:16 |
x64 |
Sqlctr100.dll |
2007.100.2781.0 |
72,552 |
07-Jun-2010 |
05:32 |
x86 |
Sqlscriptdowngrade.dll |
2007.100.2781.0 |
15,720 |
06-Jun-2010 |
05:18 |
x64 |
Sqlscriptupgrade.dll |
2007.100.2781.0 |
3,379,560 |
06-Jun-2010 |
05:18 |
x64 |
Sqlservr.exe |
2007.100.2781.0 |
57,893,224 |
06-Jun-2010 |
05:18 |
x64 |
Sqsrvres.dll |
2007.100.2781.0 |
105,832 |
06-Jun-2010 |
05:18 |
x64 |
Xpstar.dll |
2007.100.2781.0 |
546,664 |
06-Jun-2010 |
05:19 |
x64 |
SQL Server 2008, Itanium architecture version
File name |
File version |
File size |
Date |
Time |
Platform |
---|---|---|---|---|---|
Databasemailengine.dll |
10.0.2781.0 |
75,624 |
06-Jun-2010 |
12:33 |
x86 |
Databasemailprotocols.dll |
10.0.2781.0 |
42,856 |
06-Jun-2010 |
12:33 |
x86 |
Instmdw.sql |
Not applicable |
469,806 |
05-Jun-2010 |
00:40 |
Not applicable |
Instmsdb.sql |
Not applicable |
1,676,518 |
04-Jun-2010 |
21:02 |
Not applicable |
Mssqlsystemresource.ldf |
Not applicable |
524,288 |
05-Jun-2010 |
03:36 |
Not applicable |
Mssqlsystemresource.mdf |
Not applicable |
63,307,776 |
05-Jun-2010 |
03:36 |
Not applicable |
Queryactivityupload.dtsx |
Not applicable |
680,107 |
05-Jun-2010 |
00:40 |
Not applicable |
Sql_engine_core_inst_keyfile.dll |
2007.100.2781.0 |
19,304 |
06-Jun-2010 |
12:53 |
IA-64 |
Sqlaccess.dll |
2007.100.2781.0 |
398,696 |
06-Jun-2010 |
13:33 |
x86 |
Sqlagent.exe |
2007.100.2781.0 |
1,203,048 |
06-Jun-2010 |
13:33 |
IA-64 |
Sqlagent100_msdb_upgrade.sql |
Not applicable |
1,790,639 |
05-Jun-2010 |
00:21 |
Not applicable |
Sqlctr100.dll |
2007.100.2781.0 |
135,016 |
06-Jun-2010 |
13:33 |
IA-64 |
Sqlctr100.dll |
2007.100.2781.0 |
72,552 |
07-Jun-2010 |
05:32 |
x86 |
Sqlscriptdowngrade.dll |
2007.100.2781.0 |
20,840 |
06-Jun-2010 |
13:35 |
IA-64 |
Sqlscriptupgrade.dll |
2007.100.2781.0 |
3,385,704 |
06-Jun-2010 |
13:35 |
IA-64 |
Sqlservr.exe |
2007.100.2781.0 |
111,051,112 |
06-Jun-2010 |
13:35 |
IA-64 |
Sqsrvres.dll |
2007.100.2781.0 |
187,752 |
06-Jun-2010 |
13:35 |
IA-64 |
Xpstar.dll |
2007.100.2781.0 |
936,808 |
06-Jun-2010 |
13:36 |
IA-64 |
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
More Information
For more information, visit the following Microsoft websites:
Viewing the SQL Server Error Log (SQL Server) Data compression (SQL Server 2008) Join Hints (Transact-SQL)
References
For more information about the Incremental Servicing Model for SQL Server, click the following article number to view the article in the Microsoft Knowledge Base:
935897An Incremental Servicing Model is available from the SQL Server team to deliver hotfixes for reported problems 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:
822499New naming schema for Microsoft SQL Server software update packages For more information about software update terminology, 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