Feature Update Troubleshooting

Profile picture for user PaulW
Posted by PaulW on Sat, 11/21/2020 - 10:25pm

This summer, I completed my Feature Update from 1803 to 1909 for my company.  The deployment went pretty smooth using the feature updates deployed from CM and then Martin Bengtsson Toast notification script (v 1.6 at the time).  At that time, it didn't handle Feature Updates.  So I added protocols and scripts to help with that.  I'll look at another article to talk about that.  This is mainly a blog of troubleshooting that went into feature updates for me this summer.

Error Codes

Lets start with a table of the error codes I ran into during the upgrades and what was done to work around them.

Summary of Known Errors

Error ID (hex)

Error ID (decimal)

Description

My Solution/Workaround

0x87D00656

-2016410026
or
2278557270

Unknown Error

The update may still be running in the background.   Please check for the running Processes from below (mainly SetupHost).  Also, look at the SetupAct.log and see if it has exited the process.  If processes are still running, please just wait until the update completes.  This can be done by either just waiting a few hours or monitoring the setupact.log.

Setupact.log is located here: C:\$Windows.~BT\Sources\panther\setupact.log

Once setupact.log shows completed, you can retry the update from Software Center to allow it to determine that it is indeed installed and ready for reboot.  This will allow the trigger of phase 2 and the reboot process can complete.

  • The Toast monitoring process accounts for this error and checks for the processes running in the background. If processes are running, it continues to loop and then runs mitigation at the end of the update to trigger software center to know it has been installed and is waiting for a reboot.
  • For when the update wasn't triggered via toast, I have a baseline that will watch for these 656 errors and automatically trigger the retry if it looks like it is complete.
0x80004005

-2147467259
or
2147500037

Unknown Error This error may show up as a result of 0x87D00656 and trying to run the update again.  No additional details at this time.  Reboot, run software update scan cycles and retry.
0x800700c1 -2147024703
or
2147942593
Unknown Error This may be related to internet connection interruption during specific phases or the update.  Reboot, confirm solid connectivity and try the update again.
0x87D00664

-2016410012
or
2278557284

Update Time Exceeded

The install time for the update exceeded the current maximum run time.  You should look at setting this time longer. I found that I needed to push out to 8 hours for the upgrades.

Reminder that the upgrade processes run in a "Below Normal" priority in the background.  So, if a lot of processor intensive activities are running, this will take much longer to complete.

0x87d00705 -2016409851
or
2278557445
Pause state required

This can be due to other updates in an incomplete state or updates that are still installing.

Try Restarting the Windows Update Service (if stopped, start and stop it). try reinstalling updates. If that does not resolve, reboot and retry reinstalling.

0x87d0070c -2016409844
or
2278557452
Update Time Exceeded

The install time for the update exceeded the current maximum run time of 480 minutes, or 8 hours.  Exceeding 8 hours may mean that there is something else on the machine slowing up the process.

Reminder that the upgrade processes run in a "Below Normal" priority in the background.  So, if a lot of processor intensive activities are running, this will take much longer to complete.

0xC190012e

-1047527122
or
3247440174

Unknown Error This is due to the file  C:\Users\Default\AppData\Local\Microsoft\ Windows\WSUS\SetupConfig.ini being blank with no contents.  Renaming the file will fix this.  (I use a baseline that detects and updates the file that had a bug in it at one time.  Came from Adam Gross github)
0xC1900208

-1047526904
or
3247440392

Application or Driver is blocking the upgrade
  • Run SetupDiag.exe to find the application or driver that is blocking the upgrade. 
  • My Toast monitoring will also detect this error and prompt to run the SetupDiag (Run Diagnostics) from Software Center.
0xC190020C -1047526900
or
3247440396
Does not have enough disk space

Free up disk space to at least 25GB and retry the update.

  • You may have to complete the steps in 0x80240020 before you can retry the update.
0xC190020E

-1047526898
or
3247440398

Does not have enough disk space

Free up disk space to at least 25GB and retry the update.

  • You may have to complete the steps in 0x80240020 before you can retry the update.
0x80240020

-2145124320
or
2149842976

Upgrade in inconsistent state

This is a result of re-running the update immediately following a 0xC1900208 error.

Information from here: https://www.systemcenterdudes.com/sccm-windows-10-feature-update-error-0xc1900208/

  • FIRST!!! Resolve the Application Or Driver issue from 0xC1900208 error.
  • Delete the content of C:\WINDOWS\SoftwareDistribution\Download folder:
    • rmdir C:\WINDOWS\SoftwareDistribution\Download\ /s /q

 

  • Delete the C:\$WINDOWS.~BT folder (hidden)  – Must delete the entire folder.
    • rmdir c:\$WINDOWS.~BT /s /q
       
      • If you get any errors on the folder with it in use, reboot and try to delete again.
  • Initiate a Software Update Deployment Evaluation Cycle and Software Update Scan Cycle

Now, retry installing the feature update.

0xC1900107 -1047527161
or
3247440135
Upgrade Error This error has resulted when steps to clean up error 0x80240020 are not done fully.  Please run through the steps to fix error 0x80240020 again.
0x87d00669

-2016410007
or
2278557289

Failed to download update

"Failed to download update" is the state that the computer was in with this error.  This error did follow the 0x80240020 error and may just be a continuation of the 0xC1900208 error.

So, the following may be needed:

  • Run SetupDiag.exe to find the application or driver that is blocking the upgrade.
  • Fix anything if diagnostics finds it.
  • follow the steps for the error 0x80240020 above to reset the content.

 

Additional Upgrade Error Resources

Reboot Loops

After the upgrade, Software Center may continue to state that the update requires a Reboot to complete.  This will put the computer into a sort of reboot loop.  And you will notice that it is actually already upgraded to 1909.  To resolve this, do the following:

  1. Confirm that the computer is indeed running 1909 and has upgraded.
    1. Do this by right-clicking the start menu and choosing System.
    2. In the Windows specifications, it should state version 1909.
      Show Current Windows 10 version
    3. If it does not state version 1909, then the issue is something else and should be resolved with the standard procedures above.
  2. Once it is verified to be running 1909, open registry editor (regedit) as admin.

  3. Browse to the following hive: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\CommitRequired

  4. Look at the GUID sub-keys for any that have a property GUID with a data value of 1.

  5. In this case, I found a key of {3DA21691-E39D-4DA6-8A4B-B43877BCB1B7} with a value of {8CBEAC10-A818-4C54-B461-A2EAFAD7F592} set to 1.

    1. {8CBEAC10-A818-4C54-B461-A2EAFAD7F592} corresponds to the 1909 feature update bundle ID.
  6. Delete the property GUID with a data value of 1.
    regedit key value to delete
  7. Now, just reset the CM Client WMI so it runs a repair.  (may be overkill, but then sure to do a pretty full house cleaning).
    Get-WmiObject -query "Select * From __Namespace Where Name='CCM'" -Namespace "root" | Remove-WmiObject
  8. Check back in on the machine in a couple of hours and it should be happily installed.

Feature Update Processes

Although it appears to install like a windows update, feature updates employ a number of processes to install the new build of Windows 10.  Many of those are outlined below.  These processes are easily monitored in phase 1 (pre-reboot) in the Task Manager.  They all are typically executed from the C:\$Windows.~BT directory.  These Processes run with a "Below Normal" priority as to not interfere with normal computer operations (unless changed in the CM Client Settings).

  1. C:\$WINDOWS.~BT\Sources\SetupHost.exe - This is the main process for the feature update.  You will note that this process has a Below Normal priority to prevent it from interfering with the normal usage of the computer.
  2. C:\$WINDOWS.~BT\Sources\mighost.exe - This will show up later in the pre-reboot phase.  This process handles data migration for user profiles and programs. (think USMT)
  3. C:\$WINDOWS.~BT\Work\*\DismHost.exe - A number of these will start and stop as parts of the OS are upgraded.  They will execute from random GUID (*) directories in C:\$WINDOWS.~BT\Work\.
  4. C:\$WINDOWS.~BT\Sources\Dism.exe - Will see this running as parts of the OS are upgraded. DISM is the main tool for servicing the Windows OS.
  5. C:\$WINDOWS.~BT\*\wimserv.exe - Also part of the upgrade process and works with WIM files.

Conclusion

Although this is not a complete guide, these are the sorts of errors I ran into during my feature updates this summer.  Much of this was probably gleaned from other sources in the heat of the moment but, has been refined to the solutions that helped me complete the upgrades.

I'm sure there are more errors out there that you have run into.  It'd be great for you to share them.  Or, you may have different solutions to the same errors that I didn't think of, share those as well.

Good luck with your feature updates!

Comments

Mate,

Thanks for sharing. Very useful

Add new comment

The content of this field is kept private and will not be shown publicly.
CAPTCHA
Verify you are a human.