Sümptomid
Oletagem, et kasutate Microsoft SQL Server 2008 R2 või Microsoft SQL Server 2012 binaarne suur objekt (BLOB) veergu arvutis, kus on mitu protsessorit. Päring kasutab NOLOCK vihjet. Sellisel juhul ilmneb arvutis suur CPU kasutus.Märkus.See probleem esineb tõenäolisem juhul, kui arvutisse on installitud 16 või enam protsessorit.
Põhjus
See probleem ilmneb seetõttu, et spinlock Backoff algoritm pole tõhus.
Lahendus
Kumulatiivse värskenduse teave
Kumulatiivne Update 2 SQL Server 2012 SP1 jaoks
Selle probleemi parandus anti esmakordselt välja kumulatiivne Update 2. Lisateavet selle kumulatiivse värskenduspaketi hankimiseks SQL Server 2012 SP1 kohta klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:
2790947 SQL Server 2012 hoolduspaketi 1 koondvärskenduses pakett 2Märkus. Kuna järgud on kumulatiivsed, sisaldab iga uus parandus kõiki Kiirparandusi ja kõiki turvaparandusi, mis kuulusid eelmiste SQL Server 2012 SP1 paranduse väljalaskes. Soovitame teil kaaluda kõige uuemate paranduste rakendamist, mis sisaldavad seda käigultparandust. Lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:
2772858 Pärast SQL Server 2012 hoolduspaketti 1 välja antud SQL Serveri 2012 järgud
Kumulatiivne Update 5 SQL Server 2012
Selle probleemi parandus anti esmakordselt välja kumulatiivne Update 5. Lisateavet selle kumulatiivse värskenduspaketi SQL Server 2012 hankimiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:
2777772 SQL Serveri 2012 koondvärskenduses pakett 5Märkus. Kuna järgud on kumulatiivsed, sisaldab iga uus parandus kõiki Kiirparandusi ja kõiki turvaparandusi, mis kuulusid eelmise SQL Serveri 2012 Fix väljalaskega. Soovitame teil kaaluda kõige uuemate paranduste rakendamist, mis sisaldavad seda käigultparandust. Lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:
2692828 Pärast SQL Server 2012 väljaandmist väljaantud SQL Serveri 2012 järgud
SQL Server 2008 R2 hoolduspakett SP2
Selle probleemi parandus anti esmakordselt välja kumulatiivne Update 3. Lisateavet selle kumulatiivse värskenduspaketi SQL Server 2008 R2 hoolduspaketi SP2 hankimise kohta lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:
2754552 SQL Server 2008 R2 hoolduspaketi SP2 koondvärskenduses pakett 3Märkus. Kuna järgud on kumulatiivsed, sisaldab iga uus parandus kõiki Kiirparandusi ja kõiki turvaparandusi, mis kuulusid eelmise SQL Server 2008 R2 hoolduspaketiga Service Pack 2 parandada vabastamist. Soovitame teil kaaluda kõige uuemate paranduste rakendamist, mis sisaldavad seda käigultparandust. Lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:
2730301 Pärast SQL Server 2008 R2 hoolduspaketti SP2 välja antud SQL Server 2008 R2 järgud
Olek
Microsoft on kinnitanud, et see probleem esineb jaotises "kehtib järgmiste toodete kohta" loetletud Microsofti toodetes.
Lahendus
Probleemi lahendamiseks kasutage ühte järgmistest meetoditest.
-
Vähendage veeru binaarne suur objekt suurust.
-
Eemaldage päringust NOLOCK vihje.
-
Vähendage SQL serveri kasutatava protsessorite arvu.