none
Windows 10 update to 1607 (Anniversary Edition) fails on a number of computers with same error message

    Question

  • I have a number of computer failing to install the now-mandatory 1607 update. I've tried the usual troubleshooting options without any luck:

    upgrading from iso
    upgrading from usb
    limited startup with only key services running
    disabled firewall/antivirus
    disconnected peripherals
    sfc /scannow
    DISM /Online /Cleanup-Image /RestoreHealth

    All of these systems fail with the same error messages in setuperr.log

    2017-02-27 04:18:27, Error      [0x08056a] MIG    Exception during processing unit="HKCR": class Mig::DevErrorException: Key name is smaller than ClassesRoot name.: The operation completed successfully. [0x00000000] class UnBCL::ArrayList<class UnBCL::String *> *__cdecl Mig::CComCache::GetRelativeToClassesRootSplit(class UnBCL::String *)[gle=0x00000002]
    2017-02-27 04:18:27, Error      [0x080191] MIG    CMigUnitManager: agent CUpgradeAgent threw an exception during AddGatherInfo: class Mig::DevErrorException: Key name is smaller than ClassesRoot name.: The operation completed successfully. [0x00000000] void __cdecl Mig::CUpgradeAgent::GatherFlow(class Mig::CPlatform *,class Mig::CMigUnit *,class Mig::CUserContext *)
    class UnBCL::ArrayList<class UnBCL::String *> *__cdecl Mig::CComCache::GetRelativeToClassesRootSplit(class UnBCL::String *)[gle=0x00000002]
    2017-02-27 04:18:27, Error                 SP     pSPDoMainGather: Migration phase caught exception: class Mig::DevErrorException: Key name is smaller than ClassesRoot name.: The operation completed successfully. [0x00000000] void __cdecl Mig::CAgentManager::AddGatherInfo(class Mig::CPlatform *,struct IMigDiscoverProgress *,class Mig::CUserContext *,class Mig::CMigUnitList *)

    Here is what seems to be the offending section from setupact.log. Any help or advice is appreciated, thanks!

    17-02-07 04:18:27, Info                  MIG    IsRegKeyExcluded: registry key 'HKLM\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows x64\Drivers\Version-3\Microsoft XPS Document Writer v4' doesn't exist so we assume it is not excluded.
    2017-02-27 04:18:27, Info                  MIG    IsRegKeyExcluded: registry key 'HKLM\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows x64\Drivers\Version-3\Send to Microsoft OneNote 15 Driver' doesn't exist so we assume it is not excluded.
    2017-02-27 04:18:27, Info                  MIG    IsRegKeyExcluded: registry key 'HKLM\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows x64\Drivers\Version-3\Send to Microsoft OneNote 16 Driver' doesn't exist so we assume it is not excluded.
    2017-02-27 04:18:27, Info       [0x080570] MIG    Completed processing unit="HKLM\SYSTEM\CurrentControlSet\Control\Print", worktime = 0 seconds.
    2017-02-27 04:18:27, Info       [0x08056f] MIG    Start processing unit="Container of: HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths, Wow64:HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths"
    2017-02-27 04:18:27, Info                  MIG    ProcessingUnitContainer = "Container of: HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths, Wow64:HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths", ProcessingUnit = "HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths"
    2017-02-27 04:18:27, Info                  MIG    ProcessingUnitContainer = "Container of: HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths, Wow64:HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths", ProcessingUnit = "Wow64:HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths"
    2017-02-27 04:18:27, Info       [0x080570] MIG    Completed processing unit="Container of: HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths, Wow64:HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths", worktime = 0 seconds.
    2017-02-27 04:18:27, Info       [0x08056f] MIG    Start processing unit="Container of: HKCU\Software\Microsoft\Windows\CurrentVersion\App Paths, Wow64:HKCU\Software\Microsoft\Windows\CurrentVersion\App Paths"
    2017-02-27 04:18:27, Info                  MIG    ProcessingUnitContainer = "Container of: HKCU\Software\Microsoft\Windows\CurrentVersion\App Paths, Wow64:HKCU\Software\Microsoft\Windows\CurrentVersion\App Paths", ProcessingUnit = "HKCU\Software\Microsoft\Windows\CurrentVersion\App Paths"
    2017-02-27 04:18:27, Info                  MIG    ProcessingUnitContainer = "Container of: HKCU\Software\Microsoft\Windows\CurrentVersion\App Paths, Wow64:HKCU\Software\Microsoft\Windows\CurrentVersion\App Paths", ProcessingUnit = "Wow64:HKCU\Software\Microsoft\Windows\CurrentVersion\App Paths"
    2017-02-27 04:18:27, Info       [0x080570] MIG    Completed processing unit="Container of: HKCU\Software\Microsoft\Windows\CurrentVersion\App Paths, Wow64:HKCU\Software\Microsoft\Windows\CurrentVersion\App Paths", worktime = 0 seconds.
    2017-02-27 04:18:27, Info       [0x08056f] MIG    Start processing unit="HKCR"
    2017-02-27 04:18:27, Info                  MIG    Entering Mig::CComHelper::AddNonSystemClassesRoot
    2017-02-27 04:18:27, Error      [0x08056a] MIG    Exception during processing unit="HKCR": class Mig::DevErrorException: Key name is smaller than ClassesRoot name.: The operation completed successfully. [0x00000000] class UnBCL::ArrayList<class UnBCL::String *> *__cdecl Mig::CComCache::GetRelativeToClassesRootSplit(class UnBCL::String *)[gle=0x00000002]
    2017-02-27 04:18:27, Error      [0x080191] MIG    CMigUnitManager: agent CUpgradeAgent threw an exception during AddGatherInfo: class Mig::DevErrorException: Key name is smaller than ClassesRoot name.: The operation completed successfully. [0x00000000] void __cdecl Mig::CUpgradeAgent::GatherFlow(class Mig::CPlatform *,class Mig::CMigUnit *,class Mig::CUserContext *)
    class UnBCL::ArrayList<class UnBCL::String *> *__cdecl Mig::CComCache::GetRelativeToClassesRootSplit(class UnBCL::String *)[gle=0x00000002]
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x18a4].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0xf38].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0xfb4].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x2a10].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x9c4].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x15b0].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0xf68].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x1f50].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x6c0].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x1ac8].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x15ac].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x1604].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x23a4].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x169c].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x15e0].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x464].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x1808].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x1244].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x2044].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0xc24].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x296c].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x308].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x278].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x2bdc].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x181c].
    2017-02-27 04:18:27, Info                  MIG    MigHost: CMigPluginSurrogate::COMGenericThreadingHostThreadProc: Exiting ThreadID=[0x2604].
    2017-02-27 04:18:27, Info                  MIG    MigHost: Exiting process.

    Tuesday, February 28, 2017 9:39 PM

Answers

  • I've finally found what was causing our issue. If a client had installed a specific version of FireFox (still tracking down the actual version number) the installer put some rogue registry entries in place. 


    Specifically it would create a FriendlyTypeName value with data of "Firefox Url" in the root of HKCR, as well as in the root of HKCU\Software\Classes for any client on the computer who had used that version of FF. 


    If I delete the value out of HKCR as well as from each users Software\Classes key I can then successfully run the upgrade. To remove the value for each user, I had to load the registry hive located at c:\usernameHere\AppData\Local\Microsoft\Windows\Usrclass.dat for each user.


    • Marked as answer by DH121 Wednesday, March 8, 2017 11:40 PM
    • Edited by DH121 Wednesday, March 8, 2017 11:40 PM
    Tuesday, March 7, 2017 2:06 PM

All replies

  • Hi DH121,

    What is the machine model of those machines? Which step is the upgrade process stuck in(migrate, setup or update)?

    Please ensure the device manufacturer website has released the Windows 10 compatible drivers for your machine model.
    For Windows 10 1607 version, all the drivers should be trusted by Windows 10 or they may fail to install.

    To analyze the issue deeply, please upload the setup*.log to OneDrive and paste the link here.

    Best regards


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    Wednesday, March 1, 2017 2:11 AM
    Moderator
  • Thanks for your response. I am seeing this on approximately 15 different models from HP, including the Elite 8300 and EliteBook 850. I believe all of the models are fully supported for Windows 10, but will attempt to update of all drivers on one of these so I can rule that out.

    Here is a link to the log files: link removed



    • Edited by DH121 Wednesday, March 8, 2017 11:39 PM
    Wednesday, March 1, 2017 2:28 PM
  • Hi DH121,

    After reading the log, I have several suggestions for you.
    The user account "UW-Stout" seems to have been corrupted. Please delete the account from the machine.

    "Plugin {401F8281-A9B6-49F9-9F71-8AEA167EEEFD}: admin\wmi\wbem\migration\gatherer.cpp@243, HRESULT: 0x80041006, CIM_Error"
    Have you installed any application developed by yourself called "gatherer.cpp"?
    If there is one, please uninstall it.

    " Plugin {12FF03A1-5339-4bd6-B557-9227E0675910}: failed to open HKLM\System\CurrentControlSet\Services\VmsMp\Parameters\NicList, error=2
    "
    This is the most possible reason, this error is related to the virtual machine`s virtual network settings. If it is possible, please remove the hyper-v feature and delete the virtual network settings(backup them before we made any modifications) then try to upgrade again.

    Best regards


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.


    Thursday, March 2, 2017 9:22 AM
    Moderator
  • I tried doing the upgrade on a machine that was failing the upgrade that did not have HypverV enabled and had the same result.

    I deleted the account/user profile for the account mentioned on another system failing to upgrade, but had the same result.

    I suspect the migration\gatherer application is actually the migration portion of the upgrade, but this is just a guess.

    In every log we find on a failed upgrade we are seeing the section regarding "Key name is smaller than ClassesRoot name" followed immediately by setup exiting.

    Thanks for your input.


    • Edited by DH121 Friday, March 3, 2017 11:54 PM
    Friday, March 3, 2017 11:52 PM
  • Hi DH121,

    Have you removed the virtual adapter registry keys after removing hyper-v?

    If the issue persists, I am afraid the last step we could try is to backup the important data and performed a clean installation.

    Best regards


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.


    Monday, March 6, 2017 9:37 AM
    Moderator
  • I've finally found what was causing our issue. If a client had installed a specific version of FireFox (still tracking down the actual version number) the installer put some rogue registry entries in place. 


    Specifically it would create a FriendlyTypeName value with data of "Firefox Url" in the root of HKCR, as well as in the root of HKCU\Software\Classes for any client on the computer who had used that version of FF. 


    If I delete the value out of HKCR as well as from each users Software\Classes key I can then successfully run the upgrade. To remove the value for each user, I had to load the registry hive located at c:\usernameHere\AppData\Local\Microsoft\Windows\Usrclass.dat for each user.


    • Marked as answer by DH121 Wednesday, March 8, 2017 11:40 PM
    • Edited by DH121 Wednesday, March 8, 2017 11:40 PM
    Tuesday, March 7, 2017 2:06 PM