Many customers want to do in-place upgrade of SQL Server instance to avoid the hardware cost and downtime. There are various pros and cons for doing in-place upgrade or parallel upgrade and one need to evaluate them before making a final choice. Let us see an error related to Upgrade Failure.
My client contacted me for an issue where in-place upgrade of a clustered instance was failing. I always believe that we should always start with error message while troubleshooting any issue. So, I asked for setup logs to investigate. If you are familiar with setup logs, there are two basic files, Summary.txt and Detail.txt. When I looked at Summary.txt, I found below.
Reason for failure: An error occurred for a dependency of the feature causing the setup process for the feature to fail.
Next Step: The upgrade process for SQL Server failed. To continue the upgrade process, use the following information to resolve the error. Next, uninstall SQL Server by using this command line: setup /q /action=uninstall /instanceid=MSSQLSERVER /features=SQLENGINE,FULLTEXT,REPLICATION. Then, run SQL Server Setup again.
The information which is useful here is “Reason for failure”, “Error description” and “Next Step”. By looking at above information, it’s easy to come to the conclusion that there is something wrong with SSAS resource in the cluster. When we looked into the cluster, we found that there was no Analysis services resource on the cluster. We followed the Microsoft article to create SSAS resource manually in the failover cluster manager. We created a generic service resource and added the dependency on SQL Network name and disks. After that, we could bring SSAS resource online in a cluster.
Now, as mentioned in the log, we ran below command
setup /q /action=uninstall /instanceid=MSSQLSERVER /features=SQLENGINE, FULLTEXT, REPLICATION
I think this command would have taken care of removing various leftovers caused due to last unsuccessful installation.
After this, we ran setup.exe again and upgrade went fine.
Reference: Pinal Dave (https://blog.sqlauthority.com)