FIX: Error message when you run a parallel query in SQL Server 2008: "Trying to use the transaction while there are 1 parallel nested xacts outstanding"
Microsoft distributes Microsoft SQL Server 2008 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 fix release.
In Microsoft SQL Server 2008, you run a parallel query and the execution fails. You receive the following error message:
Trying to use the transaction while there are 1 parallel nested xacts outstanding
When this problem occurs, a mini-dump file is generated in the SQL Server log folder, and the following error messages are logged in the SQL Server error log file:
<Date><Time> spid67 Error: 17065, Severity: 16, State: 1. <Date><Time> spid67 SQL Server Assertion: File: <"xact.cpp">, line = 4253 Failed Assertion = '!m_parNestedXactCnt' Trying to use the transaction while there are 1 parallel nested xacts outstanding. 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> spid67 Error: 3624, Severity: 20, State: 1.
<Date><Time> spid67 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.
<Date><Time> spid67 Using 'dbghelp.dll' version '4.0.5'
<Date><Time> spid67 **Dump thread - spid = 0, EC = 0x0000000F6F43C0F0
<Date><Time> spid67 ***Stack Dump being sent to F:\MSSQL\LOG\SQLDump0066.txt
<Date><Time> spid67 * *******************************************************************************
<Date><Time> spid67 *
<Date><Time> spid67 * BEGIN STACK DUMP:
<Date><Time> spid67 * 11/21/08 20:00:12 spid <spid>
<Date><Time> spid67 *
<Date><Time> spid67 * Location: "xact.cpp":4362
<Date><Time> spid67 * Expression: !m_parNestedXactCnt
<Date><Time> spid67 * SPID: <spid>
<Date><Time> spid67 * Process ID: <ID>
<Date><Time> spid67 * Description: Trying to use the transaction while there are 1 parallel nested xacts outstanding
Important You must use this fix if you are running the release version of SQL Server 2008.
The fix for this issue was first released in Cumulative Update 7. For more information about how to obtain this cumulative update package for SQL Server 2008, click the following article number to view the article in the Microsoft Knowledge Base:
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 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:
The SQL Server 2008 builds that were released after SQL Server 2008 was released
SQL Server 2008 Service Pack 1
The fix for this issue was first released in Cumulative Update 4 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:
Cumulative update package 4 for SQL Server 2008 Service Pack 1
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 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:
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.
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. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.
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, contact 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 Web site:
Note 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 before you 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.
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 item in Control Panel.
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:
An 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: