SPUpgradeException - Error message when you run the "SharePoint Products and Technologies Configuration Wizard" when you create a New SharePoint 2016 Farm

SYMPTOMS

On a Windows Server 2012 R2 server that has SharePoint Server 2016 installed, when you run the SharePoint Configuration Wizard to Create a New SharePoint Farm, when the wizard reaches Step 3, you receive the following error message

 

   Exception: Microsoft.SharePoint.Upgrade.SPUpgradeException: One or more types failed to load. Please refer to the upgrade log for more details.

   at Microsoft.SharePoint.Upgrade.SPActionSequence.LoadUpgradeActions()

   at Microsoft.SharePoint.Upgrade.SPActionSequence.get_Actions()

   at Microsoft.SharePoint.Upgrade.SPActionSequence.get_ActionsInternal()

   at Microsoft.SharePoint.Upgrade.SPUtility.GetLatestTargetSchemaVersionBeforeMajorVersion(Type typeActionSequence, Int32 majorVer)

   at Microsoft.SharePoint.Upgrade.SPSiteSequence.get_PreviousTargetSchemaVersion()

   at Microsoft.SharePoint.Upgrade.SPUpgradeSession.PopulateSequencesTable(StringBuilder sqlstr, Boolean siteSequence)

   at Microsoft.SharePoint.Upgrade.SPUpgradeSession.ConstructSiteNeedsUpgradeQuery(Guid siteId)

   at Microsoft.SharePoint.Upgrade.SPContentDatabaseSequence.GetSiteNeedsUpgrade(SPUpgradeSession session, SPContentDatabase database, Dictionary`2& dictSitesNeedUpgrade, Dictionary`2& dictSitesNeedFeatureUpgrade)

   at Microsoft.SharePoint.Upgrade.SPContentDatabaseSequence.AddNextLevelObjects()

   at Microsoft.SharePoint.Upgrade.SPHierarchyManager.Grow(SPTree`1 root, Boolean bRecursing, SPDelegateManager delegateManager)

   at Microsoft.SharePoint.Upgrade.SPHierarchyManager.Grow(SPTree`1 root, SPDelegateManager delegateManager)

   at Microsoft.SharePoint.Upgrade.SPUpgradeSession.NeedsUpgrade(Object o, Boolean bRecurse)

   at Microsoft.SharePoint.Upgrade.SPUpgradeSession.ReflexiveNeedsUpgrade(Object o, Boolean bRecurse)

   at Microsoft.SharePoint.Upgrade.SPUpgradeSession.NeedsUpgrade(Object o, Boolean bRecurse)

   at Microsoft.SharePoint.Upgrade.SPUpgradeSession.ReflexiveNeedsUpgrade(Object o, Boolean bRecurse)

   at Microsoft.SharePoint.Upgrade.SPUpgradeSession.NeedsUpgrade(Object o, Boolean bRecurse)

   at Microsoft.SharePoint.Upgrade.SPUpgradeSession.ReflexiveNeedsUpgrade(Object o, Boolean bRecurse)

   at Microsoft.SharePoint.Upgrade.SPUpgradeSession.NeedsUpgrade(Object o, Boolean bRecurse)

   at Microsoft.SharePoint.Upgrade.SPUpgradeSession.ReflexiveNeedsUpgrade(Object o, Boolean bRecurse)

   at Microsoft.SharePoint.Upgrade.SPUpgradeSession.NeedsUpgrade(Object o, Boolean bRecurse)

   at Microsoft.SharePoint.Administration.SPServerProductInfo.DetectLocalUpgradeStatus()

   at Microsoft.SharePoint.Administration.SPServerProductInfo.DetectLocalProductVersions(SPProductVersions prodVer)

   at Microsoft.SharePoint.Administration.SPServerProductInfo.UpdateProductInfoInDatabase(Guid serverGuid)

   at Microsoft.SharePoint.Administration.SPFarm.Join(Boolean skipRegisterAsDistributedCacheHost, Nullable`1 serverRole)

   at Microsoft.SharePoint.PostSetupConfiguration.ConfigurationDatabaseTask.CreateOrConnectConfigDb()

   at Microsoft.SharePoint.PostSetupConfiguration.ConfigurationDatabaseTask.Run()

   at Microsoft.SharePoint.PostSetupConfiguration.TaskThread.ExecuteTask()

 

The following screenshot shows the ULS log entry that relates to the SPUpgradeException error.

 Error Exception: Could not load file or assembly ‘Microsoft.Data.Odata’

 Error failed to call GetTypes()

CAUSE

The issue only appears to occur, if you are downloading the Microsoft WCF Data Services 5.6” prerequisites component using the direct download (Offline installer) link or if you copy the Microsoft WCF Data Services 5.6” executable from a network location.   Files that are downloaded from the internet or copied from a Network location are blocked by Windows Operating System SmartScreen Program/ File Security feature.

 In some cases, though installation of the blocked file is allowed.  However, this may affect the installation or the registration of certain components.  

Also after installing the "Microsoft WCF Data Services 5.6" please reboot the server, before running the SharePoint Configuration Wizard.  Rebooting the server appears to register the component.   Therefore, this issue could be avoided.

WORKAROUND

Method 1

If the server where SharePoint Server 2016 is installed is connected to the internet, then use the PrerequisiteInstaller.exe to download the necessary prerequisites component using the prerequisite installer.   Microsoft WCF Data Services 5.6” component that was installed using thePrerequisiteInstaller.exe is not affected by this issue.

 

Method 2 

If the SharePoint 2013 Server is not connected to the internet, then unblock the WCFDataServices.exe file from the File properties.  Rerun the executable and click Repair to re-install/repair the component.

After a successful repair of the WCF Data Services component, rerun the SharePoint Configuration Wizard for a successful creation of a New SharePoint Farm.

APPLIES TO

Windows Server 2012 R2

SharePoint Server 2016 RTM