Win10 Panther migration gather/apply - a peculiarity

Discuss Windows Vista/Server 2008 to Windows 10.
Post Reply
Bas
Posts: 38
Joined: Fri Jul 13, 2007 1:07 pm

Win10 Panther migration gather/apply - a peculiarity

Post by Bas »

Even though there's been a great push in migration quality over the years since Panther (and related systems) was first introduced, I today was treated (by an acquaintance) to a remarkable failure during a fairly late point of the apply stage during what should've been a routine upgrade from 10586 to 14393, a scenario that should be highly common by itself.

Code: Select all

2016-08-21 09:22:02, Info                  MIG    APPLYRECURSIVE: NO(sysobj): C:\Windows\Resources\Themes
2016-08-21 09:22:02, Info                  MIG    Object C:\Windows\Resources\Themes\aero.theme is excluded from migration because it is a system object.
2016-08-21 09:22:02, Info                  MIG    Object C:\Windows\Resources\Themes\theme1.theme is excluded from migration because it is a system object.
2016-08-21 09:22:02, Info                  MIG    Object C:\Windows\Resources\Themes\theme2.theme is excluded from migration because it is a system object.
2016-08-21 09:22:02, Info                  MIG    APPLYRECURSIVE: NO(sysobj): C:\Windows\Resources\Themes\aero
2016-08-21 09:22:02, Info                  MIG    Object C:\Windows\Resources\Themes\aero\aero.msstyles is excluded from migration because it is a system object.
2016-08-21 09:22:02, Info                  MIG    APPLYRECURSIVE: NO(sysobj): C:\Windows\Resources\Themes\aero\aerolite.msstyles
2016-08-21 09:22:02, Warning    [0x080969] MIG    CKnowledgeManager::GetDataUnit: could not get data unit for C:\Windows\Resources\Themes\aero\aerolite.msstyles. Error: 0x00000003
2016-08-21 09:22:02, Warning                      RECAPPLY: Error while moving \\?\C:\Windows.old\Windows\Resources\Themes\aero\aerolite.msstyles\Nocturnal to \\?\C:\Windows\Resources\Themes\aero\aerolite.msstyles\Nocturnal. Error: 0x00000057
2016-08-21 09:22:02, Info                  MIG    Cannot apply recursively object: C:\Windows\Resources\Themes\aero\aerolite.msstyles\Nocturnal: Win32Exception: The parameter is incorrect. [0x00000057] void __cdecl Mig::CUpgradeTransportStreamProxy::CreateFolder(class UnBCL::String *,int,int *,struct ILocalProgress *)
2016-08-21 09:22:02, Warning               MIG    Could not create object C:\Windows\Resources\Themes\aero\aerolite.msstyles\Nocturnal. Exception class Mig::SideAwareWin32Exception: Error while creating parent directory structure for \\?\C:\Windows\Resources\Themes\aero\aerolite.msstyles: The local device name is already in use. [0x00000055] void __cdecl Mig::CFileDataStore::Create(class Mig::CDataUnit *)
2016-08-21 09:22:02, Info                  MIG    Error 85 during apply of object C:\Windows\Resources\Themes\aero\aerolite.msstyles\Nocturnal. Will ask shell application for resolution.
2016-08-21 09:22:02, Error                 SP     Error WRITE, 0x00000055 while gathering/applying object: File, C:\Windows\Resources\Themes\aero\aerolite.msstyles\Nocturnal. Will return 0[gle=0x00000003]
2016-08-21 09:22:02, Error                 MIG    Error 85 while applying object C:\Windows\Resources\Themes\aero\aerolite.msstyles\Nocturnal. Shell application requested abort[gle=0x00000003]
2016-08-21 09:22:02, Error      [0x08097b] MIG    Abandoning apply due to error for object: C:\Windows\Resources\Themes\aero\aerolite.msstyles\Nocturnal[gle=0x00000003]
2016-08-21 09:22:02, Info                  SP     SetupPlatform: Global progress: 71, Phase progress: 91
2016-08-21 09:22:02, Info                  SP     SETUPPLATFORMEXE: Sending progress message: Phase: First Boot, Operation: Migrate data, Percentage: 91%
2016-08-21 09:23:09, Error                        Apply failed. Last error: 0x00000000
2016-08-21 09:23:09, Error                 SP     pSPDoOnlineApply: Apply operation failed. Error: 0x0000002C
2016-08-21 09:23:10, Error                 SP     Apply: Migration phase failed. Result: 44
2016-08-21 09:23:10, Error                 SP     Operation failed: First boot apply. Error: 0x8007042B[gle=0x000000b7]
2016-08-21 09:23:10, Error                 SP     Operation execution failed: 13. hr = 0x8007042B[gle=0x000000b7]
2016-08-21 09:23:10, Error                 SP     Operation execution failed.[gle=0x000000b7]
After the rollback of system state, I explicitly asked the user if they had indeed replaced aerolite.msstyles with a folder, and upon an affirmative answer noticed that this was a common thing to do to work around a flaw preventing UxStyle from working, and albeit this is clearly an unsupported scenario, it is notable how the SFLIST* whitelists[1] for data that can be ignored during gather apparently ignore the existence of a directory named after a whitelisted file, and only present this error during the application stage, when the folder is attempted to be placed in order to overwrite the file from the installation image.

While it is reasonable to do this to prevent data loss (said folder might very well, no matter how unlikely, contain user data), and because most (if not all?) files originating from the installation image have ACLs preventing anyone from creating directories in place of them accidentally, this type of no-matter-how-uncommon[2] issues do not help much with the group of users already wary of migration...

... then again, when the emoji font update in RS1 caused an application compatibility crash in code I actually wrote myself one day (which used the DWrite color run generation API incorrectly, mainly due to the lack of code samples), I pretty much realized first-hand how any small change can break something that was already slightly 'incorrect' to the point of not functioning...

1] These whitelists, indeed, include the following files:

Code: Select all

10\resources\themes\aero\!c|aero.msstyles.mui
10\resources\themes\aero\!c|aerolite.msstyles.mui
10\resources\themes\aero\shell\normalcolor\!c|shellstyle.dll.mui
10\resources\themes\aero\shell\normalcolor|shellstyle.dll
10\resources\themes\aero|aero.msstyles
10\resources\themes\aero|aerolite.msstyles
10\resources\themes|aero.theme
10\resources\themes|theme1.theme
10\resources\themes|theme2.theme
2] A Google search regarding the issue in fact returned a Pastebin.com post linked on a Turkish forum, so the issue in fact has occurred multiple times.

Post Reply