Unable to install updates since April with error 0x800703f1

Podge

New member
Joined
Jul 1, 2013
Posts
3
Hello, our environment has around 600 machines and we are currently trying to roll out MS Lync via SCCM. On about a third of our machines, we are having issues. The Lync install seems to go wrong during the C++ 2008 redistributable portion of the install which fails then the install backs out with an error.

After further investigation, we have found that these systems all are failing to receive updates (either from our SUS server or via the web) and the last time they received an update was around April. The same errors come up in the CBS logs on each machine with error codes of (this is repeated several times throughout the log):


2013-07-02 12:10:48, Info CBS Starting TrustedInstaller initialization.
2013-07-02 12:10:48, Info CBS Loaded Servicing Stack v6.1.7601.17592 with Core: C:\Windows\winsxs\x86_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7601.17592_none_0b0e4b4025cf4049\cbscore.dll
2013-07-02 12:10:48, Info CBS Failed to load the COMPONENTS hive from 'C:\Windows\System32\config\COMPONENTS' into registry key 'HKLM\COMPONENTS'. [HRESULT = 0x800703f1 - ERROR_BADDB]
2013-07-02 12:10:48, Info CBS Failed to load WCP DLL. [HRESULT = 0x800703f1 - ERROR_BADDB]
2013-07-02 12:10:48, Info CBS Failed to initialize the Core DLL: C:\Windows\winsxs\x86_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7601.17592_none_0b0e4b4025cf4049\cbscore.dll [HRESULT = 0x800703f1 - ERROR_BADDB]
2013-07-02 12:10:48, Info CBS Failed to initialize CBS Core. [HRESULT = 0x800703f1 - ERROR_BADDB]
2013-07-02 12:10:48, Info CBS Ending TrustedInstaller initialization.


These machines would all be running from the same image however other computers from this image have no problems. It is also happening on different hardware platforms. I have tried loading the COMPONENTS hive and received an error (cannot load components: error while loading hive).


Any help with this would be appreciated and if you would prefer I upload the CBS folder, I can (its over 5mb so if you only need the cbs.log file, let me know).

Thank you,

Chris
 
Hello Chris, and welcome to Sysnative :)

Please choose one machine for me to work on initially, and stick with that machine. If we manage to get to the bottom of this (although things don't look good with your particular problem), we can work on extending the fix to other machines later.

Please zip up the entire CBS folder, and upload it here. Then please zip up the COMPONENTS hive off one broken machine and one (ideally similar) working machine. Your error code simply means that the registry hive is corrupt. Whether this is unrepairably corrupt, or only very slightly corrupt, I have yet no idea. But the biggest problem is fixing the corruption. You've aleady found out that regedit can't load the hive, but I can do a fair amount with the raw binary. The problem isn't so much fixing the corruption if it's small as I can usually quite easily bridge over the point of corruption & redo the checksums, but it's the finding of the corruption. It can be very hard to work out exactly which part of the hive is corrupt, and if I can't find it, I can't fix it :(

But...let's not be prematurely negative! I'll take a look and let you know :)

Richard
 
Hi Richard, sorry I didn't reply earlier as I took a day off yesterday (and yes, it was good!). In the meantime, one of my colleagues in our China branch has found a fix for this. Taking the Components file (from c:\windows\system32\config) from a healthy machine and copying it to an unhealthy machine appears to fix the issue. We have tested this on a few machines and it appears to have fixed them all without issues.

For anyone looking for step by step instructions:

Step:

  1. Logon to the problem machine, and then backup the file of COMPONENTS in this folder - C:\Windows\System32\config to another folder;
  2. Copy the file of COMPONENTS in this folder - C:\Windows\System32\config from a working machine;
  3. Replace COMPONENTS by the one you copy from step 2.

Thanks again for the reply Richard and I hope this helps someone else out.

Chris
 
Hello again :)

Thanks for posting your solution, but...

....that's a really, really bad fix. Any future readers....please do NOT attempt the above! Allow me to explain why:

Podge got away with it because the machines in question were fairly similar, but he has still opened himself up to issues in the future.

That file is a registry hive. It contains data very specific to the computer in question. There is data in that hive which should it not match between the two machines will cause a boot failure. Podge got away without that problem because the two machines are quite similar (or he was just lucky), but it doesn't mean you will get away with it.

But there are far bigger problems. That hive holds a lot of details about what Windows Updates are installed: language packs, locales, GDR vs. LDR (this one is a lot more of a danger than most people realise), updates for specific hardware/drivers, etc. etc.

Something somewhere isn't going to match. And the problem is, you won't know immediately. It's when Microsoft go and update a certain file down the road that you'll get stung by it & the machine stops booting as a result or whatever. Say that the round of updates you just installed didn't update exampleDriver.sys. Well, you won't find out until a couple of months time when Microsoft does update that driver, it all goes wrong & all of those computers go down. Or more likely when Windows Update just starts erroring on a particular update.

Please...future readers, don't follow those instructions. I can fix most COMPONENTS hive corruptions in a single post, occasionally a couple of posts. And you won't be left with lingering issues. Please just create a new thread and I'll get you sorted out :)

Also, if you do replace a COMPONENTS hive and something goes wrong, it's reinstall time. I cannot help to fix it. If I did, it would take me hours of work.

@Podge: There is of course no guarantee there will be any doom and gloom. I wish you luck & that these machines survive until end of life :)

Richard
 
Hi Richard, once again thanks for the post. I figured that it wasn't the best solution but it is one that has worked for us. I am guessing the reason it is working for us is that we use a common image. As for it being a registry hive, there really was no threat of making things worse than they already were as we couldn't load the COMPONENTS hive at all and we couldn't perform updates.

If you would like, I will still upload what you requested and perhaps we can work through the real issues? I know there is a lot of system admins pulling their hair out over this issue and nobody seems to have resolved it so for their sanity i'm happy to try to work through the issue.

Regards,

Chris
 
Hi Richard, once again thanks for the post. I figured that it wasn't the best solution but it is one that has worked for us. I am guessing the reason it is working for us is that we use a common image. As for it being a registry hive, there really was no threat of making things worse than they already were as we couldn't load the COMPONENTS hive at all and we couldn't perform updates.

If you would like, I will still upload what you requested and perhaps we can work through the real issues? I know there is a lot of system admins pulling their hair out over this issue and nobody seems to have resolved it so for their sanity i'm happy to try to work through the issue.

Regards,

Chris

Well....I would argue that sometimes having something set incorrectly can be worse than not having it set at all. I would still maintain that in theory, it could make things worse.

I can see that the chance of you having problems with it is extremely slim, and that it is actually quite a good fix for you. I do not contest that. To be honest, I do not see much need for you not to use this fix.

The thing I am really concerned about is future readers. This forum is primarily aimed at home users, and there will be almost nobody in the same situation as you, where the images are similar enough. The deal is, as a home user, this fix almost always ends up disasterously, and I'm really concerned about this, as I am in large part responsible for the content on this forum, and making sure that people understand that this is a really bad fix in almost any situations.

The problem you have where the hive is completely corrupt is extremely rare, and I can fix most corruptions really quickly, safely, and without the need to resort to this.

Please understand that I have absolutely no problem with you using this fix, or indeed it being recommended to other system admins who understand what they are getting into, I am really concerned about the home users who read this thread & end up using it when they shouldn't. I hope you can understand why I really want to get the other side of the argument in here, and again, I am really sorry. Believe me, I've had a home user replace a Windows 7 COMPONENTS hive from a Windows Vista computer. This stuff really happens.

Anyway, I hope you have a great day, and this fix solves your problem permenently :)

Richard
 
Please...future readers, don't follow those instructions. I can fix most COMPONENTS hive corruptions in a single post, occasionally a couple of posts. And you won't be left with lingering issues. Please just create a new thread and I'll get you sorted out :)

Please Richard, how do I go about it.
 

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

Back
Top