Question

I have several versions of SQL Server, used for testing, installed on my laptop (2012, 2014, 2016, and 2017). I noticed the other day that there was a folder containing prior versions of files across updates (SPs, CUs). Across all versions there is actually quite a bit of space being taken up:

(in C:\Program Files (x86)\Microsoft SQL Server\)

110\Setup Bootstrap\Log - 91.8 MB (818 files)
110\Setup Bootstrap\Update Cache - 608 MB (2,382 files)

(all folders below reside within: C:\Program Files\Microsoft SQL Server\ )

110\Setup Bootstrap\Log - 1.18 GB (3,715 files)
110\Setup Bootstrap\Update Cache - 9.58 GB (14,766 files)

120\Setup Bootstrap\Log - 569 MB (2,963 files)
120\Setup Bootstrap\Update Cache - 5.74 GB (12,797 files)

130\Setup Bootstrap\Log - 448 MB (2,808 files)
130\Setup Bootstrap\Update Cache - 3.84 GB (8,579 files)

140\Setup Bootstrap\Log - 84.3 MB (687 files)
140\Setup Bootstrap\Update Cache - 937 MB (1,571 Files)

Totals for those folders are (MB have been normalized to GB):

Folder          GB          Files
----------     -----        ------
Log             2.35        10,991
Update Cache   20.66        40,095

TOTAL          23.01        51,086

Initially I figured that it should be safe to remove the Log and Update Cache folders, but then I reckoned it best to first check to see if others have asked this and if so, what the answer(s) had been. I found this KB article:

Description of the Update Cache folder in SQL Server

which states:

What happens if you remove this folder or delete its contents?

If the Update Cache folder or some patches are removed from this folder, you can no longer uninstall an update to your SQL Server instance and then revert to an earlier update build. In that situation, Add/Remove Programs entries point to non-existing binaries, and therefore the uninstall process does not work. Therefore, Microsoft strongly encourages you to keep the folder and its contents intact.

Ok. I have no plans to ever downgrade or uninstall an SP or CU, so I should be ok, right? Well, there are other references, such as this one:

Is it safe to delete the "Update Cache" folder?

in which someone referenced the following KB article:

How to restore the missing Windows Installer cache files and resolve problems that occur during a SQL Server update

which states (emphasis added):

When you install SQL Server, the Windows Installer stores critical files in the Windows Installer Cache (default is C:\Windows\Installer). These files are required for uninstalling and updating applications.

Now, this particular article seems specific to the C:\Windows\Installer folder, and I am not talking about deleting from that folder. Still, due to the mention of the possibility of not being able to apply updates, I wanted more info first.

Has anyone removed these folders before, or at least just their contents? If so, were there any negative effects? These folders only ever increase. I just applied the "Spectre / Meltdown" patches for all four versions and the totals increased by 3.65 GB and 6,900 files (the end result being the figures shown in the chart above).

To be clear, I am not looking for should I or shouldn't I remove one or both of these folders; I am looking for can I or can't I remove one or both (without breaking anything more than the ability to uninstall / downgrade, which I already accept as a consequence).

Was it helpful?

Solution

>> NOTE FROM O.P.: While I have accepted this answer, please be aware that it is not conclusive since extensive testing has not been done. It is possible that certain types of updates, or series of updates, might have slightly different requirements, etc. But for the moment, there is no evidence or information suggesting any different behavior. <<


This testing confirms that you can delete the contents of the Log and Update Cache within your Setup Bootstrap log folder and still be able to apply future CUs, GDRs, and SPs.

Phase 1:

As highlight the version of the SQL Server is 12.0.5000 (SQL Server 2014 SP2) 1: enter image description here

Next, I delete the contents of the Log and Update Cache. See screenshot below; enter image description here

Phase 2:

Now, I run a CU (10) patch for SP2: https://www.microsoft.com/en-us/download/confirmation.aspx?id=53592 This should bring the version up to 12.00.5571 if successful. enter image description here

The only thing i see here during the setup is that it does not pick up the current version for the instance. NOTE: I have seen this in multiple scenarios which is not related to this and setup did complete successfully. Now I am more interested to see if this completes successfully :P

Phase 3

Setup did complete successfully as I was expecting and SQL has been patched. Now lets do some few checks to verify the behavior.See screenshot for successful intall and noticed highlighted at the bottom the location of the new summary txt file for the patch. enter image description here

First lets connect to SQL Server and observe the version. Per screenshot, Yes the SQL Server is now at 12.0.5571 as mentioned earlier in the test. enter image description here

Now lets finally check what happens in the Log and Update Cache folders.

enter image description here We notice that new folders and files are created for the patch that we run successfully. This is the expected behavior of a SQL setup.

It is valid to say that yes you can delete the contents of Log and Update Cache folders in Setup Bootstrap folder and be able to still perform future patching/upgrade on the SQL Server.

HTH someone :)

OTHER TIPS

Yes You Can Remove safely if no plans for uninstalling SQL Server updates also you can review my test in this blog post

https://mkelsawy.blogspot.com/2019/08/DeleteUpdateCacheFolderinSQLServer.html

Licensed under: CC-BY-SA with attribution
Not affiliated with dba.stackexchange
scroll top