Belirtiler
Microsoft SQL Server 2012 veya Microsoft SQL sever 2014 ' de uzamsal veri türü ve ilişkili yöntemleri kullandığınızda, SQL Server Işletim sistemi (SQLOS) çizelgeleyicinin hisse hedefleri SQL Server CLR Barındırma katmanıyla korunur. Bu koruma preemptive, SQLOS anahtarlarının CPU tüketimini artırabilir. Preemptive anahtarının nedeni, SQLOS Scheduler 'ı korumadır. SQL Server CLR tabanlı bir uygulamaya çağrı, SQLOS Scheduler 'ı bırakmadan veya davranış ve eşzamanlılık düzenlerini değiştirmeksizin belirtilmeyen zaman alabilir. Bu nedenle, uzamsal veri türü her çağrı sırasında PreEmptive arasında geçiş yapmak için tasarlanmıştır. Not Uzamsal veri türü SQL Server CLR 'ye dayanıyorsa, çeşitli düzeylerde .NET hafıza tüketimi ve iş parçacığı değiştirme davranışı ile karşılaşabilir.
Neden
Uzamsal veri türü yöntemleri yürütmeleri genellikle alt milisaniyelik ve tam SQL OS Scheduler ve preemptive korumasını gerektirmeyebilir. Preemptive moduna geçme ve bu moddan gelen ek yük, uzamsal yöntemin yürütülmesinin çok daha büyük olabilir.
Çözüm
Bu düzeltme, SQLOS barındırma katmanına, uzamsal veri türünün preemptive korumalarını önleyemeyeceğini belirtmek için 6531 izleme bayrağı sağlar. Bu, CPU tüketimini azaltabilir ve uzamsal etkinliklerin genel performansını iyileştirebilir. Bu izleme bayrağını yalnızca bireysel, uzamsal yöntem çağırmaları (satır ve sütun başına) ~ 4ms 'den az olduğunda kullanın. Preemptive koruması olmadan daha uzun süre çağırmaları, hata günlüğüne kaydedilen Zamanlayıcı eşzamanlılık sorunlarına ve SQLCLR punment iletilerine yol açabilir. Sorun ilk olarak SQL Server 'ın aşağıdaki toplu güncelleştirmesinde giderilmiştir.
SQL Server 2012 SP2 için toplu güncelleştirme 4 /en-us/help/3007556
SQL Server 2014 için toplu güncelleştirme 5 /en-us/help/3011055
SQL Server 2012 SP1 için toplu güncelleştirme 13 /en-us/help/3002044
Her bir SQL Server toplu güncelleştirmesi, önceki toplu güncelleştirmeyle birlikte gelen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. En son SQL Server güncelleştirmelerini gözden geçirin:
Durum
Microsoft bu sorunun "Uygulandığı öğe" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.