Recently we came across an issue where a CRM integration was deadlocking on roughly 10% of the transactions with large datasets (>100,000 records). Deadlocks as many know are not fun to deal with. After checking some of the obvious things that can cause deadlocks and shutting off all plugins and workflows, we were still getting deadlocks. This reminded me of a situation I ran into on a custom app I wrote a few years earlier. What we did to alleviate the issue was to turn on Read Committed Snapshot in Sql 2005. Sql Server 2005+ introduced the Read Committed Snapshot isolation level. With Read Committed Snapshot we can have have optimistic locking. Great! all of our problems were solved right? Not exactly.
There are known concerns with Read Committed Snapshot that mainly exist in older applications that were developed without this isolation level in mind. For a more detailed description, I recommend checking out this blog post here.
This got me thinking, what about CRM? CRM was originally developed back in the Sql Server 2000 days so does it support Read Committed Snapshot or no? After searching around and not getting anything definitive, I decided to go to the source and ask. It turns out that it is supported! Here is what I received back from the product team (paraphrased):
Microsoft CRM specifically creates serializable transactions where they are needed to avoid problems such as the ones mentioned in the article you provided (the article referenced above). Some of those areas include areas like email where we need to make sure that the email completes or not.
After finding this out, we decided to implement Read Committed Snapshot on the CRM cluster running Rollup 8 and the deadlocks went away. The immediate thing we noticed and something to watch out for is that the Tempdb now has a lot more usage.
In summary, Read Committed Snapshot is supported and should help take care of issues regarding deadlocks and even improve the performance of CRM. However, I would recommend doing research and proper due diligence before implementing this solution since it is a global change and can affect accuracy of data. Special thanks to Corey on the product team for his assistance!
Check out the details here of what this rollup contains including files update here: http://ow.ly/16ouK
Download the update here: http://ow.ly/16otX
As with all updates, I highly recommend waiting a week or so before
trying it in case of a recall and to make sure you test it out in a test
environment before deploying.
A new version of the IG has been released and can be found here:
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=1ceb5e01-de9f-48c0-8ce2-51633ebf4714
Here is the change summary:
Summary of Documentation Revisions and Additions for Update 4.5.0
The latest updates to the Microsoft Dynamics CRM 4.0 Implementation Guide are available in the following formats and locations:
· Word format Microsoft Dynamics CRM 4.0 Implementation Guide (http://go.microsoft.com/fwlink/?LinkID=131228)
· Compiled HTML Help (CHM) format Microsoft Dynamics CRM 4.0 Implementation Guide (http://go.microsoft.com/fwlink/?LinkID=131228)
· Microsoft TechNet Microsoft Dynamics CRM 4.0 Implementation Guide (http://go.microsoft.com/fwlink/?LinkID=156701)
The following table describes the new and revised content for this update.
| Guide | Chapter | Pages | Type | Explanation |
| Planning | 3 | 33 | New | Added information about Microsoft Dynamics CRM for Outlook support on Windows 7. |
| Planning | 3 | 33–34 | Revision | Updated Microsoft Dynamics CRM for Outlook software requirements and software component prerequisites. |
| Planning | 5 | 81–83 | New/Revision | Added information and updated existing information about how to install and configure Microsoft Dynamics CRM for Outlook by using Group Policy Object (GPO) deployment. |
| Installing | 3 | 62–69 | New/Revision | Added information and updated existing information about how to troubleshoot the E-mail Router installation and configuration. |
| Installing | 4 | 71–74 | New/Revision | Added information and updated existing information about how to install and configure Microsoft Dynamics CRM for Outlook on a computer that does not have a previous version of Microsoft Dynamics CRM for Outlook installed. |
| Installing | 4 | 73 | New | Added information about how to enable participation in the Customer Experience Improvement Program. |
| Installing | 4 | 74–76 | New | Added information about how to upgrade Microsoft Dynamics CRM 3.0 client for Outlook to the latest version of Microsoft Dynamics CRM 4.0 for Outlook. |
| Installing | 4 | 76–77 | New | Added information about how to update an earlier version of Microsoft Dynamics CRM 4.0 for Outlook. |
| Installing | 4 | 77 | New | Added information about how to remove the CRM for Outlook button from the Web application. |
| Installing | 4 | 77 | New | Added information about how to disable patching permission for non-administrator users. |
| Installing | 4 | 77 | New | Added information about how to troubleshoot default e-mail handler errors. |
| Installing | 4 | 78–81 | Revision | Updated existing information about how to deploy Microsoft Dynamics CRM for Outlook with SMS. |
| Installing | 4 | 81 | New | Added information about the Management Information Format (MIF) file, which can be used with SMS deployments. |
| Installing | 7 | 104 | New | Added information about conflicts between values in the configuration file and values in command-line parameters. The configuration file take precedence. |
| Installing | 7 | 105 | New | Added information about where the Configuration Wizard looks for configuration files. |
| Installing | 8 | 114 | New | Added information about how to enable logging for Microsoft Dynamics CRM for Outlook repair and uninstall. |
| Maintaining | 2 | 10 | New | Added information about not using use the < logic operator (XSL less-than operator) in update configuration files. Instead, use the XSL != operator. |
| Maintaining | 2 | 17–30 | New | Added information about Microsoft Dynamics CRM performance counters. |
| Maintaining | 2 | 38–44 | New/Revision | Added information and updated existing information about how to troubleshoot Microsoft Dynamics CRM reporting issues. |
Microsoft has just released the social networking accelerator for CRM 4! This highly anticipated accelerator was demoed at WPC earlier this year. For more details about the accelerator, I recommend checking out Menno te Koppele’s blog about it a few months ago. To download this accelerator as well as all the other accelerators available, go here:
http://crmaccelerators.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=19132
Microsoft released Update Rollup 6 yesterday. As always, I recommend waiting a few weeks for the dust to settle before deploying to your environments. Rollup 6 includes
Here is a link to the KB article highlighting all of the updates in this rollup including the files modified: http://support.microsoft.com/default.aspx?kbid=970148
Ascentium has been named Microsoft Dynamics Outstanding Reseller of the Year! Here is a link to the official press release here
"Ascentium has achieved exceptional levels of performance while delivering outstanding value to their customers,” said Doug Kennedy, vice president of Microsoft Dynamics Partners. “It’s an honor to recognize their leadership and contributions within the Microsoft Dynamics partner community, and we want to congratulate the company on being named as the Microsoft Dynamics Outstanding Reseller of the Year."
Fellow colleague and MVP Aaron Elder, recently posted an article on Technet regarding troubleshooting CRM. Aaron is one of the best troubleshooters I know and I highly recommend this read. Check it out here
The official blog post: Product Release: Mobile Express for Microsoft Dynamics CRM 4.0
Mobile Express for Microsoft Dynamics CRM 4.0 is available as a free download and supports the product's full customization and multi tenant capabilities. Those capabilities allow organizations to deploy a CRM solution for one set of workers and, using the same software licenses and hardware, develop instantly mobilized xRM solutions for a wide variety of other business needs using point and click tools.
Keep in mind that the Mobile Express client installs CRM Update Rollup 5 as well so make sure your applications have been tested before deploying:
Downloading and installing Mobile Express for Microsoft Dynamics CRM also downloads and installs Update Rollup 5 for Microsoft Dynamics CRM 4.0 (KB 970141) on your server, a tested, cumulative set of updates for Microsoft Dynamics CRM 4.0. It includes performance enhancements that are packaged together for easy deployment.
The Deployment Administrator of CRM 4 allows you to manage and create multiple organizations (also referred to as multi-tenancy). Creating multiple tenants is great because it creates a separate instance of CRM with it's own customizations, users, data, etc. To access these additional tenants, CRM parses the url and directs accordingly. When a user navigates to http://crmserver they are taken to their default organization. To specify an org they would change the url to http://crmserver/orgName where orgName is the name of the organization. Sometimes a user will be a member of multiple organizations. When a user is a member of multiple orgs, the default org will be the first org the user joined. The MSCRM_CONFIG database stores this information and manages it for you. Changing this setting seems to be simple but it turns out not to be.
The Deployment Manager allows a Deployment Administrator to specify the "default organization". One would think that this setting would default the organization of http://crmserver to the org listed as default but it turns out not to. This setting is actually used for legacy code and callouts that use the 2006 web service endpoint. Since this endpoint is not multi-tenant aware the code will run against the organization marked as the default. See this article for more details regarding legacy support and multi-tenancy: http://msdn.microsoft.com/en-us/library/cc151075.aspx.
To change this setting in a supported way requires an admin to download a tool provided by Microsoft at the following site: http://blogs.msdn.com/crmlandia/archive/2009/02/04/por-qu-la-organizaci-n-por-defecto-no-cambia-cuando-la-modificamos-en-el-administrador-de-implementaciones.aspx. Unfortunately this post is written in Spanish, but the tool works just the same. The tool is an ASP.NET page that is added to CRM through the ISV.config. The readme contains all of the details on how to install the tool in English.
Special thanks to Corey Hanson from the product team for the explanation.
I just found out that Microsoft has awarded me MVP for the 2nd year! What a great last few weeks! CRM Partner of the Year and now MVP again! You can checkout my company's website here and my MVP profile here
It's been forever since I posted because I've been so busy. But here is great news for my company!
Ascentium was just announced as the Dynamics CRM Partner of the Year! Woohoo and what a year! Check it out here: http://www.microsoft.com/presspass/press/2009/jun09/06-24POTY09PR.mspx?rss_fdn=Press
Recently I wrote a blog series for the Microsoft Dynamics CRM Team Blog. The blog series covers the newly released Internet Explorer 8 and using the Developer Tools with MSCRM 4.
In the first part, I briefly walkthrough the new View Source, but primarily focus on the Developer Tools relating to styling, formatting, and layout.
http://blogs.msdn.com/crm/archive/2009/03/26/ie-8-released-with-nice-debugging-tools-and-crm-4-support.aspx
In Part 2, I go into the debugging aspects of the tools with a focus on debugging script added to forms in CRM 4. I also cover some of the quirks that currently exist with the tools and workarounds for them.
http://blogs.msdn.com/crm/archive/2009/04/06/part-2-ie-8-developer-tools-and-crm-4-client-side-debugging.aspx
If you haven’t had a chance to checkout the series, I highly recommend them :)
Girish Raja from Microsoft posted a blog post today full of videos from the companies that attended the previous Incubation Week. I suggest checking them out! The next Incubation Week will be in Boston, MA from April 20-24 which I will be attending as an Advisor. If you are interested in attending and would like to get more details, please read Sanjay Jain’s blog post that covers the pre-requisites and how to sign up. It should be a great week!
Jason Hunt will be hosting the “Understanding xRM” session today at 11am in room 341. Aaron and I will be participating as panel speakers during this session. Make sure to stop by and bring your xRM questions with you.
Afterwards, Aaron and I will be working at the Microsoft Dynamics CRM Kiosks (52-57) till roughly 1:30pm. We are usually pretty busy during this time speaking with many regarding xRM and using CRM as a platform. The conversations so far have been very interesting, with us speaking about many different verticals and how using CRM as a platform and taking the functionality that is provided, you can help go to market faster and eliminate a lot of the plumbing that is involved in custom app development.
If you have any questions regarding Ascentium, CRM, xRM, or want to put a face to the blog posts, then stop by the Kiosk or the session today!
Convergence opened up well today. Everything was setup well and the first presentation I attended went very smooth. My day started out with me participating on the Partner panel during the Partner Briefing General Sessions. It was a great presentation given by Brad Wilson, Doug Kennedy, and David Brown. During the presentations, Reuben Krippner demoed many of the CRM Accelerators, which was great to see. After the presentation (and a great lunch), I headed over to the Pavilion to join the CRM kiosk team to speak and offer assistance. There were a lot of great questions regarding integrations with CRM, the mobile client, and Outlook integration. It was also a great opportunity to meet some of the other Microsoft CRM MVPs.
For the remainder of the week, Aaron and I will be working the Microsoft kiosks during the times listed below. If you have any questions regarding CRM, or as we like to call it xRM, stop by during the times below at the Microsoft Pavilion Kiosks 52-57.
Here is our schedule:
- Wednesday 11:30 - 1:30, Microsoft booth for xRM.
- Thursday 12:00 - 1:30, Microsoft booth for xRM.
Also, Jason Hunt will be speaking on Thursday from 11-12pm in room 341 on “Understanding xRM”.
More Posts
Next page »