Error while executing web part: System.MissingMethodException: Method not found: 'Boolean Microsoft.Office.Server.Utilities.ParsedCamlQuery.HasMultipleLookupIdInClauses()'
Yesterday we got a very strange behavior in one of our customers' SharePoint (SharePoint Server 2010) that after installing Service Pack 2 for SharePoint Server 2010, all the users started getting the below error, when accessing any library even on Central Administration site!
Unable to display this Web Part. To troubleshoot the problem, open this Web page in a Microsoft SharePoint Foundation-compatible HTML editor such as Microsoft SharePoint Designer. If the problem persists, contact your Web server administrator.
Digging deeper in the SharePoint ULS logs, we found the below interesting log...
Error while executing web part: System.MissingMethodException: Method not found: 'Boolean Microsoft.Office.Server.Utilities.ParsedCamlQuery.HasMultipleLookupIdInClauses()'. at Microsoft.Office.DocumentManagement.MetadataNavigation.MetadataNavigationContext.ApplyOverrideClauses() at Microsoft.Office.DocumentManagement.MetadataNavigation.MetadataNavigationContext.CacheContextFilterOpsAndCaml() at Microsoft.SharePoint.WebControls.SPDataSource.OnSelecting(EventArgs arguments) at Microsoft.SharePoint.WebControls.SPDataSourceView.ExecuteSelect(DataSourceSelectArguments selectArguments, String aggregateString, Boolean wantReturn, BaseXsltListWebPart webpart, SPListItem& listItem, SPListItemCollection& listItems, String[]& fieldList) at Microsoft.SharePoint.WebControls.SingleDataSource.GetXPathNavigatorInternal() at Microsoft.SharePoint.WebControls.SingleDataSource.GetXPathNavigator() at Microsoft.SharePoint.WebPartPages.DataFormWebPart.PrepareAndPerformTransform(Boolean bDeferExecuteTransform)
As seen from the above callstack, this is totally OOTB functionality (not custom!). Therefore, we had a look on the dll "Microsoft.Office.DocumentManagement.dll" which is located at "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\ISAPI", and found that it had the version "14.0.7010.1000", although the customer has already installed SP2. Hence, we installed November 2016 CU (https://www.microsoft.com/en-us/download/details.aspx?id=54212) which has an updated version of this dll (14.0.7158.5000), as shown below:
After installing the updates, and running the configuration wizard, the issue got resolved.
P.S., I saw other customers resolved this issue by installing Service Pack 2, but we had this already installed. Hence, if you don't already have Service Pack 2 installed, go ahead a give it a shot.