Simptome
Luați în considerare următorul scenariu:
-
Aveți o interogare care conține un predicat care implică o funcție scalară definită de utilizator.
-
Există mai multe combinații de valori ale parametrilor de intrare care pot produce același rezultat cu această funcție definită de utilizator.
-
SQL Server utilizează noul Estimatorul de cardinalitate în care modul de compatibilitate a bazei de date este setat la 120.
În acest scenariu, când rulați interogarea, experimentați performanța de interogare slabă din cauza unui număr estimat incorect de rânduri pentru Predicatul care implică funcția definită de utilizator în planul de interogare.
Rezolvare
Această problemă a fost remediată pentru prima dată în următoarea actualizare cumulativă pentru SQL Server:
Actualizarea cumulativă 6 pentru SQL Server 2014 Service Pack 1După ce instalați acest pachet de actualizare cumulativă, trebuie să activați Trace Flag 4199. Pentru a face acest lucru, puteți adăuga parametrul Startup -T4199 . Sau puteți utiliza instrucțiunea DBCC TRACEON (4199) pentru o anumită sesiune.
Fiecare nouă actualizare cumulativă pentru SQL Server conține toate remedierile rapide și toate remedierile de securitate care au fost incluse în actualizarea cumulativă anterioară. Consultați cele mai recente actualizări cumulative pentru SQL Server:
Cea mai recentă actualizare cumulativă pentru SQL Server 2014
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft enumerate în secțiunea „Se aplică la”.
Referințe
Aflați despre terminologia pe care o utilizează Microsoft pentru a descrie actualizările de software.