Updated on 8\14\2013 – I removed the NumThreadsForIndexCreation registry key as there was an update rollup that removed the significance of that registry key and your organization import\upgrade will actually fail if you use this NumThreadsForIndexCreation now. We have this documented in KB 2714807.
Sean McNellis, Ryan Anderson and I recorded a podcast (http://aka.ms/tndfbt) last Friday on Dynamics CRM Upgrade Best Practices. During the podcast we mentioned that we would be posting a blog article outlining the topics that we covered with links to more details. That podcast and this blog post are by no means all encompassing upgrade best practices, but are just meant to cover some of the common topics and practices that we have been doing with our premier support customers.
Registry keys on the CRM server that we recommend implementing for the CRM upgrade.
MaxUserPort - http://aka.ms/dims52
Leave in place
TCPTimedWaitDelay - http://aka.ms/xhts4r
OLEDBTimeout - http://aka.ms/yc14kw
Set back to previous value or delete key
*EnableRetrieveMultipleOptimization - http://aka.ms/bcii0b
* We used to recommend setting the EnableRetrieveMultipleOptimization to 2 or 1 for most of our customers with millions of records in the PrincipalObjectAccess table, but now with the UR10 optimizations we are recommending that customers set this to 0 or delete the key as CRM dynamically sets this now based on your dataset.
Jobs to update:
We ran out of time on this podcast to spend much time talking about upgrading the CRM Outlook clients, so we are planning to do a follow up podcast on that topic specifically. However, we do want to provide you with a few quick best practices for upgrading CRM Outlook clients
We could write an entire book on this and probably should some day, but for the purposes of this blog supporting our podcast we wanted to highlight a few areas.
Well, this blog post got a lot longer than I had anticipated, but I wanted to provide you with supporting details and URL’s to all of the topics that we covered during our podcast. I hope that you enjoyed listening to our podcast, or even just consuming the information in this blog post. Hopefully this will help your CRM 2011 upgrades go smoothly. Please let us know if you have any questions regarding this podcast and\or blog, or if you are interested in learning more about Microsoft Premier Support and the services we deliver to our Premier Support customers.
Thanks! Sean McNellis, Ryan Anderson & Shawn Dieken
Will enabling SQL CLR have any effect after the upgrade is complete?
Yes, you can do this before or after the upgrade. I just included that before the upgrade as something you could get out of the way prior to upgrading, but if you have already upgraded you can still benefit from enabling this.
We upgraded from CRM 4.0 to CRM 2011 in February '12. Prior to the upgrade CRM was great at matching inbound emails to a queue to CRM records. However since the upgrade this has not worked at all. CRM 2011 UR8 just NEVER matches an inbound email sent to one of our customer service queues. We always have to select the record manually.
We are scratching our heads here and we've tried everything. Smart Matching and Tracking Tokens are both enabled, we made no changes to either setting in the migration.
as far as i have seen, the Value of "EnableRetrieveMultipleOptimization" is 1 in a fresh environment. Even if you install with the UR6 installation media and immediatly update to UR 10,11,12....
So if you do not explicitly set the value to 0(per Registry or OrgDbSettingsTool), the automatic optimization based on statistics will not take place.
Are you sure this was not an upgrade or an environment that had CRM installed with the ERMO value previously?
The ERMO key is not setup by default on a new installation and the registry key should not even exist unless someone created it manually.
So, all new installs should be optimized by default (using the ERMO =0 with no registry key present) and you should only have to add this registry key if you need to use a different value for whatever reason.
while performing an upgrade from crm 4.0 to crm 2011 i am getting a sql exception which says could not allocate space for object in '_mscrm' database. This error occured while dropping a column in the attachment table. are there any space constraints we need to look at?
@SVelu, I would plan to have at least 1.5x your db size available in free space for an upgrade. As part of this if your db has SQL autogrow enabled you should pre grow the db by roughly 1.5x ahead of the upgrade and set auto grow to increments of at least 1gb to prevent excessive and expensive auto grow operations. Also be sure you have adequate log file and tempdb space as well. Good luck and let is know how it goes. Thanks!
Thanks Sean. CRM upgrade is taking very long time during upgrade indexes.my DB size is around 800 GB and attachment table size is 600 GB the upgrade index for this table took for 40 hrs and CRM 2011 upgrade from CRM 4.0 has failed at step upgrading original body text and updating body text for reports with Message = Object reference not set to an instance of an object for a custom report . Any suggestions?
Hi I am planning to Upgrade our existing implementation from UR6 to UR12 (Multi Browser).
Can somebody help me to choose the best Upgrade Options possible. Based on the Microsoft Best Practices I would possibly choose Migrate to New Environment approach. But I was wondering if we can just take the backup of the database from old environment and restore to new environment and fix the Cross Browser scripting issues etc. Is this the right approach. Please advice?
Hi, not sure to which I should apply the Server Optimizations, Front End, Back End, Deployment or all?