FIX: Error message when SQL Server 2008 Reporting Services or the SQL Server 2008 database engine is running: "Fatal Execution Engine Error (000006427F44AE16)" or "A fatal error occurred in the .NET Framework common language runtime"

Article translations Article translations
Article ID: 981108 - View products that this article applies to.
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.
Expand all | Collapse all

SYMPTOMS

While Microsoft SQL Server 2008 Reporting Services (SSRS 2008) is rendering large reports or large models, you receive the following runtime error message:
Source: .NET Runtime
Date:
Event ID: 1023
Task Category: None
Level: Error
Keywords: Classic
User: N/A
Computer:
Description:
.NET Runtime version 2.0.50727.3603 - Fatal Execution Engine Error (000006427F44AE16) (80131506)

The following error message may also be logged in the SSRS 2008 log file:
rshost!rshost!18f0!<Date Time>:: e ERROR: Generating a dump and exiting the process due to fatal runtime error.

This issue may also occur in the SQL Server 2008 database engine when SQL Server 2008 runs a common language runtime (CLR) object. In this case, you may receive the following error message:
<time> Server Error: 6536, Severity: 16, State: 1.
<time> Server A fatal error occurred in the .NET Framework common language runtime. SQL Server is shutting down. If the error recurs after the server is restarted, contact Customer Support Services.

The SQL error log may show the dump as a stack dump with the following text: 

<time> Server * *******************************************************************************
<time> Server *
<time> Server * BEGIN STACK DUMP:
<time> Server * 03/24/11 19:05:12 spid 0
<time> Server *
<time> Server * A fatal error occurred in .NET Framework runtime.

<time> Server * *******************************************************************************
<time> Server *
<time> Server * BEGIN STACK DUMP:
<time> Server * 03/24/11 19:05:23 spid 0
<time> Server *
<time> Server * Full CLR state dump: A fatal error occurred in .NET Framework runtime.

CAUSE

This issue occurs when a mixed assembly uses the CreateThread Win32 API or the BeginThread Win32 API to create a thread. The thread later tries to transition to managed code. This transition causes CLR to request a task context from the runtime host. As this transition is explicitly disallowed, a runtime error occurs.

Note The transition is explicitly disallowed because every scheduler cache requires that threads are in non-preemptive mode before they try to access the cache.

RESOLUTION

The fix for this issue was first released in Cumulative Update 7 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:
979065 Cumulative update package 7 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. 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:
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.

WORKAROUND

To work around this issue for the SQL Server 2008 database engine, try to determine whether any unsafe SQL CLR.NET assembly is loading into the database engine and potentially creating threads that encounter this problem. Avoid using such assemblies, or remove them from the system one by one until the symptom is isolated and the problem subsides.

For example, you may see information messages that resemble the following in the SQL error log to show which SQL CLR assemblies are being used and could be triggering the symptom:
2011-03-29 12:01:01.00 spid51 Unsafe assembly '<assembly name>, version=0.0.0.0, culture=neutral, publickeytoken=null, processorarchitecture=msil' loaded into appdomain 1 (<appdomain name>)

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

REFERENCES

For information about the Incremental Servicing Model for SQL Server, click the following article number to view the article in the Microsoft Knowledge Base:
935897 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:
822499 New 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

Properties

Article ID: 981108 - Last Review: April 11, 2011 - Revision: 2.0
APPLIES TO
  • Microsoft SQL Server 2008 Reporting Services
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Workgroup
Keywords: 
kbexpertiseadvanced kbsurveynew kbqfe kbfix KB981108

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