While working on one upgrade project, after successfully completion of all activities there were multiple performance issues experienced. While we were trying to troubleshoot the issue, may be in wrong direction; found this great article today from Sudhir Nory which explains the root cause. This may not be the issue for all performance issue on upgrade projects but is surly helpful to know.
When a database is upgraded to SQL Server 2014 from any earlier version of SQL Server, the database retains its existing compatibility level if it is at least 100(SQL Server 2008 R2). If the compatibility-level setting is 110 or lower it uses the old query optimizer which may not be effective. We found the current compatibility level displayed in the Compatibility level list box was SQL server 2008 for the ORG_MSCRM Database SQL Server 2014 includes substantial improvements to the component that creates and optimized query plans and gets utilized only when database compatibility level is reset to 120 (SQL server 2014).
Many CRM implementations who upgraded their CRM 2013 organization to CRM 2015 started experiencing an issue where users were unable to see any fields on Account, Contact and Lead form. The form only used to show the command bar. This was specific to certain user.
But strangely the security role assigned to these users had read permission on these 3 entities and the data was shown on the home page grid and dashboard correctly, it was only the record forms were the issue was. Certainly it wasn’t a security role issue. Then what was it?
It turns out to be a bug with CRM 2015. The fix was to add the Read privilege on the Campaign entity in the role. I don’t know if this is related to the Last Campaign Date field on the records, but that fixed the issue.
The fix is now part of Update Rollup 1 for Microsoft Dynamics CRM 2015 so you may just update the CRM 2015 environment to UR 1 after up gradation from 2013. Below link has the list of all such fixes coming with CRM 2015 UR 1.