Simptomi
Logika procene kardinalnosti koja je poznata kao procenitelj kardinalnosti (CE) redizajnirana je u SQL Server 2014 (nivoi kompatibilnosti 120) i SQL Server 2016 (nivoi kompatibilnosti 130) da bi se poboljšao kvalitet planova upita. Međutim, kada sastavite složeni upit koji sadrži mnogo spoja sa operatorom DISTINCT ili GROUP BY, kompilacija može trajati mnogo duže nego što se očekivalo.
Rešenje
Ova ispravka koja rešava ovaj problem uključena je u servisni paket 1 za SQL Server 2016.Napomena Kada instalirate ovu ispravku, morate postaviti zastavicu za praćenje 4199 da biste omogućili ispravku. Da biste postavili zastavicu za praćenje 4199, pogledajte temu "Zastavice za praćenje" (Transact-SQL) na MSDN-u.
Svaka nova verzija za SQL Server 2016 sadrži sve hitne ispravke i sve bezbednosne ispravke koje su bile uključene u prethodnu verziju. Preporučujemo da instalirate najnoviju verziju za SQL Server 2016.
Rešenje
Da biste rešili ovaj problem, upotrebite jedan od sledećih metoda:
-
Koristite zastavicu za praćenje 9481 da biste postavili model procene kardinalnosti optimizatora upita na SQL Server 2012 ili raniju verziju.
-
Promenite nivo kompatibilnosti baze podataka u SQL Server 2012 (110) ili raniju verziju.
Status
Microsoft je potvrdio da je ovo problem u Microsoft proizvodima koji su navedeni u odeljku "Odnosi se na".
Reference
Saznajte više o terminologiji koju Microsoft koristi za opisivanje softverskih ispravki.