Installation Failures / CBS Store corruptions: Uncommon issues and troubleshooting

I wanted to discuss some of the more uncommon CBS issues that Administrators might encounter when performing installations. Basically this article is for cases where all updates fail to install on a particular client or if for example you cannot install a Service Pack.

The logs relevant in these situations no matter if client or servers are:

1. C:\windows\logs\cbs\cbs.log

2. System Event log

3. C:\windows\logs\cbs\checksur.log (this is created after you run the System Update Readiness Tool)

The first log you need to analyze is the checksur.log:

If you see entries like:

Checking Package Manifests and Catalogs

(f) CBS MUM Corrupt 0x00000000 servicing\Packages\Package_for_KB2479628_RTM~31bf3856ad364e35~amd64~~6.1.1.4.mum Expected file name Microsoft-Windows-Foundation-Package~31bf3856ad364e35~amd64~~6.1.7600.16385.mum does not match the actual file name

Unavailable repair files:

                servicing\packages\Package_for_KB2479628_RTM~31bf3856ad364e35~amd64~~6.1.1.4.mum

                servicing\packages\Package_for_KB2479628_RTM~31bf3856ad364e35~amd64~~6.1.1.4.cat

Then you need to follow instructions from:

https://blogs.technet.com/b/roplatforms/archive/2010/05/12/how-to-fix-server-manager-errors-after-installing-updates-hresult-0x800f0818-hresult-0x800b0100.aspx

IF the log is clear, you move on to the CBS Log. Here you first want to search for “, error”. This will search only for Error entries. Focus on the day the installation attempt occurred.

Now to the examples:

Ex.1: Servers or clients kept being in a pending reboot state, even after they were rebooted!

2011-03-09 09:37:36, Info CSI 00000040 Pending transaction content must be resolved, cannot begin another transaction yet

2011-03-09 09:37:36, Info CBS Failed to get transaction analysis because of pending operations. Disposition from Analyze: 0x1 [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]

2011-03-09 09:37:36, Info CBS Failed to get inventory. [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]

2011-03-09 09:37:36, Info CSI    00000041@2011/3/9:08:37:36.532 CSI Transaction @0x268ee0 destroyed

2011-03-09 09:37:36, Info CBS Failed to get inventory [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]

2011-03-09 09:37:36, Info CBS Failed to load current component state [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]

2011-03-09 09:37:36, Info CBS Failed to find or add the component family [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]

2011-03-09 09:37:36, Info CBS ComponentAnalyzerEvaluateSelfUpdate call failed. [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]

2011-03-09 09:37:36, Info CBS Failed to evaluate self update [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]

2011-03-09 09:37:36, Info CBS Failed to evaluate non detect parent update [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]

2011-03-09 09:37:36, Info CBS Failed to evaluate non parent [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]

2011-03-09 09:37:36, Info CBS failed to evaluate single applicability [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]

2011-03-09 09:37:36, Info CBS Failed to evaluate applicability [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]

2011-03-09 09:37:36, Info CBS Failed to get applicability on updates [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]

Cause:

======

The TrustedInstaller service was set to manual using Group Policy (GPO), which prevented him to start to complete pending operations.

The TrustedInstaller service changes the default service startup type of Manual (3) to Automatic (2), when it encounters an update that has to process a transaction after a restart. When the value is set back to Manual before the restart the transaction that has to be applied after restart cannot be applied. This transaction will be pended. It will block all other update installations that might come up.

Resolution:

==========

The resolution is explained in the KB below. The reason I decided to also blog about it, is because the errors above are not described in the article, and it might be a bit hard to find if you run into it.

https://support.microsoft.com/kb/968440

Changing the policy back to default fixes the issue.

Ex.2: Here no installation worked anymore.

The CBS Log was full of errors, but none that would pinpoint the cause. So looking at the system.log we find:

Faulting application name: TrustedInstaller.exe, version: 6.1.7600.16385, time stamp: 0x4a5bc4b0

Faulting module name: ntdll.dll, version: 6.1.7600.16385, time stamp: 0x4a5be02b

Exception code: 0xc00000fd

Fault offset: 0x00000000000529f0

Faulting process id: 0x1368

Faulting application start time: 0x01cbdfd0e12ca3d6

Faulting application path: C:\Windows\servicing\TrustedInstaller.exe

Faulting module path: C:\Windows\SYSTEM32\ntdll.dll

Report Id: 27f28558-4bc4-11e0-9960-005056833879

Since the TrustedInstaller is the process that handles all installations, this is crucial for any installation. It was crashing. Ideally you will run the System Update Readiness Tool and find the files you need to replace in order for the TrustedInstaller to run again, but there are cases where the Manifest and Catalog files have not yet been merged into the Checksur Tool (System Updated Readiness Tool). In this case no missing mum/cat files will be found. I`m afraid here only a IDNA Trace and debugging will reveal which mum/cat files is missing.

Resolution:

==========

Run Checksur Tool (KB947821)

Ex.3: Error 0x800f081f when trying to install SP1 for Windows 2k8 R2

Here this was the premise: Error 0x800f081f. Looking at the CBS log very carefully we can find the highlighted area:

Line 2225: 2011-03-03 08:09:42, Info CBS Failed to get session package state for package: Package_6_for_KB2482017~31bf3856ad364e35~amd64~~6.1.1.1 [HRESULT = 0x80070490 - ERROR_NOT_FOUND]

Line 2288: 2011-03-03 08:09:42, Info CBS Failed to get session package state for package: Package_7_for_KB2482017~31bf3856ad364e35~amd64~~6.1.1.1 [HRESULT = 0x80070490 - ERROR_NOT_FOUND]

Line 2411: 2011-03-03 08:09:42, Info CBS Failed to get session package state for package: Package_6_for_KB2482017~31bf3856ad364e35~amd64~~6.1.1.1 [HRESULT = 0x80070490 - ERROR_NOT_FOUND]

2011-03-02 15:36:18, Info CBS Calling client to resolve source, cannot find file 'TsUsbGD.sys' at path: \\?\C:\Windows\Servicing\Packages\amd64_tsgenericusbdriver.inf_31bf3856ad364e35_6.1.7601.17514_none_9872c8452ac8f816\TsUsbGD.sys2011-03-02 15:36:18, Error CBS Exec: Failed to pre-stage package: Package_for_KB976933~31bf3856ad364e35~amd64~cs-CZ~6.1.7601.17514, file: TsUsbGD.sys, source: \\?\C:\Windows\Servicing\Packages\amd64_tsgenericusbdriver.inf_31bf3856ad364e35_6.1.7601.17514_none_9872c8452ac8f816\TsUsbGD.sys

Cause:
======

KB976933 contained corrupted components which caused SP1 to crash on installation.

Although the checksur.log was clean and there might be other errors in the CBS Log you can remember to search for “failed to pre-stage” errors. If these appear then you have the most likely cause!

 

Resolution:

==========

We used the following command to uninstall the package that was causing the issue:

dism /online /remove-package /packagename:Package_for_KB976932~31bf3856ad364e35~amd64~~6.1.1.17514

Ex.4: 0x8007007f after installing SP1. System is in an inconsistent state. Shell Errors

This example is the case where the installation did go through (SP1 in my case) but after this different components sopped working. CBS Log shows

CBS Log:

2011-04-13 08:24:58, Info CBS SQM: Failed to start upload with file pattern: C:\Windows\servicing\sqm\*_std.sqm, flags: 0x2 [HRESULT = 0x8007007f - ERROR_PROC_NOT_FOUND]

2011-04-13 08:24:58, Info CBS SQM: Failed to start standard sample upload. [HRESULT = 0x8007007f - ERROR_PROC_NOT_FOUND]

2011-04-13 08:24:58, Info CBS SQM: Failed to start upload with file pattern: C:\Windows\servicing\sqm\*_all.sqm, flags: 0x6 [HRESULT = 0x8007007f - ERROR_PROC_NOT_FOUND]

2011-04-13 08:24:58, Info CBS SQM: Failed to start always sample upload. [HRESULT = 0x8007007f - ERROR_PROC_NOT_FOUND]

2011-04-13 08:24:58, Info CBS SQM: Warning: Failed to upload all unsent reports. [HRESULT = 0x8007007f - ERROR_PROC_NOT_FOUND]

Resolution:

==========

The solution here is not that easy.

1. Either uninstall and reinstall SP1 (this might fail)

2. Perform an inplace Upgrade

These are the more uncommon issues that might occur. Below I included several KB’s that all are solution to installation issues or CBS corruption problems:

Your computer may freeze or restart to a black screen that has a "0xc0000034" error message after you install Service Pack 1 on Windows 7 or Windows 2008 R2
https://support.microsoft.com/kb/975484

Error code 0x800f081f (CBS_E_SOURCE_MISSING)
https://blogs.technet.com/b/joscon/archive/2011/02/14/you-receive-exit-code-0x800f081f-when-attempting-to-install-sp1-for-win7-r2.aspx

Error code 0x800f0a12
https://blogs.technet.com/b/joscon/archive/2011/02/17/windows-7-2008-r2-service-pack-1-fails-with-0x800f0a12.aspx

Error code 0x8004a029
https://blogs.technet.com/b/joscon/archive/2011/02/21/windows-7-service-pack-1-fails-with-error-code-0x8004a029.aspx

Tudor Dimboianu
Platforms Core Team