Sümptomid
Oletagem, et käivitate päringu, mis sisaldab ühendamist või koondamist veerus, mis on kaetud nii ühe veeru kui ka mitme veeru statistikaga (milles see veerg ei ole algusveerg). Kui kasutate SQL Server 2016 vaike-kardinaalsuse estimaatorit (CE), võib see alahinnata eristatavate ridade arvu. See põhjustab ebaoptimaalse päringukäivitusplaani (nt madal hinnang võib põhjustada räsioperaatori jaoks ebapiisava mälumahu andmist, mis põhjustab päringule tempdb-le voolamise).
Olek
Microsoft on kinnitanud, et see on jaotises „Rakenduskoht“ loetletud Microsofti toodete korral esinev probleem.
Lahendus
See probleem on lahendatud järgmises SQL Server koondvärskenduses:
Märkus Selle paranduse jõustumiseks peate lubama päringu optimeerija kiirparandused jälituslipu (TF) 4199 või vastava andmebaasi ulatusega konfiguratsiooni või päringuvihje suvandi abil.
Teave SQL Server koondvärskenduste kohta.
Iga uus koondvärskendus SQL Server sisaldab kõiki kiirparandusi ja kõiki turbeparandusi, mis olid kaasatud eelmise koondvärskenduse. Vaadake uusimaid SQL Server koondvärskendusi.
Ajutine lahendus
Selle probleemi saab lahendada järgmise päringuvihje lisamisega:
USE HINT('FORCE_LEGACY_CARDINALITY_ESTIMATION')
Viited
Lisateave Microsofti tarkvaravärskenduste terminoloogia kohta.