Server 2016 updates failing, DISM /restorehealth gives error 1734

mpupdates

Member
Joined
Jan 18, 2025
Posts
5
I've been fighting with a Server 2016 system that refuses to install the latest (Jan 2025) cumulative update. I've tried the usual sfc/dism to check things out. DISM "restorehealth" gives me an error 1734 "The array bounds are invalid". The Windows update troubleshooter says the database is bad but was unable to fix it. I tried the manual steps of removing the SoftwareDistribution and Catroot2 folders, etc but these issues are persisting.

The CBS.LOG file indicates a series of errors, all involving KB5044293 which I think was from Oct 2024, and they all look similar to this (different package #'s for each of the 30-40 entries):
Mark store corruption flag because of package: Package_3077_for_KB5044293~31bf3856ad364e35~amd64~~10.0.1.7. [HRESULT = 0x80070490 - ERROR_NOT_FOUND]

At this point I'm stuck because I don't know how to resolve that. I see the registry is littered with references to these things, especially ones in areas like:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\

But those are set with permissions that only TrustedInstaller can modify and I wouldn't be comfortable trying to take ownership of those and removing them anyway for fear of making things worse.

I'm unfamiliar with how these Sysnative tools work exactly that I've seen so much of when other people have random issues, but I figured it's worth a shot.

The ComponentScanner didn't find any errors / corruption, but I did run a fresh DISM /restorehealth and am including that CBS.zip file plus the component scanner log just to confirm it didn't find anything.
 

Attachments

Hi @mpupdates,

Welcome to Sysnative Forums!

If you haven't already, please review the posting instructions here, and attach the requested log files. Without log files, our helpers will not be able to assist, and this will slow down fixing your machine.

If logs have been already been provided, our team of volunteers will analyse the provided log files to build a fix for your system. Please be aware that this may take several days from your initial post, due to the high volume of threads that we receive.


- Sysnative Windows Update Team
 
Hello and welcome,

Follow the instructions below please.

Step 1:
WARNING! The following fix is specific to the user's system in this thread only. No one else should follow these instructions, as it could damage your system.
  • Download
    myjIXnC.png
    SFCFix and move the executable to your desktop.
  • Download the attachment SFCFix.zip and save it on your desktop.
  • Save any work you have open, and close all programs.
  • Drag the SFCFix.zip file over the SFCFix.exe executable and release it.
    1p8eDnI.gif
  • SFCFix will launch, let it complete.
  • Once done, a file will appear on your desktop, called SFCFix.txt.
  • Attach that file to your next reply.

Step 2:
Restart the machine.
Run the command sfc /scannow in an elevated commandprompt and report the result.
If it fails, copy the file C:\Windows\Logs\CBS\cbs.log to your desktop.
Zip the copied file and attach the zipped cbs.log to your next reply.
 

Attachments

I don't know how these things happen, but to get around this DISM restorehealth error, I ended up copying over the missing cat/mum files in the %systemroot%\Servicing\Packages directory. Why they disappeared from this particular server, no clue. Probably some failure doing a "StartComponentCleanup" at some point?

I'm still getting errors trying to install the latest 2025-01 server 2016 cumulative update (the latest servicing stack is already installed, of course). KB5049993 ... takes a good long time and then gives me an error (I used the wusa.exe /log option) "The referenced assembly could not be found". I wish it told me which referenced assembly that was... that would be helpful, Microsoft. I don't know why all of this has to be so cryptic on their part. Why can't they give us errors that contain enough info to figure out what the heck happened? :)

Anyway, using the Windows Update troubleshooting tool, it "helpfully" tells me about "potential Windows Update Database error detected" and then is unable to fix it. But as usual it doesn't tell you any info about why it came to that conclusion.

I guess maybe now that I've got past the issue with the component store and the DISM /restorehealth, maybe I can try clearing the update DB again (the SoftwareDistribution and catroot2 folders). I've done that already (several times now, with no change in being able to install that update), but not since restoring those missing cat/mum files.
 
Please perform the instructions I gave in message #3.
Don't do anything else.
Note that this is a first fix. We may need to do more fixes depending on the resulting log files.
 
The first steps are done and both "sfc /scannow" and "dism /online /cleanup-image /restorehealth" are reporting success, no issues.

Would it help to upload a "CBS.log" file from after I've attempted to install the standalone update file? That's the part it's struggling with now that the "restorehealth" part is fixed. I don't know if it would contain anything different if I used the MSU standalone installer, or tried again using Windows Update.
 
Please provide the following 3 files:
- The log file created at step 1.
- C:\Windows\Logs\CBS\cbs.log
- C:\Windows\Logs\DISM\dism.log
 
I didn't actually use the provided sfcfix.txt file (although I'm very appreciative of it) because while I was waiting for a reply, I found another Server 2016 system that had those files and copied them over. I used some other threads with similar issues to get an idea of what kinds of missing files, and where, are involved, so that gave me a clue. I was happy to see that the files included in the ZIP file matched the same ones (and location) that I used when copying from another system.

I'll start over here with a fresh set of diagnostics and files:
sfc /scannow
- no issues found "Windows Resource Protection did not find any integrity violations."
dism /online /cleanup-image /checkhealth (and /scanhealth and /restorehealth)
- all reported fine, no errors or fixes required. I'm attaching the cbs log just in case it's useful as DISM_CBS.zip:
checkhealth = "No component store corruption detected."
scanhealth = "No component store corruption detected."
restorehealth= "The restore operation completed successfully."

The update still fails, using the command line (CBS.log file uploaded as Update_CBS.zip):
wusa windows10.0-kb5049993-x64_6a123d9d7dba130d2a5ebfaa38ce380680ff52ed.msu

I'll attach those CBS and DISM log files as well (I cleared them out after running the previous DISM commands just to keep it isolated to only the update process).
 

Attachments

Provide the Components Hive
1. Navigate to C:\Windows\System32\Config and locate the COMPONENTS file.
2. Please copy this file to your desktop.
Note: If you receive an error that this file is in-use, simply reboot your computer and try again. Note: If you find that you need to reboot and are unable to because this is a server then try Option#2 below.
3. Right-click on this file on your desktop and select Send To...Compressed (zipped) folder. This will create a file named COMPONENTS.ZIP on your desktop.
4. The file will likely be too large to upload here so please upload to Gofile or WeTransfer and just provide the link here.


Option#2 (only if you are unable to follow the previous instructions)

  • Please download the Freeware RegBak from here: Acelogix Software - Download products
    You will find it at the bottom of the page that the link brings you to.
  • Go ahead and install this program and accept all the defaults. After the last install screen the program should open.
  • Click the New Backup button. Accept the defaults and simply click Start.
  • When it says Finished successfully, click the Close button.
  • This will bring you back to the main screen of the program. You will see one entry in this list with the date that you did it. Right-click on this line-item and select Explore Backup...
  • This will bring you into the folder where the backup was made. You should see a Users folder and a Windows folder along with a couple other files. Double-click on the Windows folder to open it. Then open the System32 folder and then config folder. You should see around 6 files in here, one of which is named COMPONENTS.
  • Copy the COMPONENTS file to your Desktop. If the COMPONENTS file does not exist, please fetch it instead from C:\Windows\System32\config\COMPONENTS.
  • Now right-click on the COMPONENTS file that is on your desktop and select Send to > Compressed (zipped) folder.
  • Then please upload the zip file (COMPONENTS.zip) to your favourite file sharing website (it will be too big to upload here). Examples of services to upload to are Gofile or WeTransfer and then just provide the link in your reply.
  • You can close any open windows you have as well as the RegBak program now.
 
I'm attaching the COMPONENTS file here. It's about 29 MB using 7-zip with max compression since I was trying to get it as compressed as possible.
 

Attachments

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

Back
Top