Sintomi
Considerare lo scenario descritto di seguito:
-
Sono installati SQL Server 2016 e 2017.
-
Si usano rpc_starting, rpc_completed, RPC: Starting, RPC: Completedo Audit Object di Access in SQL Server Extended Events o SQL Server Profiler per individuare gli eventi RPC.
-
Si usa una chiamata di procedura remota che contiene i parametri con valori di tabella (TVP) che contengono molte righe.
In questo scenario può verificarsi un uso eccessivo della memoria e le prestazioni del server potrebbero diminuire. Se siuery la sys.dm_os_memory_clerks DMV, si noterà che il OBJECTSTORE_LBSS Clerk ha molte allocazioni di memoria rispetto a quando non esiste una raccolta di tracce RPC in corso.
Risoluzione
Questo problema è stato risolto negli aggiornamenti seguenti per SQL Server:
Aggiornamento cumulativo 13 per SQL Server 2017
Aggiornamento cumulativo 12 per SQL Server 2017
Aggiornamento cumulativo 4 per SQL Server 2016 SP2
Nota
-
Dopo l'applicazione di questo aggiornamento, la correzione limita il numero di righe tracciate per TVP in ogni evento.Tsignifica che alcuni eventi tracciati potrebbero non contenere tutte le righe in TVP.
-
Per un'altra correzione in cui SQL Server non è più in errore di memoria quando viene acquisito TVP, fare riferimento a KB 4051359.
Informazioni sulle build di SQL Server
Ogni nuova build per SQL Server contiene tutti gli aggiornamenti rapidi e le correzioni di sicurezza presenti nella build precedente. È consigliabile installare la build più recente per la versione di SQL Server:
Stato
Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".
Riferimenti
Informazioni sulla terminologia standard utilizzata da Microsoft per descrivere gli aggiornamenti software.