When upgrading SharePoint, you may encounter the error “Feature dependencies not resolved during upgrade.” This happens when required SharePoint features are missing, deactivated, or not properly upgraded. Below is a detailed step-by-step guide to troubleshooting and resolving this issue.
Step 1: Understand SharePoint Features and Dependencies
- SharePoint features are modular components that can be activated, deactivated, or upgraded.
- Some features depend on others, and missing dependencies can break the upgrade process.
- This error occurs when:
- A feature referenced in the old SharePoint version does not exist in the new version.
- A dependent feature is deactivated or missing from the solution package.
- A feature is not upgraded correctly during the migration.
Step 2: Check SharePoint Upgrade Logs
- Locate the logs at:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\LOGS
- Search for “Feature dependencies not resolved” to identify the missing feature(s).
Alternatively, use PowerShell to find upgrade errors:
Get-SPContentDatabase | ForEach-Object { Upgrade-SPContentDatabase -Identity $_.Id }
Step 3: Identify Missing Features
Run the following PowerShell command to get a list of all installed features:
Get-SPFeature | Sort-Object DisplayName
- Look for features marked as Missing or Faulty.
To check features in a specific site collection:
Get-SPSite "http://YourSiteURL" | Get-SPFeature
Step 4: Activate Missing Features
If a missing feature exists but is deactivated, activate it manually:
Enable-SPFeature -Identity "FeatureName" -Url "http://YourSiteURL"
If a feature is missing completely, reinstall it using:
Install-SPFeature -Path "FeatureFolderName"
Step 5: Remove References to Deprecated Features (If Needed)
If a feature is no longer supported in the new SharePoint version, it must be removed.
- Find the Feature ID in the logs or by running:
Get-SPFeature | Where-Object { $_.DisplayName -like "*FeatureName*" }
- If the feature is no longer needed, forcefully remove it:
Disable-SPFeature -Identity "FeatureName" -Url "http://YourSiteURL" -Confirm:$false
Uninstall-SPFeature -Identity "FeatureName" -Confirm:$false
Step 6: Verify Feature Dependencies in the Content Database
Check if the missing feature is still referenced in the SharePoint content database:
Get-SPContentDatabase | ForEach-Object { $_.NeedsUpgradeIncludeChildren }
If an upgrade is needed, run:
Upgrade-SPContentDatabase -Identity "YourDatabaseName"
Step 7: Manually Upgrade Features
If a feature version is outdated, upgrade it manually:
Upgrade-SPFeature -Identity "FeatureName" -Url "http://YourSiteURL"
To upgrade all features in a site collection:
Get-SPSite -Limit All | ForEach-Object { Upgrade-SPFeature -Url $_.Url }
Step 8: Reattempt the Upgrade
Once missing or outdated features are resolved, reattempt the SharePoint upgrade:
psconfig.exe -cmd upgrade -inplace b2b -wait -force
Final Thoughts
The “Feature dependencies not resolved” error typically occurs due to missing or outdated SharePoint features. By following the steps above—checking logs, activating/installing missing features, and removing deprecated features—you can successfully resolve the issue and complete the upgrade.
Would you like help identifying a specific missing feature from your logs?