Monday, 21 January 2013

Microsoft Dynamics CRM Timeout settings and settings which effect CRM


Please find various timeout settings which can effect CRM, they can be found in the various technologies used in CRM which vary from .NET, IIS, CRM SDK

  1. Registry on CRM application server(s)
    1. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\OLEDBTimeout
      1. In seconds
      2. The OLEDBTimeout value controls the SQL time-out value that is used for a single SQL query
      3. Default is 30 seconds
    2. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\ExtendedTimeout
      1. In milliseconds
      2. The ExtendedTimeout value controls the ASP.NET time-out value
      3. Default is 1,000,000
    3. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\NormalTimeout
      1. In milliseconds
      2. Specifies the SOAP call timeout for most operations
      3. Default is 300,000
  2. Web.config
    1. <httpRuntime executionTimeout=”300″ />
      1. .NET 3.0: “timespan” attribute.  The default is “00:01:50” (110 seconds)
      2. .NET 3.5 and 4.0: an integer in seconds.  Default is 110 seconds.
      3. Specifies the maximum number of seconds that a request is allowed to execute before being automatically shut down by ASP.NET.
  3. IIS/ASP.NET configuration
    1. IIS 6.0 -> Website Properties -> ASP.NET tab -> Edit Configuration button -> Application tab -> Request execution timeout (seconds)
      1. Related to this type of situation in CRM 4.0: http://blogs.msdn.com/b/crm/archive/2008/11/20/asp-net-2-0-50727-0-warning-event-id-1309-due-to-request-time-out.aspx
  4. When using the CRM SDK, there are also timeout settings that can be set via custom code:
    1. CRM 4.0 example:
      1. CrmService service = new CrmService();
      2. service.Timeout = 300;
      3. In milliseconds and default is 100,000
    2. CRM 2011:
      1. ServiceProxy.Timeout property (Timespan)