An enterprise-wide rollout of Microsoft SQL Server 2008 R2 Developer Edition can result in serious headaches. On Windows XP SP3 clients, the installer may abort with a
System.ArgumentException error: Version string portion was too short or too long. The logfiles residing in
%ProgramFiles%\Microsoft SQL Server\100\Setup Bootstrap\Log reveal that the error occurs during the RunDiscoveryAction phase:
Running Action: RunDiscoveryAction
Running discovery on local machine
Error: Action "Microsoft.SqlServer.Configuration.SetupExtension.RunDiscoveryAction" threw an exception during execution.
Microsoft.SqlServer.Setup.Chainer.Workflow.ActionExecutionException: Version string portion was too short or too long. ---> System.ArgumentException: Version string portion was too short or too long.
at System.Version..ctor(String version)
at Microsoft.SqlServer.Discovery.Sql80DetectionInterface.GetFeatureProperties(String instanceName, List`1& outVal)
at Microsoft.SqlServer.Discovery.Sql80Discovery.EnumerateFeatureProperties(String instanceName, List`1& outVal)
Diagnosis indicates that most of the failures occur on clients where previously SQL Server 2000 (aka version 8) Analysis Services (SSAS) had been installed (or still is installed), confirmed by
Sql80DetectionInterface in the log file.
Some refer to KB973301 and suggest to create or modify some registry keys related to SQL Server 2000, but that might not remediate the problem.
Even uninstalling SSAS 2000 may not always help as often garbage is left which is picked up by the SQL Server 2008 R2 installer, resulting in the infamous error.
So here’s a working scenario to forcefully remove SQL Server 2000 Analysis Services by:
1) Stopping and removing the MSSQLServerOLAPService service
sc stop MSSQLServerOLAPService
sc delete MSSQLServerOLAPService
2) Deleting the local MsOLAPRepository$ share
net share MsOLAPRepository$ /d
3) Removing the SQL Server 2000 installation directory
rd /s /q "%programfiles%\Microsoft SQL Server\80"
After which SQL Server 2008 R2 installs successfully.