10

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).

6

>> 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 :)

  • Awesome! Thanks. To be clear, it might need to be stated that this conclusion, while possibly 100% correct, is based on empirical evidence of side-effect / lack of side-effect from minimal testing. Point being: more extensive testing could uncover one or more cases where the files in Update Cache were required (maybe adding SPs, or maybe some CUs, or maybe a particular order of events?). I'll still accept this as the chances are far greater that it's correct than not, but really this is a solid educated guess rather than conclusive evidence. I'd feel better with a simple warning :-). – Solomon Rutzky Jan 26 '18 at 18:20
  • Just FYI: I have accepted this answer and went ahead and updated it to post the cautionary note at the top. Thanks again. – Solomon Rutzky Mar 14 '18 at 22:31
0

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/delete-update-cache-folder-in-sql-server.html

New contributor
Mohamed k.elsawy is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.