Bug #80752 Installer uses indiscriminate amount of disk space
Submitted: 15 Mar 2016 15:31 Modified: 4 Apr 2016 12:51
Reporter: Peter Laursen (Basic Quality Contributor) Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL for Windows: Installer Severity:S3 (Non-critical)
Version:any OS:Microsoft Windows
Assigned to: CPU Architecture:Any

[15 Mar 2016 15:31] Peter Laursen
Description:
The MySQL Installer for Windows seems to have has a (disk) cache of 'plain' .msi installers of everything that has been possible to have installed by the installer.  It grows forever and old file are not deleted. 

On my Win10 partition there are now 1GB+ of old files that will never be used. This Win10 partition was started by end of September 2015 only. 1 GB in 6 months ==is_equivalent_to==> 10 GB in 5 years (what is a reasonable expected lifetime of a Windows system partition IMO).  

This indiscriminate disk usage for storing unused and outdated files is unacceptable. 

How to repeat:
C:\ProgramData\MySQL\MySQL Installer for Windows\Product Cache>dir
 Volume in drive C is Win10
 Volume Serial Number is 0805-A57A

 Directory of C:\ProgramData\MySQL\MySQL Installer for Windows\Product Cache

15-03-2016  15:54    <DIR>          .
15-03-2016  15:54    <DIR>          ..
30-10-2015  01:38               911 BUNDLE
22-09-2015  18:52        41.164.800 mysql-5.5.46-win32.msi
22-09-2015  18:52        43.201.024 mysql-5.5.46-winx64.msi
08-12-2015  11:30        43.205.120 mysql-5.5.47-winx64.msi
07-02-2016  11:14        43.209.216 mysql-5.5.48-winx64.msi
22-09-2015  03:33        36.531.712 mysql-5.6.27-win32.msi
22-09-2015  03:33        38.626.304 mysql-5.6.27-winx64.msi
08-12-2015  11:30        38.391.808 mysql-5.6.28-winx64.msi
07-02-2016  11:14        38.477.824 mysql-5.6.29-winx64.msi
08-12-2015  11:31        95.817.728 mysql-5.7.10-winx64.msi
07-02-2016  11:14        96.256.000 mysql-5.7.11-winx64.msi
13-10-2015  00:44        91.619.328 mysql-5.7.9-win32.msi
13-10-2015  00:44        95.576.064 mysql-5.7.9-winx64.msi
09-06-2015  04:03         8.824.832 mysql-connector-c++-1.1.6-win32.msi
09-06-2015  04:03         9.303.040 mysql-connector-c++-1.1.6-winx64.msi
27-02-2015  05:07        19.984.896 mysql-connector-c-6.1.6-win32.msi
27-02-2015  05:07        20.808.192 mysql-connector-c-6.1.6-winx64.msi
26-06-2015  05:24         6.591.488 mysql-connector-java-gpl-5.1.36.msi
07-10-2015  05:40         6.664.704 mysql-connector-java-gpl-5.1.37.msi
15-07-2015  19:06        12.177.408 mysql-connector-net-6.9.7.msi
15-10-2015  09:47        12.607.488 mysql-connector-net-6.9.8.msi
19-06-2014  18:35         7.335.936 mysql-connector-odbc-5.3.4-win32.msi
19-06-2014  18:35         7.552.512 mysql-connector-odbc-5.3.4-winx64.msi
07-04-2015  21:56           142.336 mysql-connector-python-2.0.4-py2.7.msi
07-04-2015  21:56           142.336 mysql-connector-python-2.0.4-py3.3.msi
07-04-2015  21:56           142.336 mysql-connector-python-2.0.4-py3.4.msi
22-09-2015  05:16         1.515.520 mysql-connector-python-2.1.3-py2.7-win32.msi
22-09-2015  05:16         1.566.208 mysql-connector-python-2.1.3-py2.7-winx64.msi
22-09-2015  05:16         1.516.032 mysql-connector-python-2.1.3-py3.3-win32.msi
22-09-2015  05:16         1.566.208 mysql-connector-python-2.1.3-py3.3-winx64.msi
22-09-2015  05:16         1.516.032 mysql-connector-python-2.1.3-py3.4-win32.msi
22-09-2015  05:16         1.566.208 mysql-connector-python-2.1.3-py3.4-winx64.msi
22-09-2015  19:00        28.712.960 mysql-documents-5.5.46.msi
22-09-2015  03:40        33.554.432 mysql-documents-5.6.27.msi
13-10-2015  00:54        33.558.528 mysql-documents-5.7.9.msi
22-09-2015  19:06           827.392 mysql-examples-5.5.46.msi
22-09-2015  03:47           827.392 mysql-examples-5.6.27.msi
13-10-2015  01:00           856.064 mysql-examples-5.7.9.msi
06-03-2015  04:25         1.617.920 mysql-for-excel-1.3.4.msi
23-10-2015  02:16         1.695.744 mysql-for-excel-1.3.5.msi
25-07-2015  06:08         9.469.952 mysql-for-visualstudio-1.2.4.msi
30-10-2015  01:20         9.805.824 mysql-for-visualstudio-1.2.5.msi
04-09-2014  11:05         1.560.576 mysql-notifier-1.1.6.msi
16-09-2015  04:00         4.677.632 mysql-utilities-1.5.6-win32.msi
16-09-2015  04:00         4.837.376 mysql-utilities-1.5.6-winx64.msi
17-06-2015  02:09        24.117.248 mysql-workbench-community-6.3.4-win32.msi
17-06-2015  02:09        27.025.408 mysql-workbench-community-6.3.4-winx64.msi
18-10-2015  12:09        25.468.928 mysql-workbench-community-6.3.5-win32.msi
18-10-2015  12:09        28.418.048 mysql-workbench-community-6.3.5-winx64.msi
15-12-2015  15:58        28.426.240 mysql-workbench-community-6.3.6-winx64.msi
              50 File(s)  1.089.059.215 bytes
               2 Dir(s)  46.888.325.120 bytes free

C:\ProgramData\MySQL\MySQL Installer for Windows\Product Cache>

Some of those files were never used actually (for instance I have never installed the J-, C++ nor Python connector and also not MySQL for Excel) 

Suggested fix:
Clean up old and unused files.  If the Installer needs local access to currently installed program and connector versions (in order to 'repair' or whatever) that is OK, but keep only those it needs.

Alternatively provide an interface in the Installer for user to do manually.
[15 Mar 2016 15:36] Peter Laursen
corrected synopsis.
[15 Mar 2016 16:43] Miguel Solorzano
Thank you for the bug report.

C:\ProgramData\MySQL\MySQL Installer for Windows\Product Cache>ls -la -h
total 700M
drw-rw-rw-  2 miguel 0  16K 2015-11-17 18:14 .
drw-rw-rw-  5 miguel 0 4,0K 2016-03-08 18:21 ..
-rw-rw-rw-  1 miguel 0  911 2015-10-29 16:38 BUNDLE
-rw-rw-rw-  1 miguel 0  35M 2015-07-15 05:27 mysql-5.6.26-win32.msi
-rw-rw-rw-  1 miguel 0  37M 2015-07-15 05:27 mysql-5.6.26-winx64.msi
-rw-rw-rw-  1 miguel 0  35M 2015-09-21 17:33 mysql-5.6.27-win32.msi
-rw-rw-rw-  1 miguel 0  37M 2015-09-21 17:33 mysql-5.6.27-winx64.msi
-rw-rw-rw-  1 miguel 0  88M 2015-10-12 14:44 mysql-5.7.9-win32.msi
-rw-rw-rw-  1 miguel 0  92M 2015-10-12 14:44 mysql-5.7.9-winx64.msi
-rw-rw-rw-  1 miguel 0  20M 2015-02-26 20:07 mysql-connector-c-6.1.6-win32.msi
-rw-rw-rw-  1 miguel 0  20M 2015-02-26 20:07 mysql-connector-c-6.1.6-winx64.msi
-rw-rw-rw-  1 miguel 0 8,5M 2015-06-08 19:03 mysql-connector-c++-1.1.6-win32.msi
-rw-rw-rw-  1 miguel 0 8,9M 2015-06-08 19:03 mysql-connector-c++-1.1.6-winx64.msi
-rw-rw-rw-  1 miguel 0 6,3M 2015-06-25 20:24 mysql-connector-java-gpl-5.1.36.msi
-rw-rw-rw-  1 miguel 0 6,4M 2015-10-06 19:40 mysql-connector-java-gpl-5.1.37.msi
-rw-rw-rw-  1 miguel 0  12M 2015-02-24 02:45 mysql-connector-net-6.9.6.msi
-rw-rw-rw-  1 miguel 0  12M 2015-07-15 09:06 mysql-connector-net-6.9.7.msi
-rw-rw-rw-  1 miguel 0  13M 2015-10-14 23:47 mysql-connector-net-6.9.8.msi
-rw-rw-rw-  1 miguel 0 7,0M 2014-06-19 09:35 mysql-connector-odbc-5.3.4-win32.msi
-rw-rw-rw-  1 miguel 0 7,3M 2014-06-19 09:35 mysql-connector-odbc-5.3.4-winx64.msi
-rw-rw-rw-  1 miguel 0 139K 2015-04-07 12:56 mysql-connector-python-2.0.4-py2.7.msi
-rw-rw-rw-  1 miguel 0 139K 2015-04-07 12:56 mysql-connector-python-2.0.4-py3.3.msi
-rw-rw-rw-  1 miguel 0 139K 2015-04-07 12:56 mysql-connector-python-2.0.4-py3.4.msi
-rw-rw-rw-  1 miguel 0 1,5M 2015-09-21 19:16 mysql-connector-python-2.1.3-py2.7-win32.msi
-rw-rw-rw-  1 miguel 0 1,5M 2015-09-21 19:16 mysql-connector-python-2.1.3-py2.7-winx64.msi
-rw-rw-rw-  1 miguel 0 1,5M 2015-09-21 19:16 mysql-connector-python-2.1.3-py3.3-win32.msi
-rw-rw-rw-  1 miguel 0 1,5M 2015-09-21 19:16 mysql-connector-python-2.1.3-py3.3-winx64.msi
-rw-rw-rw-  1 miguel 0 1,5M 2015-09-21 19:16 mysql-connector-python-2.1.3-py3.4-win32.msi
-rw-rw-rw-  1 miguel 0 1,5M 2015-09-21 19:16 mysql-connector-python-2.1.3-py3.4-winx64.msi
-rw-rw-rw-  1 miguel 0  32M 2015-07-15 05:39 mysql-documents-5.6.26.msi
-rw-rw-rw-  1 miguel 0  32M 2015-09-21 17:40 mysql-documents-5.6.27.msi
-rw-rw-rw-  1 miguel 0  33M 2015-10-12 14:54 mysql-documents-5.7.9.msi
-rw-rw-rw-  1 miguel 0 808K 2015-07-15 05:40 mysql-examples-5.6.26.msi
-rw-rw-rw-  1 miguel 0 808K 2015-09-21 17:47 mysql-examples-5.6.27.msi
-rw-rw-rw-  1 miguel 0 836K 2015-10-12 15:00 mysql-examples-5.7.9.msi
-rw-rw-rw-  1 miguel 0 1,6M 2015-03-05 19:25 mysql-for-excel-1.3.4.msi
-rw-rw-rw-  1 miguel 0 1,7M 2015-10-22 17:16 mysql-for-excel-1.3.5.msi
-rw-rw-rw-  1 miguel 0  11M 2014-07-25 19:19 mysql-for-visualstudio-1.2.3.msi
-rw-rw-rw-  1 miguel 0 9,1M 2015-07-24 20:08 mysql-for-visualstudio-1.2.4.msi
-rw-rw-rw-  1 miguel 0 9,4M 2015-10-29 16:20 mysql-for-visualstudio-1.2.5.msi
-rw-rw-rw-  1 miguel 0 1,5M 2014-09-04 02:05 mysql-notifier-1.1.6.msi
-rw-rw-rw-  1 miguel 0 4,5M 2015-02-27 07:57 mysql-utilities-1.5.4-win32.msi
-rw-rw-rw-  1 miguel 0 4,7M 2015-02-27 07:57 mysql-utilities-1.5.4-winx64.msi
-rw-rw-rw-  1 miguel 0 4,5M 2015-09-15 18:00 mysql-utilities-1.5.6-win32.msi
-rw-rw-rw-  1 miguel 0 4,7M 2015-09-15 18:00 mysql-utilities-1.5.6-winx64.msi
-rw-rw-rw-  1 miguel 0  23M 2015-06-16 17:09 mysql-workbench-community-6.3.4-win32.msi
-rw-rw-rw-  1 miguel 0  26M 2015-06-16 17:09 mysql-workbench-community-6.3.4-winx64.msi
-rw-rw-rw-  1 miguel 0  25M 2015-10-18 03:09 mysql-workbench-community-6.3.5-win32.msi
-rw-rw-rw-  1 miguel 0  28M 2015-10-18 03:09 mysql-workbench-community-6.3.5-winx64.msi

C:\ProgramData\MySQL\MySQL Installer for Windows\Product Cache>
[4 Apr 2016 12:51] Peter Laursen
But it has no "repair" option - see http://bugs.mysql.com/bug.php?id=74544.

So why keep the files at all?
[12 May 2016 17:39] Javier Rivera Zavala
Posted by developer:
 
This is not a bug, however it would be treated as an enhancement request.
[15 Aug 2016 16:53] Javier Rivera Zavala
Posted by developer:
 
The severity is being downgraded to 3 because this problem has a workaround and its very simple, you just need to open the product cache folder in the windows explorer ("%Programdata%\MySQL\MySQL Installer for Windows\Product Cache\") and select which files are to be deleted or delete the whole "Product Cache" folder.