Simptome
Luați în considerare următorul scenariu:
- În Microsoft SQL Server 2016, rulați o interogare care utilizează o caracteristică Procesor interogare SQL Server 2016. De exemplu, rulați un operator SORT în modul Batch.
- Experimentați degradări ale performanței interogărilor comparativ cu rularea aceluiași operator SORT în modul rând.
- Pentru a rezolva această problemă, încercați să activați semnalizarea de urmărire 9347 la nivel de sesiune sau să utilizați QUERYTRACEON. Faceți acest lucru pentru a dezactiva sortările în modul lot.
În acest scenariu, operatorul SORT încă rulează în modul Batch și ignoră semnalizarea de trasare la nivel de sesiune sau la nivel de interogare.
Rezolvare
În SQL Server 2016, puteți utiliza semnalizarea de urmărire 9347 pentru a impune operatorilor SORT să ruleze în modul rând în loc să execute în modul grup. După ce aplicați actualizarea cumulativă 1 pentru SQL Server 2016, puteți activa cu succes semnalizarea de urmărire 9347 la nivel de sesiune sau la nivel de interogare.
De asemenea, puteți să activați această semnalizare de urmărire la nivel global la nivel de server, sesiune sau interogare.
Notă: utilizarea incorectă a semnalizărilor de urmărire poate degrada performanța sarcinii de lucru.
Pentru mai multe informații, consultați secțiunea "Introducere" a următorului articol din Baza de cunoștințe Microsoft:
2801413 Activați comportamentul optimizatorului de interogare SQL Server care afectează planul, care poate fi controlat de semnalizări de urmărire diferite la un nivel de interogare specifică
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft care sunt listate în secțiunea „Se aplică la”.
Referințe
Aflați despre terminologia pe care o utilizează Microsoft pentru a descrie actualizările de software.