VS 2005 SP1 Requires a lot of Disk Space

Quite a few beta customers have reported that the Visual Studio 2005 Service Pack 1 Beta install requires a lot of space. This is by design a feature of Windows Installer. The amount of space required to install the patch can be reduced but a lot of space is still consumed after the patch is installed.

Patches are cached in whole because when additional patches are installed or when the product is repaired while patches are already installed, those .msp files actually contain the source for those files being updated or added. Without the patch cached in whole a product repair would not have the files necessary to reinstall them. This accounts for some of the space required in the %WINDIR%Installer directory. If you download the patch from the web and opt to run the patch from the source, your web browser may cache an additional copy in your browser cache. Saving to your system drive will also require this additional space, so saving to a network location or to a different drive is recommended.

When installing any patch with any level of UI, Windows Installer also creates a copy of the patch in the user’s %TEMP% directory for the client (UI) portion of the installation. To reduce some of the space required to install the patch, install the patch silently like in the following example:

> start /wait VS80sp1-KB918525-X86-Beta-ENU.exe /quiet /L*v+ VS80sp1-KB918525-X86-Beta-ENU.log

Logging is only an option, but is recommended in case other errors do occur. Additional logging options for the native wrapper and msiexec.exe are also available. Please be sure to attach logs to any bug reports.

Additionally, because our patches utilize newer functionality on Windows 2000, Windows XP, Window Server 2003, Vista, and beyond to enable proper installation order and supersedence, a baseline cache of all files being replaced or patched is created for files installed with the RTM package, and whenever the latest service pack’s files are replaced by a small update under %WINDIR%Installer$PatchCache$ for each product being patched. Our largest SKU is Visual Studio 2005 Team System, and 2,556 files are added or updated. The main Visual Studio patch targeting all non-Express and non-TFS SKUs contains 2,935 files. On one test system, 2,291 files were copied into the RTM baseline cache requiring a total of 1.25 GB. That’s on top of the 394 MBs required to cache the VS 2005 SP1 Beta main patch in its entirety.

While not recommended, you can set a Windows Installer machine policy to disable or reduce the maximum size of the baseline cache. MaxPatchCacheSize is a DWORD value that sets the maximum percentage of disk space that can be consumed by the baseline cache. The default is 10%. Note that by disabling the baseline cache, patching products that use binary delta compression may require source media in order to install the patch.