KB2809338 – POPRAVKA: Visoka vrednost brojača "čeka na pisanje evidencije" na instanci SQL Server 2012 ili SQL Server 2014

Primenjuje se na
SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Express - duplicate (do not use) SQL Server 2014 Web - duplicate (do not use) SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Express SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2012 Enterprise Core

Simptomi

        
Pretpostavimo da ste omogućili funkciju kao što je AlwaysOn Grupe dostupnosti koja koristi grupu evidencija u instanci sistema Microsoft SQL Server 2012 ili Microsoft SQL Server 2014. U ovoj situaciji brojač čekanja za evidenciju pisanja za bafer na SQL Server instanci ima visoku vrednost. Takođe ćete primetiti visoke vrednosti za CMEMTHREAD i WRITELOG tipove čekanja u dinamičkim prikazima upravljanja (DMV). Pored toga, generišu se mini dump datoteke.

Napomena: Grupa evidencija je keš evidencije transakcija u memoriji. Ovaj keš se koristi, između ostalog: za optimizaciju čitanja evidencije tokom oporavka i operacije vraćanja u replikaciji transakcije i za funkciju AlwaysOn grupe raspoloživosti.

Uzrok

Do ovog problema dolazi zato što grupa evidencija koristi globalni pokazivač na memorijski objekat (PMO) za sve baze podataka.

Kada mnoge niti pokušavaju da zapišu evidencije pomoću grupe evidencija, sve niti moraju da čekaju pokazivač na objekat memorije što dovodi do spora opisanog u odeljku "Simptomi".

Rešenje

SQL Server 2014 servisni paket 1

Servisni paket 1 za SQL Server 2014 podrazumevano uključuje ovu ispravku i ne morate da dodajete zastavice praćenja da biste omogućili ispravku.

SQL Server 2014

Problem je rešen u RTM verziji sistema SQL Server 2014, ali i dalje morate da omogućite zastavicu praćenja T9024 i/ili 8048 da biste aktivirali ispravku. Kada omogućite ovu zastavicu praćenja, instanca SQL Server particioniše pokazivač na memorijski objekat na nivou čvora.

Beleške

  • Ako se problemi nastave čak i nakon omogućavanja zastavice praćenja T9024, možete da omogućite i zastavicu praćenja T8048 koja particioniše pokazivač na objekat memorije na nivou CPU.
  • SQL Server 2014 servisni paket 1 (SP1) uključuje ovu ispravku i ne morate da omogućite zastavicu praćenja.

          

SQL Server 2012

            
Napomena: SQL Server 2012 servisni paket 3 (SP3) uključuje ovu ispravku i ne morate da omogućite zastavicu praćenja.

Informacije o kumulativnom ažuriranju

Kumulativna ispravka 3 za SQL Server 2012 SP1

Rešenje ovog problema je prvi put objavljeno u kumulativnoj ispravci 3. Da biste dobili više informacija o nabavci ovog paketa kumulativnih ispravki za SQL Server 2012 SP1, kliknite na sledeći broj članka da biste videli članak u Microsoft bazi znanja:

2812412 Paket kumulativnih ispravki 3 za SQL Server 2012 servisni paket 1 Napomena Pošto su verzije kumulativne, svako novo izdanje ispravke sadrži sve hitne ispravke i sve bezbednosne ispravke koje su bile uključene u prethodno izdanje popravke SQL Server 2012 SP1. Preporučujemo da razmotrite primenu najnovije ispravke koja sadrži ovu hitnu ispravku. Više informacija potražite u sledećem broju članka da biste videli članak u Microsoft bazi znanja:

2772858 Izdanja SQL Server 2012 koja su objavljena nakon objavljivanja servisnog paketa 1 SQL Server 2012 Napomena: Kada primenite hitnu ispravku, morate da omogućite zastavicu praćenja T9024 da biste aktivirali ispravku. Kada omogućite ovu zastavicu praćenja, instanca SQL Server particioniše pokazivač na memorijski objekat na nivou čvora.

Napomena: Ako se problemi nastave čak i nakon omogućavanja zastavice praćenja T9024, možete da omogućite i zastavicu praćenja T8048 koja particioniše pokazivač na objekat memorije na nivou CPU.

Informacije o hitnim ispravkama

Podržana hitna ispravka je dostupna od korporacije Microsoft. Međutim, ova hitna ispravka je namenjena samo za rešavanje problema koji je opisan u ovom članku. Primenite ovu hitnu ispravku samo na sisteme koji imaju ovaj određeni problem.

Ako je hitna ispravka dostupna za preuzimanje, na vrhu ovog članka u bazi znanja postoji odeljak "Dostupno je preuzimanje hitne ispravke". Ako se ovaj odeljak ne pojavi, prosledite zahtev Microsoft korisničkoj službi i podršci da biste dobili hitnu ispravku.

Napomena: Ako se pojave dodatni problemi ili ako je potrebno rešavanje problema, možda ćete morati da kreirate zaseban zahtev za uslugom. Uobičajeni troškovi podrške primenjivaće se na dodatna pitanja podrške i probleme koji ne ispunjavaju uslove za ovu određenu hitnu ispravku. Kompletnu listu brojeva telefona Microsoft korisničke službe i podrške ili da biste kreirali zaseban zahtev za uslugom, posetite sledeću Microsoft veb lokaciju:

/contactus/?ws=support Napomena: Obrazac "Dostupno je preuzimanje hitne ispravke" prikazuje jezike za koje je hitna ispravka dostupna. Ako ne vidite svoj jezik, to je zato što hitna ispravka nije dostupna za taj jezik.

Preduslovi za SQL Server 2012

Da biste primenili ovu hitnu ispravku, morate da imate SQL Server 2012 SP1 instaliran na računaru.

Zahtev za ponovnim pokretanjem

Nakon primene ove hitne ispravke ne morate ponovo da pokrenete računar. SQL Server mora ponovo da se pokrene sa zastavicom praćenja T9024. Više informacija o tome kako da konfigurišete SQL Server pomoću zastavice za praćenje pokretanja potražite u članku "Opcije pokretanja usluge mašine baze podataka".

Informacije o datoteci

Globalna hitna ispravka ima atribute datoteka (ili novije atribute datoteka) koji su navedeni u sledećoj tabeli. Datumi i vremena za ove datoteke navedeni su u Coordinated Universal Time (UTC). Kada prikažete informacije o datoteci, one se konvertuju u lokalno vreme. Da biste pronašli razliku između UTC-a i lokalnog vremena, koristite karticu "Vremenska zona" u stavci "Datum i vreme" u Kontrolna tabla.