Assume that you install Update Rollup 1 for Microsoft Exchange Server 2010 Service Pack 2 (SP2) or a later update rollup that was released before Update Rollup 6 in an organization. Additionally, the organization is monitored by a Microsoft System Center Operations Manager (SCOM) server. In this situation, you receive the following SCOM alerts:
Alert: Exchange Control Panel connectivity (Internal) transaction failures.
Source: ECP - ServerName
Path: ServerName - Site
Alert description: One or more of the ECP connectivity tests failed.
Detailed information:
Target: ServerName
Error: An exception was thrown by the Web service: The remote server returned an error: (500) Internal Server Error.
Alert: Exchange Control Panel connectivity (Internal) transaction failures.
Source: ECP - ServerName
Path: ServerName - Site
Alert description: One or more of the ECP connectivity tests failed.
Detailed information:
Target: ServerName
Error: The test failed to establish a session with server ServerName. The remote server returned an error: (500) Internal Server Error.
Additionally, the following event is logged in the Application log on the Exchange Server 2010 Client Access server:
Log Name: Application
Source: MSExchange Control Panel
Date: Date
Event ID: 4
Task Category: General
Level: Error
Keywords: Classic
User: N/A
Description:
Current user: User
Request for URL 'URL' failed with the following error:
System.Web.HttpUnhandledException: Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.ArgumentException: An item with the same key has already been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
at Microsoft.Exchange.Data.PropertyBag.GetCalculatedPropertyValue(ProviderPropertyDefinition propertyDefinition)
at Microsoft.Exchange.Data.PropertyBag.get_Item(PropertyDefinition key)
at Microsoft.Exchange.Data.Directory.ADPropertyBag.get_Item(PropertyDefinition key)
at Microsoft.Exchange.Data.ConfigurableObject.get_Item(PropertyDefinition propertyDefinition)
at Microsoft.Exchange.Data.Directory.ADObject.get_Item(PropertyDefinition propertyDefinition)
at Microsoft.Exchange.Data.Directory.OwaSegmentationSettings.get_Item(ADPropertyDefinition owaFeature)
at Microsoft.Exchange.PowerShell.RbacHostingTools.RbacQuery.OwaSegmentationQueryProcessor.TryIsInRole(ExchangeRunspaceConfiguration rbacConfiguration)
at Microsoft.Exchange.PowerShell.RbacHostingTools.RbacQuery.RbacQueryProcessor.IsInRole(ExchangeRunspaceConfiguration rbacConfiguration)
at Microsoft.Exchange.PowerShell.RbacHostingTools.RbacPrincipal.IsInRole(String rbacQuery, Boolean& canCache)
at Microsoft.Exchange.PowerShell.RbacHostingTools.RbacPrincipal.IsInRole(String role)
at System.Web.Configuration.AuthorizationRule.IsTheUserInAnyRole(StringCollection roles, IPrincipal principal)
at System.Web.Configuration.AuthorizationRule.IsUserAllowed(IPrincipal user, String verb)
at System.Web.Configuration.AuthorizationRuleCollection.IsUserAllowed(IPrincipal user, String verb)
at System.Web.Security.UrlAuthorizationModule.IsUserAllowedToPath(HttpContext context, VirtualPath virtualPath)
at System.Web.SiteMapProvider.IsAccessibleToUser(HttpContext context, SiteMapNode node)
at System.Web.StaticSiteMapProvider.GetChildNodes(SiteMapNode node)
at Microsoft.Exchange.Management.ControlPanel._Default.CreateDataContract(SiteMapNode sNode)
at Microsoft.Exchange.Management.ControlPanel._Default.CreateDataContract(SiteMapNode sNode)
at Microsoft.Exchange.Management.ControlPanel._Default.CreateDataContract(SiteMapNode sNode)
at Microsoft.Exchange.Management.ControlPanel._Default.CreateNavTree()
at Microsoft.Exchange.Management.ControlPanel._Default.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
--- End of inner exception stack trace ---
at System.Web.UI.Page.HandleError(Exception e)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest()
at System.Web.UI.Page.ProcessRequest(HttpContext context)
at ASP.default_aspx.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)System.ArgumentException: An item with the same key has already been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
at Microsoft.Exchange.Data.PropertyBag.GetCalculatedPropertyValue(ProviderPropertyDefinition propertyDefinition)
at Microsoft.Exchange.Data.PropertyBag.get_Item(PropertyDefinition key)
at Microsoft.Exchange.Data.Directory.ADPropertyBag.get_Item(PropertyDefinition key)
at Microsoft.Exchange.Data.ConfigurableObject.get_Item(PropertyDefinition propertyDefinition)
at Microsoft.Exchange.Data.Directory.ADObject.get_Item(PropertyDefinition propertyDefinition)
at Microsoft.Exchange.Data.Directory.OwaSegmentationSettings.get_Item(ADPropertyDefinition owaFeature)
at Microsoft.Exchange.PowerShell.RbacHostingTools.RbacQuery.OwaSegmentationQueryProcessor.TryIsInRole(ExchangeRunspaceConfiguration rbacConfiguration)
at Microsoft.Exchange.PowerShell.RbacHostingTools.RbacQuery.RbacQueryProcessor.IsInRole(ExchangeRunspaceConfiguration rbacConfiguration)
at Microsoft.Exchange.PowerShell.RbacHostingTools.RbacPrincipal.IsInRole(String rbacQuery, Boolean& canCache)
at Microsoft.Exchange.PowerShell.RbacHostingTools.RbacPrincipal.IsInRole(String role)
at System.Web.Configuration.AuthorizationRule.IsTheUserInAnyRole(StringCollection roles, IPrincipal principal)
at System.Web.Configuration.AuthorizationRule.IsUserAllowed(IPrincipal user, String verb)
at System.Web.Configuration.AuthorizationRuleCollection.IsUserAllowed(IPrincipal user, String verb)
at System.Web.Security.UrlAuthorizationModule.IsUserAllowedToPath(HttpContext context, VirtualPath virtualPath)
at System.Web.SiteMapProvider.IsAccessibleToUser(HttpContext context, SiteMapNode node)
at System.Web.StaticSiteMapProvider.GetChildNodes(SiteMapNode node)
at Microsoft.Exchange.Management.ControlPanel._Default.CreateDataContract(SiteMapNode sNode)
at Microsoft.Exchange.Management.ControlPanel._Default.CreateDataContract(SiteMapNode sNode)
at Microsoft.Exchange.Management.ControlPanel._Default.CreateDataContract(SiteMapNode sNode)
at Microsoft.Exchange.Management.ControlPanel._Default.CreateNavTree()
at Microsoft.Exchange.Management.ControlPanel._Default.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
This issue occurs because of a race condition that occurs when multiple threads try to set a certain property at a same time.
To resolve this issue, install the following update rollup:
2746164
(http://support.microsoft.com/kb/2746164/
)
Description of Update Rollup 6 for Exchange Server 2010 Service Pack 2
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
For more information about Exchange Control Panel connectivity transaction failures, go to the following Microsoft website:
Article ID: 2784093 - Last Review: Tuesday, 12 February 2013 - Revision: 1.0
Applies to
- Microsoft Exchange Server 2010 Service Pack 2, when used with:
- Microsoft Exchange Server 2010 Enterprise
- Microsoft Exchange Server 2010 Standard
| kbsurveynew kbqfe kbexpertiseinter kbfix KB2784093 |