Symptomen
Stel dat u een AlwaysOn-Beschikbaarheidsgroep hebt die is geïmplementeerd via server S1 en server S2 in Microsoft SQL Server 2014. Er is een probleem aangetroffen met de primaire replica (S1), en de beschikbaarheid van een groep met de beschikbaarheid van de groep en de failover wordt gestart als de functie voor automatische failover is geconfigureerd. De beschikbaarheidsgroep blijft mogelijk in de status oplossen. De fout met een non-yield-fout kan worden weergegeven in het foutenlogboek bij de primaire replica (S1) of de secundaire replica (S2):
-
De volgende fout met een non-yield-fout kan zich voordoen op de primaire replica van de periode waarin de beschikbaarheidsgroep van het primaire Transit is voor het oplossen van het volgende:
<datum> <tijd> SPID<id> met ' Dbghelp. dll ' versie ' 4.0.5 ' <datum> <tijd> SPID> <0 id> met ' dbghelp. dll ' versie ' 4.0.5 ' <datum> <tijd> Server met ' dbghelp '. dll ' versie ' 4.0.5 ' <datum> <tijd> server * * * kan geen thread context voor SPID weergeven 0> <0 datum> <tijd> Server * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *.> <time> Server * <datum> < time> server * datum <time> <Server * BEGIN STACK dump :> <-id > <tijd> <<><Time datum > < tijd > server * <datum > < tijd > server * non-yielde timer> <0> <datum > tijd < server *> <datum > tijd Time server * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *. > <time> server stack Signature voor de dump is 0x0000000000000176> <2 datum > < time> time time server timeout voor extern dump proces 982676. < <datum> <time> Server Process 0:0:0 (0x11428) work 0x00000075CB92C160 lijkt te zijn dat de werknemer een non-yield heeft. Thread aanmaaktijd: 13011925023676. Ong gebruikgemaakt van thread processor: kernel 0 MS, gebruiker 0 MS. Proces Verbruiking 2%. Systeem idle 84%. Interval: 76880 MS.
-
De volgende fout met een non-yield-fout kan optreden op de secundaire replica als de groep met beschikbaarheid is geconfigureerd voor automatische failover en de failover-partner naar de primaire rol probeert te doorgaan:
<datum> <tijd> SPID<id> de beschikbaarheidsgroep database ' AGNAME ' verandert rollen van ' oplossing ' in ' primair ' omdat de gespiegelde sessie of beschikbaarheidsgroep mislukt vanwege synchronisatie van rollen. Dit is slechts een informatief bericht. No user action is required....<Date> <Time> Server Using 'dbghelp.dll' version '4.0.5'<Date> <Time> Server ***Unable to get thread context for spid 0<Date> <Time> Server * *******************************************************************************<Date> <Time> Server *<Date> <Time> Server * BEGIN STACK DUMP:<Date> <Time> Server * <Date> <Time> spid> <8 ID><Date> <Time> Server * Private server build.<Date> <Time> Server *<Date> <Time> Server * Non-yielding Scheduler> <2 Date> <Time> Server *<Date> <Time> Server * *******************************************************************************<Date> <Time> Server Stack Signature for the dump is 0x000000000000006D> <4 Date> <Time> Server External dump process return code 0x20000001. Extern dump proces retourneert geen fouten. <datum> <time> Server Process 0:0:0 (0x1e94-0x000000082F270160), blijkt dat het niet mogelijk is om de naam van planner 0 te verkrijgen. Thread aanmaaktijd: 13059453624681. Ong gebruikgemaakt van thread processor: kernel 0 MS, gebruiker 0 MS. Proces gebruik 3%. Systeem idle 84%. Interval: 70358 MS. <datum -> <time> Server Process 0:0:0 (0x998) work 0x00000000B3F86160 lijkt niet te worden opgeoogst op planner 2. Thread aanmaaktijd: 13059458965740. Ong gebruikgemaakt van thread processor: kernel 0 MS, gebruiker 0 MS. Proces gebruik 3%. Systeem idle 83%. Interval: 76913 MS.De datum> <tijd> Server Process 0:0:0 (0x1a64) werk 0x0000000B5E220160 lijkt te zijn dat het niet aan de oogst is voor planner 3. Thread aanmaaktijd: 13059466511951. Ong gebruikgemaakt van thread processor: kernel 0 MS, gebruiker 0 MS. Proces gebruik 3%. Systeem idle 83%. Interval: 76944 MS.
Opmerking Dit probleem treedt ook op in SQL Server 2012.
Oplossing
Wanneer u deze hotfix toepast, kan de voorwaarde voor niet-opvullen van planner worden vermeden. Dit probleem is voor het eerst opgelost in de volgende cumulatieve update van SQL Server.
Cumulatieve update 5 voor SQL Server 2014 /en-us/help/3011055
Elke nieuwe cumulatieve update voor SQL Server bevat alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige cumulatieve update. Bekijk de nieuwste cumulatieve updates voor SQL Server:
Status
Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.