Simptome
Să presupunem că aveți un procesor multi-core (32 nuclee sau mai multe) care rulează Microsoft SQL Server 2014 sau 2012 SP3. Atunci când activitatea de curățare a versiunilor rulează pe o reproducere secundară AlwaysOn, utilizarea procesorului se poate apropia de 100%. În plus, în jurnalul de erori SQL Server este înregistrată o eroare "Programator care nu cedează" care seamănă cu următoarea:
date time.80 Server Using 'dbghelp.dll' version '4.0.5'
date time.81 Server ***Nu se poate obține contextul firului pentru spid 0
date time.81 Server * *******************************************************************************
date time.81 Server *
date time.81 Server * ÎNCEPEȚI DUMPUL DIN STIVĂ:
dată și oră.81 Server * dată și oră SPID 2944
date time.81 Server *
date time.81 Server * Non-yielding Scheduler
date time.81 Server *
date time.81 Server * *******************************************************************************
date, time.81 Server Stack Signature for the dump is 0x000000000000015F
date time.22 Server [INFO] Identitate Început, Sfârșit | Eroare rezultat stare Speculate pregătit LazyCommit ReadOnly | Id fir pentru baza de date de tranzacții | ReadSet WriteSet ScanSet Lowpoint LogSizeRq | CommitDep TotalComm Dependent 0 Dependent 1 Dependent 2 Dependent 3 Dependent 4 Dependent 5 Dependent 6 Dependent 7 | Locația zonei |
date time.33 Server External dump process return code 0x20000001.
data time.33 Proces server 0:0:0 (0x32e8) Worker 0x0000000005B54160 pare să nu cedeze pe Scheduler 12. Ora creării firului: 13094297045567. Fir aproximativ CPU utilizat: nucleu 0 ms, utilizator 51979 ms. Utilizarea proceselor 2%. Sistem inactiv 97%. Interval: 70153 ms.
date time.45 Proces server 0:0:0 (0x32e8) Worker 0x0000000005B54160 pare să nu cedeze pe Scheduler 12. Ora creării firului: 13094297045567. Approx Thread CPU utilizat: kernel 0 ms, utilizator 103459 ms. Utilizarea proceselor 2%. Sistem inactiv 97%. Interval: 136828 ms.
dată și oră.58 Proces server 0:0:0 (0x32e8) Worker 0x0000000005B54160 pare să nu cedeze în Scheduler 12. Ora creării firului: 13094297045567. Approx Thread CPU utilizat: kernel 0 ms, utilizator 146001 ms. Utilizarea proceselor 2%. Sistem inactiv 97%. Interval: 196951 ms.
data time.70 Proces server 0:0:0 (0x32e8) Worker 0x0000000005B54160 pare să nu cedeze pe Scheduler 12. Ora creării firului: 13094297045567. Approx Thread CPU utilizat: kernel 0 ms, utilizator 193269 ms. Utilizarea proceselor 2%. Sistem inactiv 97%. Interval: 257073 ms.
Rezolvare
Această problemă a fost remediată mai întâi în următoarea actualizare cumulativă pentru SQL Server:
Actualizarea cumulativă 6 pentru SQL Server 2014 Service Pack 1
Actualizarea cumulativă 3 pentru SQL Server 2012 SP3
Actualizarea cumulativă 12 pentru SQL Server 2012 SP2
Despre actualizările cumulative pentru SQL Server
Fiecare actualizare cumulativă nouă pentru SQL Server conține toate remedierile rapide și toate remedierile de securitate care au fost incluse cu actualizarea cumulativă anterioară. Consultați cele mai recente actualizări cumulative pentru SQL Server:
Cea mai recentă actualizare cumulativă pentru SQL Server 2014
Cea mai recentă actualizare cumulativă pentru SQL Server 2012 SP3
Cea mai recentă actualizare cumulativă pentru SQL Server 2012 SP2
Soluție
Pentru a rezolva temporar această problemă, reporniți computerul care rulează instanța SQL Server.
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft care sunt listate în secțiunea „Se aplică la”.
Referințe
Aflați despre terminologia pe care o utilizează Microsoft pentru a descrie actualizările de software.