locked
Lag Time in CRM 2013 Outlook Plugin - "The Spinner" RRS feed

  • Question

  • Hello,

    We're on CRM 2013 on-premise. Our users are using CRM 2013 Outlook plugin. Outlook is Office Professional Plus 2013 version.

    About half of our users are experiencing huge lag time in the plugin. When trying to view a tracked email, on the bottom of the email shows which record in CRM the email is tied to. However it takes forever for that record to show up on the bottom of the email. We keep getting the spinning image over and over again while it tries to retrieve info from CRM (hence we call it "The Spinner"). After waiting for extended period of time, it just keeps spinning.

    I can't find any patterns on how the spinner shows up. Sometimes users try to view the set regarding to, gets the spinner. Then restarted Outlook, and the emails can be viewed fine. Then looking into another email they would get the spinner, while other emails are fine.

    We tried reinstalling the CRM plugin but still no luck. A user even got a brand new laptop with newly installed Office and CRM plugin. Still gets the spinner. 

    These users might have lots of tracked email records in the Outlook. But some of them that do are not affected by this issue. So far I don't find any trace error messages that could be related to this.

    Any suggestion on how to start troubleshooting this issue?

    Thanks,

    -tri

    Wednesday, July 1, 2015 8:44 PM

All replies

  • Hi triangular,

    we have noticed this if local outlook datafile was over 1GB size.

    We then moved to archive and pulled down the datafile after deleting it fresh from exchange server.

    Dont know your emailserver...

    gruss Daniel Ovadia MBSS - Microsoft Dynamics CRM MCNPS

    Thursday, July 2, 2015 9:12 AM
  • Thanks for the suggestion Daniel, we'll give it a try and see if it works.

    -tri

    Thursday, July 2, 2015 7:10 PM
  • Hi Daniel,

    Turned out it's not possible to archive the Outlook datafile. Most of our users have 20 GB datafile and they cannot be created new datafile because they still need the history of the emails, etc.

    We tried to do the Outlook plugin trace. So far we are not getting back any error messages. However on the Verbose level, these are the messages that we get back. Although I'm not seeing anything that could be related to our problem... I do see some 'timeout' printed somewhere but it does not look like a red flag here.

    Any suggestion? Any help is greatly appreciated.

    -tri

    [2015-07-14 14:17:32.639] Process:Microsoft.Crm.Application.Outlook.WebFormsHost |Organization:d190d7b5-e9c4-4aee-913c-47ef07ddf552 |Thread:    1 |Category: Application.Outlook |User: 00000000-0000-0000-0000-000000000000 |Level: Info |ReqId:  | Main.Host_Opened  ilOffset = 0x17
    at Main.Host_Opened(Object sender, EventArgs e)  ilOffset = 0x17
    at CommunicationObject.OnOpened()  ilOffset = 0x7A
    at ServiceHostBase.OnOpened()  ilOffset = 0x96
    at CommunicationObject.Open(TimeSpan timeout)  ilOffset = 0xCB
    at Main.InitializeService(String endPointName)  ilOffset = 0xE2
    at Main..ctor(String endPointName, Int32 authServerType, Int32 processId)  ilOffset = 0xCF
    at Program.Main(String[] args)  ilOffset = 0xF6
    >Forms Process Isolation Host Opened
    [2015-07-14 14:17:32.670] Process:Microsoft.Crm.Application.Outlook.WebFormsHost |Organization:00000000-0000-0000-0000-000000000000 |Thread:    6 |Category: Platform.Metadata |User: 00000000-0000-0000-0000-000000000000 |Level: Verbose |ReqId:  | OfflineWatcher..cctor  ilOffset = 0x21
    at OfflineWatcher..cctor()  ilOffset = 0x21
    at OfflineWatcher.add_RCWentOnline(RCWentOnlineEventHandler value)  ilOffset = 0x0
    at ClientCrmCache`1.RegisterEvents(NotificationEventType[] eventTypes, NotificationEventHandler notificationHandler)  ilOffset = 0x79
    at ClientCrmCache`1..ctor(String cacheIdentifier, NotificationEventType[] eventTypes, NotificationEventHandler notificationHandler, SharedCacheBaseLoadCacheDataCallback`1 loadCacheData)  ilOffset = 0x7C
    at ClientCrmCacheFactory.GetCrmCache(String cacheId, NotificationEventType[] eventType, NotificationEventHandler eventHandler, TimeSpan expirationLength, Boolean isExpirationSliding, SharedCacheBaseLoadCacheDataCallback`1 refreshCallback)  ilOffset = 0xA
    at CrmMultiOrgCacheBase`2..ctor(String cacheIdentifier, NotificationEventType[] eventType, TimeSpan expirationLength, Boolean isExpirationSliding)  ilOffset = 0x3D
    at UserDataCache..ctor()  ilOffset = 0x37
    at UserDataCache..cctor()  ilOffset = 0x5
    at UserDataCache.Instance()  ilOffset = 0x0
    at ClientOrganizationContext.get_UserUICulture()  ilOffset = 0x0
    at CrmComponentResourceManager.ApplyResources(Object value, String objectName, CultureInfo culture)  ilOffset = 0x3
    at WebContextWaiting.InitializeComponent()  ilOffset = 0x64
    at WebContextWaiting..ctor(IClientOrganizationContext clientOrgContext)  ilOffset = 0x0
    at AuthWaitingForm.<.ctor>b__0()  ilOffset = 0x0
    at Task.InnerInvoke()  ilOffset = 0x31
    at Task.Execute()  ilOffset = 0xF
    at Task.ExecutionContextCallback(Object obj)  ilOffset = 0xD
    at ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x70
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x9
    at Task.ExecuteWithThreadLocal(Task& currentTaskSlot)  ilOffset = 0xD8
    at Task.ExecuteEntry(Boolean bPreventDoubleExecution)  ilOffset = 0x96
    at Task.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()  ilOffset = 0x8
    at ThreadPoolWorkQueue.Dispatch()  ilOffset = 0xA3
    at _ThreadPoolWaitCallback.PerformWaitCallback()  ilOffset = 0x0
    >Registered OfflineWatcher
    [2015-07-14 14:17:32.670] Process:Microsoft.Crm.Application.Outlook.WebFormsHost |Organization:00000000-0000-0000-0000-000000000000 |Thread:    1 |Category: Shared |User: 00000000-0000-0000-0000-000000000000 |Level: Verbose |ReqId:  | Main..ctor  ilOffset = 0xEF
    at Main..ctor(String endPointName, Int32 authServerType, Int32 processId)  ilOffset = 0xEF
    at Program.Main(String[] args)  ilOffset = 0xF6
    >WebFormsServer::Initialize - Setting up Auth State for Organization {D190D7B5-E9C4-4AEE-913C-47EF07DDF552} on Endpoint 2a3e50b3-5ef0-4392-b676-672c161b8cef
    [2015-07-14 14:17:35.933] Process:Microsoft.Crm.Application.Outlook.WebFormsHost |Organization:00000000-0000-0000-0000-000000000000 |Thread:    4(MSCRM:-RegistryWatcher.RegTrackerThreadProc) |Category: Platform |User: 00000000-0000-0000-0000-000000000000 |Level: Verbose |ReqId:  | RegistryKeyChangedEventHandler.Invoke  ilOffset = 0xFFFFFFFF
    at RegistryKeyChangedEventHandler.Invoke(Object sender, EventArgs e)  ilOffset = 0xFFFFFFFF
    at RegistryWatcher.RegTrackerThreadProc()  ilOffset = 0x40
    at ThreadHelper.ThreadStart_Context(Object state)  ilOffset = 0x3B
    at ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x70
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x9
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)  ilOffset = 0x34
    at ThreadHelper.ThreadStart()  ilOffset = 0x2A
    >Received Registry Change Notification. Current Status = 0 New Status = 0
    [2015-07-14 14:17:56.968] Process:Microsoft.Crm.Application.Outlook.WebFormsHost |Organization:00000000-0000-0000-0000-000000000000 |Thread:    4(MSCRM:-RegistryWatcher.RegTrackerThreadProc) |Category: Platform |User: 00000000-0000-0000-0000-000000000000 |Level: Verbose |ReqId:  | RegistryKeyChangedEventHandler.Invoke  ilOffset = 0xFFFFFFFF
    at RegistryKeyChangedEventHandler.Invoke(Object sender, EventArgs e)  ilOffset = 0xFFFFFFFF
    at RegistryWatcher.RegTrackerThreadProc()  ilOffset = 0x40
    at ThreadHelper.ThreadStart_Context(Object state)  ilOffset = 0x3B
    at ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x70
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x9
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)  ilOffset = 0x34
    at ThreadHelper.ThreadStart()  ilOffset = 0x2A
    >Received Registry Change Notification. Current Status = 0 New Status = 0
    [2015-07-14 14:17:56.968] Process:Microsoft.Crm.Application.Outlook.WebFormsHost |Organization:00000000-0000-0000-0000-000000000000 |Thread:    4(MSCRM:-RegistryWatcher.RegTrackerThreadProc) |Category: Platform |User: 00000000-0000-0000-0000-000000000000 |Level: Verbose |ReqId:  | RegistryKeyChangedEventHandler.Invoke  ilOffset = 0xFFFFFFFF
    at RegistryKeyChangedEventHandler.Invoke(Object sender, EventArgs e)  ilOffset = 0xFFFFFFFF
    at RegistryWatcher.RegTrackerThreadProc()  ilOffset = 0x40
    at ThreadHelper.ThreadStart_Context(Object state)  ilOffset = 0x3B
    at ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x70
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x9
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)  ilOffset = 0x34
    at ThreadHelper.ThreadStart()  ilOffset = 0x2A
    >Received Registry Change Notification. Current Status = 0 New Status = 0
    [2015-07-14 14:24:41.976] Process:Microsoft.Crm.Application.Outlook.WebFormsHost |Organization:00000000-0000-0000-0000-000000000000 |Thread:    4(MSCRM:-RegistryWatcher.RegTrackerThreadProc) |Category: Platform |User: 00000000-0000-0000-0000-000000000000 |Level: Verbose |ReqId:  | RegistryKeyChangedEventHandler.Invoke  ilOffset = 0xFFFFFFFF
    at RegistryKeyChangedEventHandler.Invoke(Object sender, EventArgs e)  ilOffset = 0xFFFFFFFF
    at RegistryWatcher.RegTrackerThreadProc()  ilOffset = 0x40
    at ThreadHelper.ThreadStart_Context(Object state)  ilOffset = 0x3B
    at ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x70
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x9
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)  ilOffset = 0x34
    at ThreadHelper.ThreadStart()  ilOffset = 0x2A
    >Received Registry Change Notification. Current Status = 0 New Status = 0
     e)  ilOffset = 0xFFFFFFFF
    at RegistryWatcher.RegTrackerThreadProc()  ilOffset = 0x40
    at ThreadHelper.ThreadStart_Context(Object state)  ilOffset = 0x3B
    at ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x70
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x9
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)  ilOffset = 0x34
    at ThreadHelper.ThreadStart()  ilOffset = 0x2A
    >Received Registry Change Notification. Current Status = 0 New Status = 0
    [2015-07-14 14:17:56.968] Process:Microsoft.Crm.Application.Outlook.WebFormsHost |Organization:00000000-0000-0000-0000-000000000000 |Thread:    4(MSCRM:-RegistryWatcher.RegTrackerThreadProc) |Category: Platform |User: 00000000-0000-0000-0000-000000000000 |Level: Verbose |ReqId:  | RegistryKeyChangedEventHandler.Invoke  ilOffset = 0xFFFFFFFF
    at RegistryKeyChangedEventHandler.Invoke(Object sender, EventArgs e)  ilOffset = 0xFFFFFFFF
    at RegistryWatcher.RegTrackerThreadProc()  ilOffset = 0x40
    at ThreadHelper.ThreadStart_Context(Object state)  ilOffset = 0x3B
    at ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x70
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x9
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)  ilOffset = 0x34
    at ThreadHelper.ThreadStart()  ilOffset = 0x2A
    >Received Registry Change Notification. Current Status = 0 New Status = 0
    [2015-07-14 14:17:56.968] Process:Microsoft.Crm.Application.Outlook.WebFormsHost |Organization:00000000-0000-0000-0000-000000000000 |Thread:    4(MSCRM:-RegistryWatcher.RegTrackerThreadProc) |Category: Platform |User: 00000000-0000-0000-0000-000000000000 |Level: Verbose |ReqId:  | RegistryKeyChangedEventHandler.Invoke  ilOffset = 0xFFFFFFFF
    at RegistryKeyChangedEventHandler.Invoke(Object sender, EventArgs e)  ilOffset = 0xFFFFFFFF
    at RegistryWatcher.RegTrackerThreadProc()  ilOffset = 0x40
    at ThreadHelper.ThreadStart_Context(Object state)  ilOffset = 0x3B
    at ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x70
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x9
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)  ilOffset = 0x34
    at ThreadHelper.ThreadStart()  ilOffset = 0x2A
    >Received Registry Change Notification. Current Status = 0 New Status = 0
    [2015-07-14 14:24:41.976] Process:Microsoft.Crm.Application.Outlook.WebFormsHost |Organization:00000000-0000-0000-0000-000000000000 |Thread:    4(MSCRM:-RegistryWatcher.RegTrackerThreadProc) |Category: Platform |User: 00000000-0000-0000-0000-000000000000 |Level: Verbose |ReqId:  | RegistryKeyChangedEventHandler.Invoke  ilOffset = 0xFFFFFFFF
    at RegistryKeyChangedEventHandler.Invoke(Object sender, EventArgs e)  ilOffset = 0xFFFFFFFF
    at RegistryWatcher.RegTrackerThreadProc()  ilOffset = 0x40
    at ThreadHelper.ThreadStart_Context(Object state)  ilOffset = 0x3B
    at ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x70
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  ilOffset = 0x9
    at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)  ilOffset = 0x34
    at ThreadHelper.ThreadStart()  ilOffset = 0x2A
    >Received Registry Change Notification. Current Status = 0 New Status = 0

    Thursday, July 16, 2015 8:40 PM
  • Hi triangular,

    the limitation datafile of outlook itself is 20GB. In your case you could try after backup the registrykey "TagDisabled" for HKEY_CURRENT_USER\Software\Microsoft\MSCRMClient  dword value 1 after restart see if the spinner is present. Otherwise the limit 5GB is recommened overall for crm datafile in outlook client. You resize better, you could start online archives also.


    gruss Daniel Ovadia MBSS - Microsoft Dynamics CRM MCNPS

    Friday, July 17, 2015 7:52 AM
  • Is the Computer of your client using SSD. If not you can copy and see if it will be better perfomance.

    gruss Daniel Ovadia MBSS - Microsoft Dynamics CRM MCNPS

    Friday, July 17, 2015 7:55 AM