Event ID 17141 is logged when SQL Server does not come online in Windows Failover Clustering

Applies to: Windows Server 2016 StandardWindows Server 2016 DatacenterWindows Server 2012 R2 Standard More

Symptoms


When you try to fail over a Microsoft SQL Server cluster group to a cluster node, SQL Server does not come online.
 
The SQL Server process does not generate any new SQL error log entry. However, the following entry is logged in the event log of the failover target cluster node:
 
Log Name:      ApplicationSource:        MSSQL$<SQL Cluster group name>Event ID:      17141Task Category: (2)Level:         ErrorKeywords:      ClassicDescription:Could not register Service Control Handler. Operating system error = 2310 (This shared resource does not exist.).
 
Additionally, you may notice a recorded Svchost.exe crash in the event log: 
Log Name: ApplicationSource: Application ErrorEvent ID: 1000Task Category: Application Crashing EventsLevel: ErrorKeywords: ClassicDescription:Faulting application name: svchost.exe_<serviceName>, version: <version>, time stamp: <time stamp>Faulting module name: <module name>, version: <version#>, time stamp: <time stamp>Exception code: <code>Fault offset: <number>Faulting process id: <PID>Faulting application start time: <time stamp>Faulting application path: C:\Windows\system32\svchost.exeFaulting module path: <module full path>Report Id: <GUID>Faulting package full name: Faulting package-relative application ID: 
 
The crash event may be logged several hours or even several days before the SQL Server failover failure. Also, the entry may not specifically indicate the LanManServer service. The crash might be related to other services that share the same Svchost.exe instance with LanManServer.

Cause


This problem occurs because LanManServer crashed previously and then restarted.

 

Resolution


To fix this problem, restart the LanManServer service manually. 

 

More Information


Check for shared services

To check which services may be sharing the same Svchost.exe instance, run the following command:
 
Tasklist /svc
 
If several services share the same Svchost.exe, one service crash can cause many problems for the other services, too. To isolate the offending service to its own process to reduce the effect, run the following command:
 
sc config ProfSvc type=own
 
Note To reverse the change, run the following command:
 
sc config profsvc type=share
 


Create crash dumps automatically

Important
Follow the steps in this section carefully. Serious problems might occur if you modify the registry incorrectly. Before you modify it,
back up the registry for restoration in case problems occur.

To help determine the cause of a service crash, you can create a svchost.exe registry key to generate crash dumps for cause analysis. Analyzing dumps requires debugging skill. You can use Debugging Tools for Windows (windbg) or Debug Diagnostic Tool to analyze the dumps. For Windows service crash dumps, contact Microsoft Support for additional help.

To create and set a registry key to generate crash dumps, follow these steps:

  1. In Registry Editor, locate the following subkey:

    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Windows Error Reporting\LocalDumps
  2. Under this subkey, create the following key:

    svchost.exe
  3. Under the new key, create the following values:
     
    • DumpFolder
      Type: REG_EXPAND_SZ
      Value: <path_of_stored_dumps> (for example, "c:\SvchostCrashDumps")
      Description: Specifies the location in which you want to save the dumps.
    • DumpCount
      Type : REG_DWORD
      Value: 5
      Description: The number of dumps you want to save. When this number is reached, old dumps are replaced by new ones.
    • DumpType
      Type: REG_DWORD
      Value: 2
      Description: Dump file. "2" means a full user dump.