KB4013128 - DÜZELTME: SQL RPC çağrısı için saklı yordam parametresi olarak SQLCLR UDT kullanıldığında performans azaldı ve CLR_AUTO_EVENT ve CMEMTHREAD için uzun bekleme süreleri

Uygulandığı Öğe
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)

Belirtiler

Microsoft SQL ServerSQL Server 2012, 2014 veya 2016 kullanırsınız ve SQL ServerSQL Server ortak dil çalışma zamanı (SQL CLR) tümleştirmesini kullanarak Kullanıcı tanımlı tür (UDT) oluşturursunuz.

UDT'yi saklı yordam parametresi olarak kullanırsanız, parametre uzaktan yordam çağrısı (RPC) mekanizması aracılığıyla sunucuya geçirilir. Bu mekanizma, UDT'yi bellekte barındıran bir derlemeyi dahili olarak yüklemeye çalışır.

Bu durumda, saklı yordam yürütme performansında düşüşle karşılaşabilirsiniz. Bu, RPC'nin SQLCLR derlemesini gereksiz yere yükleyip kaldırdığında oluşan bir verimsizlik nedeniyle oluşur.

Bu sorun, CLR_AUTO_EVENT ve CMEMTHREAD türleri için uzun bekleme süreleri olarak kendini gösterir. Bu durum, özellikle birden fazla eş zamanlı kullanıcı aynı saklı yordamı çalıştırıyorsa geçerlidir.

Çözüm

Service pack information for SQL ServerSQL Server

Bu güncelleştirme, aşağıdaki SQL Server hizmet paketlerinde düzeltilmiştir:

Service Pack 2 for SQL ServerSQL Server 2016

Service Pack 3 for SQL ServerSQL Server 2014

Service Pack 4 for SQL ServerSQL Server 2012

SQL Server için hizmet paketleri hakkında:

Hizmet paketleri birikimlidir. Her yeni hizmet paketi, yeni düzeltmelerle birlikte önceki hizmet paketlerindeki düzeltmeleri de içerir. Önerimiz, en son hizmet paketini ve bu hizmet paketine yönelik en son toplu güncelleştirmeyi uygulamanızdır. En son hizmet paketini yüklemeden önce önceki bir hizmet paketini yüklemenize gerek yoktur. En son hizmet paketi ve en son toplu güncelleştirme hakkında daha fazla bilgi bulmak için aşağıdaki makalede yer alan Tablo 1'i kullanın.

SQL Server ve bileşenlerinin sürüm, sürüm ve güncelleştirme düzeyini belirleme

Durum

Microsoft bunun, "Şunlar için geçerlidir" bölümünde listelenen Microsoft ürünlerinde sorun olduğunu doğrulamıştır.

Başvurular

Microsoft'un yazılım güncelleştirmelerini tanımlamak için kullandığı terminoloji hakkında bilgi edinin.