KB4013128 - CORREZIONE: riduzione delle prestazioni e lunghe attese per CLR_AUTO_EVENT e CMEMTHREAD quando SQLCLR UDT viene utilizzato come parametro di stored procedure per una chiamata RPC SQL

Si applica a
SQL Server 2012 Enterprise SQL Server 2012 Developer SQL Server 2012 Enterprise Core SQL Server 2012 Standard SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Sintomi

Si usa Microsoft SQL Server 2012, 2014 o 2016 e si crea un tipo definito dall'utente (UDT) usando SQL Server l'integrazione di Common Language Runtime (SQL CLR).

Se si utilizza UDT come parametro di stored procedure, il parametro viene passato al server tramite il meccanismo rpc (Remote Procedure Call). Questo meccanismo tenta internamente di caricare un assembly che ospita lo UDT in memoria.

In questo caso, le prestazioni per l'esecuzione della stored procedure potrebbero risultare ridotte. Ciò si verifica a causa di un'inefficienza causata quando l'RPC carica e scarica l'assembly SQLCLR inutilmente.

Questo problema si manifesta con i tempi di attesa lunghi per i tipi CLR_AUTO_EVENT e CMEMTHREAD . Ciò è particolarmente vero se più utenti simultanei eseguono la stessa stored procedure.

Risoluzione

Informazioni sui Service Pack per SQL Server

Questo aggiornamento è stato risolto nei Service Pack seguenti per SQL Server:

Service Pack 2 per SQL Server 2016

Service Pack 3 per SQL Server 2014

Service Pack 4 per SQL Server 2012

Informazioni sui Service Pack per SQL Server:

I Service Pack sono cumulativi. Ogni nuovo Service Pack contiene tutte le correzioni incluse nei Service Pack precedenti, insieme a eventuali nuove correzioni. È consigliabile applicare il Service Pack più recente e l'aggiornamento cumulativo più recente per tale Service Pack. Non è necessario installare un Service Pack precedente prima di installare il Service Pack più recente. Usare la tabella 1 nell'articolo seguente per trovare altre informazioni sull'ultimo Service Pack e sull'aggiornamento cumulativo più recente.

Come determinare la versione, l'edizione e il livello di aggiornamento di SQL Server e dei relativi componenti

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.