Sintomi
Si consideri lo scenario seguente:
- Si dispone di una query che contiene un predicato che coinvolge una funzione scalare scalare con parametri definito dall'utente.
- Esistono più combinazioni di valori di parametro di input che possono produrre lo stesso risultato da questa funzione definita dall'utente.
- SQL Server usa il nuovo estimatore di cardinalità in cui la modalità di compatibilità del database è impostata su 120.
In questo scenario, quando si esegue la query si verificano prestazioni ridotte a causa di un numero di righe stimato in modo errato per il predicato che coinvolge la funzione definita dall'utente nel piano di query.
Risoluzione
Questo problema è stato risolto per la prima volta nell'aggiornamento cumulativo seguente per SQL Server:
Aggiornamento cumulativo 6 per SQL Server 2014 Service Pack 1
Dopo aver installato questo pacchetto di aggiornamento cumulativo, è necessario abilitare il contrassegno di traccia 4199. A tale scopo, è possibile aggiungere il parametro di avvio -T4199. In alternativa, è possibile usare l'istruzione dbcc traceon(4199) per una sessione specifica.
Informazioni sugli aggiornamenti cumulativi per SQL Server
Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli aggiornamenti rapidi e tutte le correzioni per la sicurezza inclusi nell'aggiornamento cumulativo precedente. Scopri gli aggiornamenti cumulativi più recenti per SQL Server:
Ultimo aggiornamento cumulativo per SQL Server 2014
Stato
Microsoft ha confermato che si tratta di un problema relativo ai prodotti elencati nella sezione "Si applica a".
Riferimenti
Informazioni sulla terminologia utilizzata da Microsoft per descrivere gli aggiornamenti software.