One of my clients contacted me for assistance with whom I worked earlier to perform a Comprehensive Database Performance Health Check. They were trying to upgrade SQL Server 2016 to SQL Server 2017 in a clustered environment. First the upgrade passive nodes, it went fine. They failed over to an upgraded node, it also went fine. When they were trying to patch the other node, it failed with an error – There are No More Endpoints Available From The Endpoint Mapper.
I asked them to have a look at SQL Server setup logs and here are the interesting messages.
Detailed results:
Feature: Full-Text and Semantic Extractions for Search
Status: Failed
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=SQLQA /features=DQ,FULLTEXT,SQLENGINE,REPLICATION. Then, run SQL Server Setup again.
Component name: SQL Server Database Engine Services Instance Features
Component error code: 0x86D80018
Error description: There was an error to lookup cluster resource types. Error: There was a failure to call cluster code from a provider. Exception message: There are no more endpoints available from the endpoint mapper.
The same message was seen multiple times for other features as well.
WORKAROUND/SOLUTION – Endpoint Mapper
Whenever I face such a situation, I always read the message given by SQL setup very carefully and then follow it. Let’s do it again.
One of the messages is “There was an error to lookup cluster resource types. Error: There was a failure to call cluster code from a provider. Exception message: There are no more endpoints available from the endpoint mapper”. I search for it and found that this could be a generic message when there are multiple versions of SQL Server cluster resource DLLs Next Steps says below:
- 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=SQLQA /features=DQ,FULLTEXT,SQLENGINE,REPLICATION.
- Then, run SQL Server Setup again.
I looked into the registry and found something interesting. There was an entry for SQLQA.INACTIVE. when I searched on the internet about this, there were many bits of advice to run MSIEXEC /X command, clean registry, etc. but I don’t follow them unless I am pretty sure what that would do.
Finally, I went with the command asked by SQL Setup. Executed below from the command prompt. In the current situation, setup.exe referred below is available in the media root from SQL Server 2017.
setup /q /action=uninstall /instanceid=SQLQA /features=DQ,FULLTEXT,SQLENGINE,REPLICATION
Once I ran the command, we rebooted both the nodes and then ran setup again to upgrade SQL Server and it worked like a charm.
Have you ever seen such interesting errors? Please comment and share it with others.
Reference: Pinal Dave (https://blog.sqlauthority.com)
First appeared on SQL SERVER – Upgrade Failure – There are No More Endpoints Available From the Endpoint Mapper