Bug #21506 Server unInstall removes user created objects without warning (br 1715)
Submitted: 8 Aug 2006 13:50 Modified: 3 Apr 2007 21:14
Reporter: Carsten Segieth Email Updates:
Status: Closed Impact on me:
Category:MySQL Enterprise Monitor: Installing Severity:S3 (Non-critical)
Version:0.5.19 - 0.7.34 OS:
Assigned to: BitRock Merlin CPU Architecture:Any
Tags: default button, uninstall

[8 Aug 2006 13:50] Carsten Segieth
The Merlin Server unInstall removes ALL files and directories below the installation directory without any notice about this.

So it will happen that in case of a planned update installation also the /mysql/data directory is removed. Also all other files that were created after the installation are removed.

How to repeat:
- install 0.5.19
- create a file inside the installation directory
- uninstall

Suggested fix:
- leave all user created objects
- or at least ask the user and inform him that then also the mysql/data dir and the log dirs of Apache and Apache Tomcat are removed.
[16 Aug 2006 17:44] Carsten Segieth
test failed with 0.5.23 on Windows:

The new question asks whether also the user created objects shall be removed. I answered 'NEIN' (= no), but all logs and database files were removed.
[17 Aug 2006 13:03] Carsten Segieth
- in progress (I could not change the status field of this bug)

- problem still exists with 0.5.24, tested on Win2003 and XP, with the strange behaviour, that e.g. the apache*/logs dirs were removed, but the mysql/data directory reains when 'NO' is answered on Win2003. 

end of a recent unInstall.log:
Uninstalling C:\Documents and Settings\All Users\Start Menu\Programs\MySQL Network...
Invalid action ruleList
Uninstallation completed

- request to fix it sent to BitRock
- BitRock support case 1319
[21 Sep 2006 10:27] Carsten Segieth
seen with 0.6.19 on Suse 9.3:

Even the question only asks to remove 'data' and 'logs' all files and directories below the installation dir, except files in the installdir itself, are removed.

Either the question needs to warn that 'everything' (and not only data and logs) below the installdir is removed or the unInstall should only remove what the installer created. 

Or, browse the tree and show a list of all files / dirs that shall be removed for confirmation.
[22 Sep 2006 20:07] Keith Russell
Bitrock builds > 6.19 should have this corrected.
[11 Oct 2006 12:57] Carsten Segieth
still present with 0.6.33 - see also my comment from Sept 21 above.

How to reproduce:

Have user created files (I had a copy of the my.ini file) in the tree and watch that they are removed - although I only said 'yes' to remove 'log and data files' whan I was asked.

It seems that ALL files are removed when this question is answered with YES.
[18 Oct 2006 15:56] Carsten Segieth
Using uninstall 0.7.4 the directory, where I installed to, was removed, including all files / directories in that where already present BEFORE! the installation. I've answered the '? remove log+data' question with YES.

It looks for me that not the installed files are logged to be removed at uninstall, but the whole directory tree is cleaned from a script?
[19 Oct 2006 14:45] Keith Russell
Reported as corrected by Bitrock in build versions >= 7.5
[2 Nov 2006 10:19] Carsten Segieth
tested with 0.7.18 on Windows: I answered the 'Remove log+data' question with YES and all files including the installation directory were removed, including all files that were not created by the installer (regardless whether they were presente befor installing or created after installing).
[2 Nov 2006 10:32] Carsten Segieth
I see that my testing environment with some test data inside the dir where I install to is not a case which will happen so often, so I would accept the behaviour to remove *all data* including/below the installation dir.

But then the text of the question needs to be changed to something like show below (please correct my 'not perfect' English, if needed):

Do you like to remove all data, logs and other files below '<INSTALLATIONDIR>'?

Caution, this will remove all user created files, even if they were present before installing MySQL Network Monitoring and Advisory Service, including the data files of the bundled MySQL server. You will *not* be able to undo this action. Do not use this option in case of a planned update install!

Do you really want to remove ALL data and log files inside '<INSTALLDIR>'?

(YES - NO)
... with a default on 'NO' !
[8 Nov 2006 9:33] Carsten Segieth
0.7.27 - still all files are removed when answering the "remove 'data + log' ?" question with YES.
[9 Nov 2006 23:19] BitRock Merlin
This issue has been fixed in the server and agent installer builds we provided on 11/09.

We look forward to your feedback.

Best regards,

BitRock Support
[10 Nov 2006 15:05] Keith Russell
Reported as resolved by Bitrock in ver => 7.29
[10 Nov 2006 15:24] Carsten Segieth
with 0.7.30 the new question is implemented, but:

- the default (focus) is on the 'Yes' button, it should be on the 'No' button to prevent users from accidently choose 'Yes' just by clicking on ENTER.
- there is a wording mistake. The first sentence is 
  "Do you also to remove ..." and it should be "Do you also want to remove ..."
[10 Nov 2006 15:24] Carsten Segieth
new question

Attachment: bug#uninstall_question_with_wording_problems.jpg (image/jpeg, text), 21.15 KiB.

[10 Nov 2006 15:29] Carsten Segieth
the unInstall removed all directories below, but left the installation dir itself with some user created files in. After checking the wording of the question this is the action described in the message box --> OK.
[10 Nov 2006 22:48] Keith Russell
Reported as resolved by Bitrock in ver => 7.32
[13 Nov 2006 16:53] Carsten Segieth
downgraded to P3 for the remaining change of the default button where the focus is on and also changed to 'To be fixed later'.
[3 Apr 2007 12:12] Carsten Segieth
now marked as 'solved', as only the remaining change of the default button is open (see new created bug#27609 - server unInstall - default button of "remove all data" question should be 'NO').
[3 Apr 2007 21:14] Peter Lavin
Added to the changelog.