Bug #51407 MySQL .NET Connector 6.3 Alpha 1 installer broken
Submitted: 23 Feb 2010 1:59 Modified: 5 Mar 2010 10:51
Reporter: Marcos Boyington Email Updates:
Status: Closed Impact on me:
None 
Category:Connector / NET Severity:S2 (Serious)
Version:6.3.1 OS:Windows (7)
Assigned to: Reggie Burnett CPU Architecture:Any

[23 Feb 2010 1:59] Marcos Boyington
Description:
I am having installation problems here with .NET Connector 6.3
Let me know if there’s any debugging I could help with.
Log file can be found at the following link (raw text):
http://marcos.metx.net/install.log

How to repeat:
Installed on a machine with Windows 7, Visual Studio 2010 RC and MySQL 5.0
[23 Feb 2010 8:01] Tonci Grgin
Hi Marcos and thanks for your report.

Analyzing your log led me to following:
  o TARGETDIR and ROOTDRIVE are both set to "F:\". Is this true for your system? If so, I wonder how come WindowsVolume is "C:\"...
  o What versions of VS do you have installed on box (not counting VS2010)?
  o Do you actually have .NET FW 4 listed in C:\Windows\Microsoft.NET\Framework (C:\Windows\Microsoft.NET\Framework64)?

Now, MS log analyzer says you did install from ordinary account. Can you please try installing from an account with elevated privileges and inform me of result?
[23 Feb 2010 8:02] Tonci Grgin
Results of log file analysis

Attachment: AnalysisResults.zip (application/x-zip, text), 1.88 KiB.

[23 Feb 2010 8:09] Tonci Grgin
Just noting:
  o I do not see "InstallFinalize" before trying to install assemblies in GAC
  o Drive C: or F: might be out of free space
  o TEMP folder might be out of space/cluttered with garbage
  o Some application might held lock on files/folders
  o Account might not have had enough privileges to complete the operations needed
  o Some of the destination folders might be encrypted
  o F: might be a removable drive

Macos, those are the common problems associated with error 1603 (which is generic in nature). Can any of this be true for your system?
[23 Feb 2010 17:32] Marcos Boyington
Tonci: Wow, you're good! Heh.  But still no luck.

So good eye catching the F: bit, that's really strange.  I do have an F: drive, but it's neither my root drive nor my system drive.
I unmounted the drive, but still no luck:

http://marcos.metx.net/install2.log

(Also, ran from an Administrator command line, as you suggested)

As for your questions:
VS 2010RC + VS 2008 + VS 2005

And I have both (I'm on a 64-bit Win 7):
C:\Windows\Microsoft.NET\Framework\v4.0.30128
C:\Windows\Microsoft.NET\Framework\v4.0.30128
[23 Feb 2010 18:45] Marcos Boyington
Tested this out on 2 more machines (Vista 32), failed as well.  Can include those logs if you'd like.
[23 Feb 2010 19:07] Marcos Boyington
The only thing I can see in common between the 3 machines:

* They all had .NET Connector 6.2.2
* They all have VS 2k8 + VS 2010 RC
[24 Feb 2010 14:38] a z
Same problem, connector rollingbacks almost in the end.

XP + VS2008+ VS2010RC1
[26 Feb 2010 7:12] luis vela
Hi, 
I have the same problem, installer dosnt work, im running windows 7 and vs 2010RC.
i tried re installing framwork 4.0 rc, reinstalling vs 2010rc without results.

Pls help us to fix it.

Thanks
[28 Feb 2010 19:44] Reggie Burnett
Guys

 We are unable to reproduce this so far.  Can those having trouble try installing with custom option and just try vs2010 config (no vs2008).  Try leaving out web providers, etc, etc.  Maybe you guys can help me identify what is wrong.
[1 Mar 2010 12:07] Tonci Grgin
Bug#51604 was marked as duplicate of this report.

I plan to install VS2010Pro this week and try reproducing this problem.
[1 Mar 2010 16:23] Marcos Boyington
Uninstalled VS 2008, still got the issue.
Tried running the Connector installer and only installing core components, still got the issue.

If you guys would like me to debug the issue, just direct me to the installer sources and I'll be happy to oblige.

Action 8:21:18: ManagedDataInstall. Registering data provider in machine.config
CAQuietExec:  Microsoft (R) .NET Framework Installation utility Version 2.0.50727.3053
CAQuietExec:  Copyright (c) Microsoft Corporation.  All rights reserved.
CAQuietExec:  
CAQuietExec:  The installation failed, and the rollback has been performed.
CAQuietExec:  Error 0xffffffff: Command line returned an error.
CAQuietExec:  Error 0xffffffff: CAQuietExec Failed
Action ended 8:21:20: InstallFinalize. Return value 3.
[2 Mar 2010 14:46] Andrei Yegorov
Got the same problem when trying to upgrade the connector from 6.2.2 to 6.3.1

I have windows 7 64-bit with VS 2008 and 2010 RC,
I tried 6.3.0 and it also rollbacks before finishing installation.

I attach the MSI log file.
[2 Mar 2010 16:15] Marcos Boyington
Same here with 6.3.1, still no luck.
This is on a Vista 32, with only VS2010 RC installed (VS 2k8 was installed, but I removed it).
This is also with all installation options disabled, only the core components:

Action 8:09:19: ManagedDataInstall. Registering data provider in machine.config
CAQuietExec:  Microsoft (R) .NET Framework Installation utility Version 2.0.50727.3053
CAQuietExec:  Copyright (c) Microsoft Corporation.  All rights reserved.
CAQuietExec:  
CAQuietExec:  The installation failed, and the rollback has been performed.
CAQuietExec:  Error 0xffffffff: Command line returned an error.
CAQuietExec:  Error 0xffffffff: CAQuietExec Failed
Action ended 8:09:23: InstallFinalize. Return value 3.
Action 8:09:23: Rollback. Rolling back action:
Rollback: Registering data provider in machine.config
Rollback: Copying new files
Rollback: Creating folders
Rollback: Updating component registration
Action ended 8:09:24: INSTALL. Return value 3.
[3 Mar 2010 2:27] Marcos Boyington
Found what the issue was on one of the machines - it seems to be related to having had an older version of the .NET Framework 4.0 installed

For a reference, see this page (Krishna Vaishnav's comment):

http://social.msdn.microsoft.com/Forums/en/dublin/thread/8c39e04e-17a3-4cfc-a6d8-c7ab64e1b...

Of course, update accordingly for the version installed with VS2010 RC (v4.0.30128).

On one of the other machines, though, I'm getting a different problem:

System.NullReferenceException: Object reference not set to an instance of an object.

   at MySql.Web.dll!MySql.Web.Security.CustomInstaller.AddDefaultConnectionString(System.Xml.XmlDocument doc = {System.Xml.DebuggerDisplayXmlNodeProxy}) + 0x109 bytes	
   at MySql.Web.dll!MySql.Web.Security.CustomInstaller.AddProviderToMachineConfigInDir(string path = "C:\\Windows\\Microsoft.NET\\Framework\\v1.1.4322\\CONFIG") + 0xb5 bytes	
   at MySql.Web.dll!MySql.Web.Security.CustomInstaller.UpdateMachineConfigs(string rootPath = "C:\\Windows\\Microsoft.NET\\Framework\\", bool add = true) + 0xa4 bytes	
   at MySql.Web.dll!MySql.Web.Security.CustomInstaller.AddProviderToMachineConfig() + 0x8f bytes	
   at MySql.Web.dll!MySql.Web.Security.CustomInstaller.Install(System.Collections.IDictionary stateSaver = Count = 2) + 0x2d bytes	
   at System.Configuration.Install.Installer.Install(IDictionary stateSaver)
   at System.Configuration.Install.AssemblyInstaller.Install(IDictionary savedState)
   at System.Configuration.Install.Installer.Install(IDictionary stateSaver)
   at System.Configuration.Install.TransactedInstaller.Install(IDictionary savedState)
[3 Mar 2010 2:40] Marcos Boyington
I believe I found the problem (I don't have PDB for the MySql.Web file), this is an educated guess.  In Install.cs:

142		
            XmlNodeList nodes = doc.GetElementsByTagName("connectionStrings");
143		
            XmlNode connectionStringList = nodes[0];

There is no connectionStrings section in .NET 1.0.

Now as to why this function is being called for the .NET 1.0 machine.config, is beyond my knowledge.   But this should make it possible to fix the bug.
[3 Mar 2010 17:30] Marcos Boyington
So, the problem seems to be that all directories in these directories:
C:/Windows/Microsoft.NET/Framework
C:/Windows/Microsoft.NET/Framework64

Are enumerated, and then a check is made if a CONFIG directory is present.  If it is, then an attempt is made to add to the config file.

So, if you want a quick workaround, rename the CONFIG directory to a dummy name (like CONFIG_) in any directory which isn't supported, such as:

C:\Windows\Microsoft.NET\Framework\v1.1.4322\CONFIG
[3 Mar 2010 19:00] Andrei Yegorov
That did the trick for me. 
Thanks a bunch, Marcos!
[4 Mar 2010 16:33] Roberto Yglesias
This CONFIG rename worked for me as well, I am running XP + VS2010. Will this be fixed for the GA release?
[4 Mar 2010 21:34] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/102374

849 Reggie Burnett	2010-03-04
      - fixed installer problem when .NET 1.1 was present (bug #51407)
[4 Mar 2010 21:35] Reggie Burnett
fixed in 6.3.2
[5 Mar 2010 10:51] Tony Bedford
An entry has been added to the 6.3.2 changelog:

MySQL Connector/NET 6.3.1 failed to install.
[8 Mar 2010 21:29] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/102624

850 Reggie Burnett	2010-03-08
      - fixed installer problem when .NET 1.1 was present (bug #51407)
[10 Mar 2010 7:50] Tonci Grgin
Bug#51902 was marked as duplicate of this report.
[14 Apr 2010 20:38] Wijnand Nagelhout
I had the same problem with the old VS2010RC.
I renamed the config in the "Old_v4.0.30128" dir from the Framework.
[20 May 2010 3:54] new colin
there is no config directory in C:\Windows\Microsoft.NET\Framework\v1.1.4322\
how to rename? add one?
[25 May 2010 20:56] Tristan Irwin
I also encountered the same problem as Wijnand Nagelhout

Renaming the 'Config' folders in any Old_v4.0.XXXXX directories allowed me to install properly.
[17 Jun 2010 5:51] Tonci Grgin
Bug#53399 was marked as duplicate of this report.
[28 Jun 2010 12:43] Sarmaad Amin
This is also worked for me.

"C:\Windows\Microsoft.NET\Framework\Old_v4.0.30128"

renaming "config" folder to something else.

interesting....
[17 Feb 2012 13:48] LUCIO PELIZER
Hi, my name is Lucio Pelizer.
I have a problem to reinstall an earlier version of
MySql Connector. Net Had version 6.0.7 and tried to install version 5.2.7, but it was not possible. I tried to remove the uninstaller for the current version of Windows 7 and also by removing the service Regedit.

How can I do to remove, in fact, the version 6.0.7 and install an older version?

grateful

lucpelizer@gmail.com