CRM 2011 – A time-out occurs when you import a solution in Microsoft Dynamics CRM 2011

We had developed a solution on CRM 2011 Beta release and for some reason Microsoft didn’t have an upgrade path from CRM 2011 beta to the CRM 2011 release 1.

So this means we had to do a brand new install of CRM 2011 Release 1.  So the work I had been doing on the beta I need to move onto the new server with release 1 on.

After setting up the new organisation, which you can read about here , I exported the solution and then when it came to importing the solution, it would get about 20 percent along and then would just hang there.

I checked the event log but there was nothing in there, so I turned on tracing and then I could see a whole bunch of timeout messages.

I started searching google for CRM and timeouts and get a few hits and this one was the most useful.  I have had this problem before where I have had to increase the OLEDBTimeout value.  This is how Microsoft describe the variable.  You should also read this forum posting where people are discussing the problem

The OLEDBTimeout value

The unit of the OLEDBTimeout value is seconds. By default, the OLEDBTimeout value is 30 seconds. The OLEDBTimeout value controls the SQL time-out value that is used for a single SQL query. The increased OLEDBTimeout value is useful when the SQL server is overloaded. Additionally, the query takes a longer time to process.

 

The problems I have had before was when an account was merging, the problem was the amount of sql queries in one transaction was bigger than the timeout setting, it would then roll back all the sql transactions which had run.

I used method 1 to resolve the issue, the one slight question I have is to why the recommend increasing the timeout to a one whole day, this doesn’t really sound like a great move but I will leave it that length for now.

To resolve this problem, use one or more of the following methods.

Method 1: Add the OLEDBTimeout and the ExtendedTimeout registry subkeys to increase the time-out values

Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall your operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

  1. Click Start, click Run, type regedit, and then click OK.
  2. Locate the following registry subkey:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM
  3. Right-click MSCRM, point to New, and then click DWORD Value to create a new DWORD value.
  4. Rename the DWORD value to the following value:
    OLEDBTimeout
  5. Right-click the DWORD value, and then click Modify.
  6. In the Edit DWORD Value dialog box, type 86400 in the Value data box, clickDecimal in the Base option, and then click OK.

    Note According to the requirement of the computer that is running SQL server and the number of customization files, the value can be larger than 86400. The value of 86400 is equivalent to 24 hours.

  7. Right-click MSCRM, point to New, and then click DWORD Value to create a new DWORD value.
  8. Rename the DWORD value to the following value:
    ExtendedTimeout
  9. Right-click the DWORD value, and then click Modify.
  10. In the Edit DWORD Value dialog box, type 1000000 in the Value data box, and then click OK.

    Notes

    • In the Value data box, you can type a value that is larger than 1,000,000. However, do not type a value that is larger than 2,147,483,647. This is hexadecimal 0x7FFFFFFF.
    • If this key already exists, notice the current value. After you have completed the import or the upgrade for Microsoft Dynamics CRM, set the value of this key back to the original value or delete the key if it did not previously exist. The default OLEDB timeout value is 30 seconds.

Method 2: Modify the parameters in two different Web.config files

  1. Click Start, click All Programs, click Administrative Tools, and then click Internet Information Services (IIS) Manager.
  2. Expand the server name, and then expand Web Sites.
  3. Right-click the Microsoft CRM v3.0 Web site or the Microsoft CRM v4.0 Web site, and then click Open.
  4. Right-click the Web.config file, click Open With, and then click Notepad.
  5. In Notepad, locate the following line.

    <httpRuntime executionTimeout="300" maxRequestLength="8192"/>

  6. Change executionTimeout=”3600″ and change maxRequestLength=”20000″.
  7. Save and then close the Web.config file.
  8. In the directory in which you opened the Web.config file, open the MSCRMServices folder.
  9. Right-click the Web.config file, click Open With, and then click Notepad.
  10. In Notepad, locate the following line.

    <httpRuntime maxRequestLength="8192"/>

  11. Change maxRequestLength=”20000″.
  12. Save and then close the Web.config file.

 

 

Advertisements

8 thoughts on “CRM 2011 – A time-out occurs when you import a solution in Microsoft Dynamics CRM 2011

  1. Cliff February 6, 2011 / 11:01 pm

    Wow. Thanks for the great MS CRM OLEDB troubleshooting tips. We love to do OLEDB extract reports! It empowers the end user.

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s