Upgrading to Windows 10, version 1511 (Build 10586)

Windows 10 upgrades - bane of my life. On the other hand, they make good journal material..

The Windows 10 Upgrade application offered me an upgrade to this latest Windows version, although as it had been released in November 2015, I'm not sure why it took so long to get around to it. After the system rebooting and apparently doing some install work, the Upgrade program told me that the upgrade had failed and offered to do it again. After three attempts, I figured this was not going to work.

Regarding this problem, the web said: Download the upgrade as an ISO from Microsoft TechBench and upgrade by mounting the ISO under the current version of Windows and starting setup.exe from the install ISO.

As usual with all remedies and nostrums from the web, this did not work in my case. It seemed to do a lot more than Windows Update, but on the second reboot, I caught an almost subliminal flash of a large figure 0 in a circle before another reboot. I was presented with the usual login screen. After logging in, the following message was displayed:

   The installation failed in the SAFE_OS phase with an error during
   PREPARE_ROLLBACK operation

The upgrade setuperr.log file under c:\$Winwdows~BT\Sources\Panther contained this as the last set of messages:

   CSetDefaultBootEntry: BCD Open failed. Error: 0x00000002
   Operation failed: Set SafeOS boot entry as the default boot entry. Error: 0x80070002[gle=0x000000b7]
   Operation execution failed: 9. hr = 0x80070002[gle=0x000000b7]
   CSetupPlatformPrivate::Execute: Execution of operations queue failed, abandoning. Error: 0x80070002[gle=0x000000b7]

Hmm, an error fingering BCD again. This might be related to the cause of my problem in upgrading from Windows 7 to Windows 10. However, now, bcdedit is completely happy with the BCD system store, so the issue is something else.

The internet indicated that removing all disk drives except the Windows C: drive was a cure. I didn't fancy following that route (too many disks to unhook); also the C: drive didn't have an MBR on it as I using using grub to boot Windows 10. Of the three Windows drives in my system, C: is seen as the second disk; the first is a data only drive at D:. Based on the information that removing drives fixed the problem, I thought that maybe the Windows upgrade process was looking for the BCD store on the wrong disk, i.e. the first one it encountered. I therefore created a empty BCD store on the D: drive, using the following commands:

  mkdir d:\Boot
  bcdedit /createstore D:\Boot\BCD

Now the upgrade proceeded, the 0% indicator gradually incrementing, as files were copied, drives and features installed and configuration performed. The was a lot of disk rattling going on, so I feared there was a good chance the install was actually taking place on the wrong drive (i.e. D: not C:). However, when I could finally login to the upgraded system, I found that C: has been the upgrade target and all was good.

The new version of Windows is better; at least jump lists seem to work like they did in Windows 7.