FIX: System.InvalidOperationException when an application calls the CultureInfo.GetCultures method in the .NET Framework 2.0

Applies to: Microsoft .NET Framework 3.5 Service Pack 1

Symptoms


When you run a Microsoft .NET Framework 2.0-based application that calls the System.Globalization.CultureInfo.GetCultures method, a System.InvalidOperationException exception may be generated, and the application crashes. Additionally, you receive the following error message in this situation: 
Hashtable insert failed. Load factor too high.

Cause


This issue occurs because of a race condition in a hash table.

Note When the CultureInfo.GetCultures method is called, a CultureTable object uses the hash table.

Resolution


Hotfix information

A supported hotfix is now available from Microsoft. However, it is intended to correct only the problem that is described in this article. Apply it only to systems that are experiencing this specific problem. This hotfix may receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next service pack that contains this hotfix.

To resolve this problem immediately, contact Microsoft Customer Support Services to obtain the hotfix. For a complete list of Microsoft Customer Support Services telephone numbers and information about support costs, visit the following Microsoft website:Note In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The usual support costs will apply to additional support questions and issues that do not qualify for the specific update in question.


Prerequisites

To apply this hotfix, you must have the Microsoft .NET Framework 3.5.1 installed on one of the following operating systems:
  • Windows 7 Service Pack 1 (SP1)
  • Windows Server 2008 R2 Service Pack 1 (SP1)
Note The .NET Framework 3.5.1 feature includes the .NET Framework 2.0 Service Pack 2 (SP2).

Restart requirement

You have to restart the computer after you install this hotfix if the affected files are being used.

We recommend that you exit all .NET Framework applications before you install this hotfix.

File information

The global 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 all supported x86-based versions of Windows 7 SP1
File nameFile versionFile sizeDateTimePlatform
Big5.nlpNot Applicable66,72812-Nov-201023:43Not Applicable
Bopomofo.nlpNot Applicable82,17212-Nov-201023:43Not Applicable
Ksc.nlpNot Applicable116,75612-Nov- 201023:45Not Applicable
Mscorlib.dll2.0.50727.56914,550,65626-Aug-201122:33x86
Normidna.nlpNot Applicable59,34212-Nov-201023:45Not Applicable
Normnfc.nlpNot Applicable45,79412-Nov-201023:45Not Applicable
Normnfd.nlpNot Applicable39,28412-Nov-201023:45Not Applicable
Normnfkc.nlpNot Applicable66,38412-Nov- 201023:45Not Applicable
Normnfkd.nlpNot Applicable60,29412-Nov-201023:45Not Applicable
Prc.nlpNot Applicable83,74812-Nov-201023:45Not Applicable
Prcp.nlpNot Applicable83,74812-Nov-201023:45Not Applicable
Sortkey.nlpNot Applicable262,14812-Nov-201023:45Not Applicable
Sorttbls.nlpNot Applicable20,32012-Nov- 201023:45Not Applicable
Xjis.nlpNot Applicable28,28812-Nov-201023:45Not Applicable
Mscordacwks.dll2.0.50727.5691989,52826-Aug-201122:33x86
Mscorwks.dll2.0.50727.56915,924,17626-Aug- 201122:33x86
Sos.dll2.0.50727.5691388,93626-Aug-201122:33x86
For all supported x64-based versions of Windows 7 SP1 and of Windows Server 2008 R2 SP1
File nameFile versionFile sizeDateTimePlatform
Big5.nlpNot Applicable66,72812-Nov-201023:43Not Applicable
Bopomofo.nlpNot Applicable82,17212-Nov-201023:43Not Applicable
Ksc.nlpNot Applicable116,75612-Nov- 201023:44Not Applicable
Mscorlib.dll2.0.50727.56914,567,04026-Aug-201122:29x64
Normidna.nlpNot Applicable59,34212-Nov-201023:44Not Applicable
Normnfc.nlpNot Applicable45,79412-Nov-201023:44Not Applicable
Normnfd.nlpNot Applicable39,28412-Nov-201023:44Not Applicable
Normnfkc.nlpNot Applicable66,38412-Nov- 201023:44Not Applicable
Normnfkd.nlpNot Applicable60,29412-Nov-201023:44Not Applicable
Prc.nlpNot Applicable83,74812-Nov-201023:44Not Applicable
Prcp.nlpNot Applicable83,74812-Nov-201023:44Not Applicable
Sortkey.nlpNot Applicable262,14812-Nov-201023:44Not Applicable
Sorttbls.nlpNot Applicable20,32012-Nov- 201023:44Not Applicable
Xjis.nlpNot Applicable28,28812-Nov-201023:44Not Applicable
Mscordacwks.dll2.0.50727.56911,755,48026-Aug-201122:29x64
Mscorwks.dll2.0.50727.56919,990,99226-Aug- 201122:29x64
Sos.dll2.0.50727.5691485,19226-Aug-201122:29x64
For all supported IA-64–based versions of Windows Server 2008 R2 SP1
File nameFile versionFile sizeDateTimePlatform
Big5.nlpNot Applicable66,72812-Nov-201023:45Not Applicable
Bopomofo.nlpNot Applicable82,17212-Nov-201023:45Not Applicable
Ksc.nlpNot Applicable116,75612-Nov- 201023:45Not Applicable
Mscorlib.dll2.0.50727.56914,009,98426-Aug-201122:22IA-64
Normidna.nlpNot Applicable59,34212-Nov-201023:45Not Applicable
Normnfc.nlpNot Applicable45,79412-Nov-201023:45Not Applicable
Normnfd.nlpNot Applicable39,28412-Nov-201023:45Not Applicable
Normnfkc.nlpNot Applicable66,38412-Nov- 201023:45Not Applicable
Normnfkd.nlpNot Applicable60,29412-Nov-201023:45Not Applicable
Prc.nlpNot Applicable83,74812-Nov-201023:45Not Applicable
Prcp.nlpNot Applicable83,74812-Nov-201023:45Not Applicable
Sortkey.nlpNot Applicable262,14812-Nov-201023:45Not Applicable
Sorttbls.nlpNot Applicable20,32012-Nov- 201023:45Not Applicable
Xjis.nlpNot Applicable28,28812-Nov-201023:46Not Applicable
Mscordacwks.dll2.0.50727.56913,082,58426-Aug-201122:22IA-64
Mscorwks.dll2.0.50727.569120,342,09626-Aug- 201122:22IA-64
Sos.dll2.0.50727.5691872,77626-Aug-201122:22IA-64
Additional files for all supported x86-based versions of Windows 7 SP1
File nameX86_mscorlib_b77a5c561934e089_6.1.7601.21802_none_8544678d97a6df07.manifest
File versionNot Applicable
File size331,675
Date (UTC)27-Aug-2011
Time (UTC) 06:17
File nameX86_netfx-mscordacwks_b03f5f7f11d50a3a_6.1.7601.21802_none_e8af5961dd2f4f5f.manifest
File versionNot Applicable
File size2,730
Date (UTC)27-Aug- 2011
Time (UTC)06:12
File nameX86_netfx- mscorwks_dll_b03f5f7f11d50a3a_6.1.7601.21802_none_efeb367b052e438c.manifest
File versionNot Applicable
File size6,923
Date (UTC)27-Aug-2011
Time (UTC)06:16
File nameX86_netfx-sos_dll_b03f5f7f11d50a3a_6.1.7601.21802_none_d17da122d1242b74.manifest
File versionNot Applicable
File size2,006
Date (UTC)27-Aug-2011
Time (UTC) 06:11
Additional files for all supported x64-based versions of Windows 7 SP1 and of Windows Server 2008 R2 SP1
File nameAmd64_mscorlib_b77a5c561934e089_6.1.7601.21802_none_3d9730b6832ab601.manifest
File versionNot Applicable
File size368,857
Date (UTC)27-Aug-2011
Time (UTC) 07:10
File nameAmd64_netfx-mscordacwks_b03f5f7f11d50a3a_6.1.7601.21802_none_a102228ac8b32659.manifest
File versionNot Applicable
File size2,738
Date (UTC)27-Aug- 2011
Time (UTC)07:01
File nameAmd64_netfx- mscorwks_dll_b03f5f7f11d50a3a_6.1.7601.21802_none_a83dffa3f0b21a86.manifest
File versionNot Applicable
File size6,927
Date (UTC)27-Aug-2011
Time (UTC)07:08
File nameAmd64_netfx-sos_dll_b03f5f7f11d50a3a_6.1.7601.21802_none_89d06a4bbca8026e.manifest
File versionNot Applicable
File size2,010
Date (UTC)27-Aug-2011
Time (UTC) 06:59
Additional files for all supported IA-64–based versions of Windows Server 2008 R2 SP1
File nameIa64_mscorlib_b77a5c561934e089_6.1.7601.21802_none_8544454f97a716eb.manifest
File versionNot Applicable
File size368,856
Date (UTC)27-Aug-2011
Time (UTC) 06:59
File nameIa64_netfx-mscordacwks_b03f5f7f11d50a3a_6.1.7601.21802_none_e8af3723dd2f8743.manifest
File versionNot Applicable
File size2,737
Date (UTC)27-Aug- 2011
Time (UTC)06:55
File nameIa64_netfx- mscorwks_dll_b03f5f7f11d50a3a_6.1.7601.21802_none_efeb143d052e7b70.manifest
File versionNot Applicable
File size6,926
Date (UTC)27-Aug-2011
Time (UTC)06:58
File nameIa64_netfx-sos_dll_b03f5f7f11d50a3a_6.1.7601.21802_none_d17d7ee4d1246358.manifest
File versionNot Applicable
File size2,009
Date (UTC)27-Aug-2011
Time (UTC) 06:54

Status


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

More Information


Call stack information

at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add)
at System.Globalization.CultureTable.GetDataItemFromCultureName(String name, Int32& culture, String& actualName)
at System.Globalization.CultureTableRecord..ctor(String cultureName, Boolean useUserOverride)
at System.Globalization.CultureTableRecord.GetCultureTableRecord(String name, Boolean useUserOverride)
at System.Globalization.CultureTableRecord.GetCultureTableRecord(Int32 cultureId, Boolean useUserOverride)
at System.Globalization.CultureInfo..ctor(Int32 culture, Boolean useUserOverride)
at System.Globalization.CultureTable.GetCultures(CultureTypes types)
at Microsoft.Exchange.Data.Globalization.CultureCharsetDatabase.LoadGlobalizationData(String defaultCultureName)
at Microsoft.Exchange.Data.Globalization.CultureCharsetDatabase..cctor()
--- End of inner exception stack trace ---
at Microsoft.Exchange.Configuration.Tasks.Task.ProcessRecord()
at Microsoft.Exchange.Data.Storage.BodyReadDelegates.CreateReader(ICoreItem coreItem, BodyReadConfiguration configuration, Stream bodyStream, ConversionCallbackBase& provider)
at Microsoft.Exchange.Data.Storage.BodyTextReader..ctor(ICoreItem coreItem, BodyReadConfiguration configuration, Stream inputStream)
at Microsoft.Exchange.Data.Storage.Body.OpenTextReader(BodyReadConfiguration configuration)
at Microsoft.Exchange.Monitoring.TestConnectivityCredentialsManager.LoadAutomatedTestCasConnectivityInfo(Item item, ExchangePrincipal exchangePrincipal, NetworkCredential credentials, ExDateTime& lastPasswordReset)
at Microsoft.Exchange.Monitoring.TestConnectivityCredentialsManager.LoadAutomatedTestCasConnectivityInfo(ExchangePrincipal exchangePrincipal, NetworkCredential credentials, ExDateTime& lastPasswordReset)
at Microsoft.Exchange.Monitoring.TestCasConnectivity.LoadAutomatedCredentials(TestCasConnectivityRunInstance instance)
at Microsoft.Exchange.Monitoring.TestCasConnectivity.BuildRunInstanceForSiteMBox(String deviceId)
at Microsoft.Exchange.Monitoring.TestCasConnectivity.BuildRunInstances()
at Microsoft.Exchange.Monitoring.TestCasConnectivity.InternalProcessRecord()
at Microsoft.Exchange.Configuration.Tasks.Task.ProcessRecord()
at System.Management.Automation.CommandProcessor.ProcessRecord()