Simptomi
Kada u sustavu Microsoft SQL Server 2014 pokušate istovremeno izvršiti više velikih upita, neki bi upiti mogli pričekati RESOURCE_SEMAPHORE_QUERY_COMPILE. Može se izvršiti samo jedan upit kojemu je za kompiliranje potrebno više memorije od praga velikog pristupnika (što je navedeno u izlazu naredbe DBCC MEMORYSTATUS), čak i ako poslužitelj ima dovoljno slobodne memorije.
Napomena: To je očekivano ponašanje. No u sustavima velikih serija, kao što je skladište podataka, time možete smanjiti performanse istodobnog izvršavanja mnogih upita.
Rješenje
Informacije o kumulativnom ažuriranju
Problem je prvi put riješen u sljedećem kumulativnom ažuriranju sustava SQL Server.
Preporuka: instalirajte najnovije kumulativno ažuriranje za SQL Server
Svako novo kumulativno ažuriranje za SQL Server sadrži sve hitne popravke i sigurnosne popravke koji su obuhvaćeni prethodnim kumulativnim ažuriranjem. Preporučujemo da preuzmete i instalirate najnovija kumulativna ažuriranja za SQL Server:
- Najnovije kumulativno ažuriranje za SQL Server 2014 SP1
- Najnovije kumulativno ažuriranje za SQL Server 2014
Ovaj hitni popravak uvodi novu zastavicu praćenja -T 6498. Ta zastavica praćenja omogućuje da više od jedne velike kompilacije upita dobije pristup velikom pristupniku kada je dostupno dovoljno memorije. Temelji se na 80 posto ciljne memorije SQL Server i omogućuje jedno veliko kompiliranje upita na 25 gigabajta (GB) memorije. To omogućuje, primjerice, dvije velike kompilacije upita na računalu s ciljnom memorijom od 64 GB.
Kada primijenite ovaj hitni popravak, morate omogućiti zastavicu praćenja -T 6498 da biste omogućili novo ponašanje.
Napomena: ako omogućite zastavicu praćenja pomoću naredbe DBCC TRACEON, ne morate ponovno pokrenuti poslužitelj da bi oznaka praćenja stupila na snagu. No primjena nove velike konfiguracije pristupnika može potrajati 10 sekundi.
Microsoft nudi podržani hitni popravak. No namjena ovog hitnog popravka jest samo za rješavanje problema opisanog u ovom članku. Primijenite ovaj hitni popravak samo na sustave koji imaju taj određeni problem.
Ako je hitni popravak dostupan za preuzimanje, pri vrhu članka iz baze znanja nalazi se odjeljak "Dostupno je preuzimanje hitnog popravka". Ako se ovaj odjeljak ne prikazuje, pošaljite zahtjev Microsoftovoj korisničkoj službi i podršci da nabavite hitni popravak.
Napomena: ako se pojave dodatni problemi ili je potrebno otklanjanje poteškoća, možda ćete morati stvoriti zaseban zahtjev za uslugu. Uobičajene cijene poziva službi za podršku primjenjuju se na dodatna pitanja i probleme koje nemaju veze s ovim hitnim popravkom. Cjelovit popis telefonskih brojeva Microsoftove službe za korisnike i podršku ili stvaranje zasebnog zahtjeva za uslugu potražite na sljedećem Microsoftovu web-mjestu:
/contactus/?ws=support Napomena Obrazac "Dostupno preuzimanje hitnog popravka" prikazuje jezike za koje je hitni popravak dostupan. Ako ne vidite jezik, hitni popravak nije dostupan za taj jezik.
Dodatne informacije
CauseSQL Server koristi kompilirajuće pristupnike za reguliranje kompilacija. Arhitektura pristupnika način je na koji SQL Server kontrolira korištenje memorije za kompiliranje dolaznih upita. Postoje tri pristupnika: mali, srednji i veliki.
Dodatne informacije o korištenju naredbe DBCC MEMORYSTATUS za praćenje korištenja memorije potražite u članku KB 907877: Praćenje korištenja korištenja memorije pomoću naredbe DBCC MEMORYSTATUS u sustavu SQL Server 2005 .
Status
Microsoft je potvrdio da je to problem u Microsoftovim proizvodima koji su navedeni u odjeljku „Odnosi se na“.