Tuesday, May 07, 2013

Microsoft Dynamics CRM 2011: Error after applying Update Rollup 12/13

I haven’t updated my VM to latest updates for a long time and I decided to do that today. After Rollup was installed I saw message that Rollup was not applied to one or several organizations. I ignored that message and tried to log in to CRM. I have got following error:
 I went to deployment administrator and I saw following:

 So Update Rollup was applied to all organizations except one. I found that it is possible manually apply update as it shown on following screenshot (you need to click on organization record and additional options became available on a right panel):
I tried to update this organization manually but I got following screen as a result (not very informative actually):
I looked into log file and found following explanation of an error:
System.Exception: Action Microsoft.Crm.Tools.Admin.InstallDatabaseUpdatesAction failed. --->
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. --->
System.Data.SqlClient.SqlException: Column names in each table must be unique. Column name 'IsMapiPrivate' in table 'ActivityPointerBase' is specified more than once.
I’m appreciated to my MVP fellow Ronald Lemmen who came quickly with solution. Solution was obvious but 100% unsupported:
1. Connect to SQL Server used in your CRM using SQL Server Management Studio.
2. Open ActivityPointerBase table of organization you have problems with and delete IsMapiPrivate and LeftVoiceMail fields:


3. Re-run Update of organization DB. This time update was applied without any issues.