Hallo Exchange-Admins,
heute mal wieder mit einem Hinweis auf Fehlverhalten im Exchange Server 2016 CU8.
Das Phänomen:
Beim Abruf eines freigegebenen Kalenders dauerte der Abruf der Daten sehr lange oder klappte gar nicht > 20 Sekunden.
Die Hinweis gebende Fehlermeldung:
Log Name: Application
Source: ASP.NET 4.0.30319.0
Event ID: 1325
An unhandled exception occurred and the process was terminated.
Application ID: /LM/W3SVC/2/ROOT/EWS
Process ID: 30516
Level: Error
Exception: System.MissingMethodException
Message: Method not found: ‚Microsoft.Exchange.WebServices.Data.GetClientExtensionResponse Microsoft.Exchange.WebServices.Data.ExchangeService.GetClientExtension(Microsoft.Exchange.WebServices.Data.StringList, Boolean, Boolean, System.String, Microsoft.Exchange.WebServices.Data.StringList, Microsoft.Exchange.WebServices.Data.StringList, Boolean, Boolean)‘.
StackTrace: at Microsoft.Exchange.Data.ApplicationLogic.Extension.EwsOrgExtensionRetriever.<>c__DisplayClass10_0.<Retrieve>b__0()
at Microsoft.Exchange.Data.ApplicationLogic.Extension.OrgExtensionTable.ExecuteWebServicesAction(Action webServicesAction)
at Microsoft.Exchange.Data.ApplicationLogic.Extension.EwsOrgExtensionRetriever.Retrieve(OrgExtensionRetrievalContext context)
at Microsoft.Exchange.Data.ApplicationLogic.Extension.CachedOrgExtensionRetriever.Retrieve(OrgExtensionRetrievalContext context)
at Microsoft.Exchange.Data.ApplicationLogic.Extension.OrgExtensionDataGetter.GetAllOrgExtensionData(OrgExtensionRetrievalContext context)
at Microsoft.Exchange.Data.ApplicationLogic.Extension.OrgExtensionTable.GetOrgExtensions(IOrgExtensionDataGetter orgExtensionDataGetter, OrgExtensionRetrievalContext retrievalContext, Boolean shouldRetrievePrivateCatalogExtensions, Boolean retrieveOnly1_0)
at Microsoft.Exchange.Data.ApplicationLogic.Extension.InstalledExtensionTable.GetOrgProvidedExtensions(HashSet`1 requestedExtensions, Boolean shouldReturnEnabledOnly, Dictionary`2 masterTableExtensions, Boolean isDebug, Boolean shouldRetrievePrivateCatalogExtensions, String& orgMasterTableRawXml, Boolean shouldReturnECPAddins)
at Microsoft.Exchange.Data.ApplicationLogic.Extension.InstalledExtensionTable.GetProvidedExtensions(HashSet`1 requestedExtensions, Boolean shouldReturnEnabledOnly, Dictionary`2 masterTableExtensions, Boolean isDebug, Boolean shouldRetrievePrivateCatalogExtensions, String& orgMasterTableRawXml, Boolean shouldReturnECPAddins)
at Microsoft.Exchange.Data.ApplicationLogic.Extension.InstalledExtensionTable.GetExtensions(HashSet`1 requestedExtensions, Boolean shouldReturnEnabledOnly, Boolean shouldFailOnGetOrgExtensionsTimeout, Boolean isDebug, String& orgMasterTableRawXml, CultureInfo culture, Boolean filterOutDuplicateMasterTableExtensions, Boolean shouldRetrievePrivateCatalogExtensions, MultiValuedProperty`1 capabilities, Boolean shouldReturnECPAddins)
at Microsoft.Exchange.Services.Wcf.GetExtensibilityContext.GetExtensions(ICallContext callContext, Boolean isUserScope, Boolean shouldReturnEnabledOnly, Boolean shouldFailOnGetOrgExtensionsTimeout, OrgEmptyMasterTableCache orgEmptyMasterTableCache, ExtensionsCache extensionsCache, HashSet`1 requestedExtensions, Boolean isRawXmlRequired, Boolean shouldRetrievePrivateCatalogExtensions, Nullable`1 orgExtensionVersion, Boolean checkForExpiryOfUserCacheOfOrgExtensions, String& masterTableRawXml, Boolean retrieveOnly1_0, Boolean filterOutDuplicateMasterTableExtensions, Version apiVersionSupported, Boolean shouldReturnECPAddins)
at Microsoft.Exchange.Services.Core.GetAppManifests.GetExtensionDataList(HashSet`1 privateCatalogAddIns, Version schemaVersionSupported, Boolean shouldIncludeAllInstalledAddIns, Boolean shouldReturnECPAddins)
at Microsoft.Exchange.Services.Core.GetAppManifests.<>c__DisplayClass12_0.<ExecuteGetAppManifests>b__0()
at Microsoft.Exchange.Data.ApplicationLogic.Extension.InstalledExtensionTable.RunClientExtensionAction(Action action)
at Microsoft.Exchange.Services.Wcf.GetExtensibilityContext.RunClientExtensionAction(Action action, Exception& exception)
at Microsoft.Exchange.Services.Core.GetAppManifests.ExecuteGetAppManifests(Exception& clientExtensionException)
at Microsoft.Exchange.Services.Core.GetAppManifests.Execute()
at Microsoft.Exchange.Services.Core.ExceptionHandler`1.Execute(IRequestDetailsLogger logger, CreateServiceResult createServiceResult, Int32 index, ExecutionOption executionOption)
at Microsoft.Exchange.Services.Core.BaseStepServiceCommand`3.InternalExecuteStep(Boolean& isBatchStopResponse)
at Microsoft.Exchange.Services.Core.ServiceCommandBase`1.<ExecuteStep>b__82_0()
at Microsoft.Exchange.Services.Core.ServiceCommandBase`1.<>c__DisplayClass88_0.<ExecuteHelper>b__0()
at Microsoft.Exchange.Common.IL.ILUtil.DoTryFilterCatch(Action tryDelegate, Func`2 filterDelegate, Action`1 catchDelegate)
at Microsoft.Exchange.Services.Core.ServiceDiagnostics.SendWatsonReportOnUnhandledException(ICallContext callContext, Action methodDelegate)
at Microsoft.Exchange.Services.Core.ServiceCommandBase`1.ExecuteHelper(Func`1 action)
at Microsoft.Exchange.Services.Core.Types.ServiceTask`1.<>c__DisplayClass11_0.<ExecuteHelper>b__0()
at Microsoft.Exchange.Common.IL.ILUtil.DoTryFilterCatch(Action tryDelegate, Func`2 filterDelegate, Action`1 catchDelegate)
at Microsoft.Exchange.Services.Core.Types.BaseServiceTask`1.SendWatsonReportOnGrayException(Action callback, Action exceptionHandlerCallback, Boolean isGrayExceptionTaskFailure)
at Microsoft.Exchange.Services.Core.Types.ServiceTask`1.ExecuteHelper(Func`1 multiStepAction)
at Microsoft.Exchange.Services.Core.Types.ServiceTask`1.<InternalExecute>b__7_0()
at Microsoft.Exchange.Diagnostics.RequestDetailsLoggerBase`1.TrackLatency[TResult](Enum latencyMetadata, Func`1 method)
at Microsoft.Exchange.Diagnostics.RequestDetailsLoggerBase`1.TrackLatency[TResult](Enum latencyMetadata, Func`1 method, Double& latencyValue)
at Microsoft.Exchange.Services.Core.Types.ServiceTask`1.InternalExecute(TimeSpan queueAndDelay, TimeSpan totalTime)
at Microsoft.Exchange.Services.Core.Types.BaseServiceTask`1.<>c__DisplayClass33_0.<Execute>b__0()
at Microsoft.Exchange.Services.Core.Types.BaseServiceTask`1.LocalTimedCall(Action action)
at Microsoft.Exchange.Services.Core.Types.BaseServiceTask`1.ExecuteWithinCallContext(Action action)
at Microsoft.Exchange.Services.Core.Types.BaseServiceTask`1.Execute(TimeSpan queueAndDelayTime, TimeSpan totalTime)
at Microsoft.Exchange.Services.Core.Types.BaseServiceTask`1.ExecuteLoop(Boolean synchronously)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
at System.Threading.ThreadPoolWorkQueue.Dispatch()
Die Lösung:
Auf dem betroffenen Exchange Server sind die „Microsoft Exchange Web Services Managed API 2.2“ installiert.
Nachdem ich die Webservices deinstalliert hatte, war die besagte Fehlermeldung nicht mehr vorhanden und der Zugriff auf den freigegebenen Kalender funktionierte wieder wie gewohnt.
Zwei-Server DAG. Beide Server wurden identisch installiert bis auf die EWS Managed Api auf dem betroffenen Server. Nachdem der betroffene Server in Wartung genommen und alle Mailbox-Datenbanken auf dem Server ohne EWS aktiv geschaltet worden waren, war das Phänomen verschwunden.
LG
Andi
Super Beitrag, danke :)
LG Michael von profipatch
[…] Hallo Exchange-Admins, heute mal wieder mit einem Hinweis auf fehlverhalten im Exchange Server 2016 CU8. Das Phänomen: Beim Abruf einen Freigegeben Kalenders dauert der Abruf der Daten sehr lange oder klappte gar nicht > 20 Sekunden. Die hinweisgebende Fehlermeldung: Log Name: Application Source: ASP.NET 4.0.30319.0 Event ID: 1325 An unhandled exception occurred and the process was terminated. […] Der Beitrag Exchange Server 2016 CU 8 – Verzögerung beim Kalenderabruf erschien zuerst auf Andi's iT Blog. Quelle: Andi’s iT Blog | Exchange Server 2016 CU 8 – Verzögerung beim Kalenderabruf […]
Gilt übrigens auch bereits für EX2016 CU7 (wie bei uns)…