[SOLVED] Win81: WU, SFC, DISM all deadlocked

ggm

Member
Joined
Sep 25, 2014
Posts
5
I'm on Win8.1. KB2971850 errored 8007003 and wouldn't install.

At first I tried "sfc /scannow". It wanted a restart. On reboot, it errors while trying to apply the changes, automatically reboots again, then undoes the partial changes before loading Windows. SFC cannot be run again, saying "There is a system repair pending which requires reboot". Further reboots do the same apply/reboot/undo.

"dism /online /cleanup-image /scanhealth" works for a while, then returns Error 3017: "The requested operation failed. A system reboot is required to roll back changes made."

Windows Update is now not showing most updates that were shown before, nor new ones that became available later except two. I tried applying one of the updates that do show (not the one that started it all). Updating just keeps TiWorker.exe accessing the HDD forever until I cancel it.

Windows Defender updates CAN be applied.

I tried both the Windows Update troubleshooter that's part of Windows, and the Microsoft utility to "reset Windows Update components". Both find errors, claim they are fixed, but show them again on the next run. Nothing is fixed.

The major error that sticks out in CBS.log is (the attached ZIP includes the other log lines during a single restart):

Code:
[SR] Error STATUS_OBJECT_PATH_NOT_FOUND doing operation CreateDirectory, [l:154{77}]"\??\C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Administrative Tools"

I tried creating this directory myself, playing with permissions, to no avail.

ProcMon's boot logging doesn't show any access to the above directory, nor does it show any of the preceding file operations in the POQ section of pending.xml.

I edited pending.xml to remove the operation that refers to the above directory. It STILL complains like before about CreateDirectory. I do see file accesses to pending.xml, so I'm not sure how that can be.

I tried SFCFix, without internet access. Ultimately the only non-0 thing it shows is:

Code:
"CBS & SFC total detected corruption count:     -29"

Can anyone suggest other things to try?
 

Attachments

Hello ggm,

Really sorry for the delay in getting back to you on this one. These are the other errors which are a concern:

Code:
2014-09-16 23:27:39, Error                 CSI    0000000b (F) E_UNEXPECTED #192# from Windows::COM::CComponentStore_IAdvancedInstallerAwareStore::Cancel(dwFlags = (RollBackAll), TxCount = 0, TxIds = [0:(null)[1]"]", Progress = NULL, Disp = (unknown enumerant 0))[gle=0x8000ffff]
2014-09-16 23:27:39, Error                 CSI    0000000c (F) E_UNEXPECTED #191# from Windows::ServicingAPI::CCSIStore_ICSIStore::CancelPendingTransactions(dwFlags = 0x00000001, Transactions = [0:(null)[1]"]", Disposition = 0)
[gle=0x8000ffff]
2014-09-16 23:27:39, Error                 CBS    Startup: Failed to initiate a rollback transaction. A restart will be performed, prior to trying again. [HRESULT = 0x8000ffff - E_UNEXPECTED]

The transactions seem to be stuck in pending, along with the COMPONENT store failing to load.

Please go navigate to C:\Windows\winsxs and copy any files with a similar name to pending.xml (e.g. pending.xml, pending.xml.bad, pending.xml_dfsadf78 etc.) to your folder on the Desktop [there may not be any, just if there are].

SFCFix Collect COMPONENTS
  1. Download SFCFix.exe (by niemiro) and save this to your Desktop.
  2. Download SFCFixScript.txt, and save this to your Desktop. Ensure that this file is named SFCFixScript.txt - do not rename it.
  3. On your Desktop, you should now see two files: SFCFix.exe and SFCFixScript.txt.
  4. Drag the file SFCFixScript.txt onto the file SFCFix.exe and release it.
  5. SFCFix will now begin to upload your CBS logfiles to our server.
  6. Upon completion, a log should be created on your Desktop: SFCFix.txt.
  7. Copy (Ctrl+C) and Paste (Ctrl+V) the contents of this into your next post for me to analyse please - put [CODE][/CODE] tags around the log to break up the text.


If all goes well, you should see that your logfiles have now been added to your thread.
 
Hey GTP, thanks!

A few days ago I tried something else. I moved pending.xml elsewhere and restarted (something I didn't want to try right away as I suspected it might cause problems if there's really ongoing servicing in an indeterminate state).

The restart cleared the pending state. Checking for updates now worked properly, with all updates listed, including KB2971850 that was the original issue. That update still wouldn't install, with the same error as before. I briefly ran thru the log and noticed an error related to a Start Menu directory that wasn't present. I created that directory and tried the update again (this time using a downloaded MSU file instead of the Windows updater). The update installed okay. I also installed the other August updates successfully.

I didn't try SFC or DISM again, but I wonder if there's any reason to bother and maybe get into more issues, now that updating is okay?

BTW, what's the pending.xml.<hex digits> files for? Backups? Leftovers? I have/had multiple such files, all with exactly the same content as pending.xml.

These errors you focused on, aren't they errors cascading from the earlier STATUS_OBJECT_PATH_NOT_FOUND on CreateDirectory?
 
Hello ggm,

Sorry the delay, I didn't have much free time last week.

BTW, what's the pending.xml.<hex digits> files for? Backups? Leftovers? I have/had multiple such files, all with exactly the same content as pending.xml.

This would most likely be a left over.

These errors you focused on, aren't they errors cascading from the earlier STATUS_OBJECT_PATH_NOT_FOUND on CreateDirectory?

From what I can make out is that SFC tried to recreate this folder but failed. When Windows updates (or SFC) applies a change to machine it uses a Kernel tool called the Kernel Transaction Manager (KTM). A little bit about KTM, The Kernel Transaction Manager (KTM) is a function that can be used to expose the kernel and user mode API’s interacting with user made transactions. A transaction is group of operations in the file (NTFS) system (TxF) and the registry system (TxR) used to compile a sequence of task to be able to perform a certain task. The KTM is set up so that either the transaction will fully complete (commit) or the transaction will erase what has been done (roll back). By the errors which I identified it look's like when KTM was trying to roll back the transaction it failed. In order to get everything working again I was going to try and find where the transaction is stuck and try to delete it, that way it would stop trying to re-apply the same transaction next time.

Alex
 
No need to be sorry, obviously you have other things to do in life. :)

I guess I won't bother with SFC or DISM for the time being as there's no need. They may work, and if not, solving their issues will be part of troubleshooting the next time they are needed.

So thanks for the taking the time!
 

Has Sysnative Forums helped you? Please consider donating to help us support the site!

Back
Top