Síntomas
Al usar el tipo de datos espaciales y los métodos asociados en Microsoft SQL Server 2012 o Microsoft SQL Server 2014, los destinos Quantum del programador del sistema operativo (SQLOS) de SQL Server están protegidos por la capa de hospedaje de CLR de SQL Server. Esta protección implica que los conmutadores SQLOS pueden aumentar el consumo de CPU. El motivo de la conmutación preferente es proteger el programador de SQLOS. Una llamada en una implementación basada en CLR de SQL Server puede llevar tiempo no especificado, sin dar lugar al programador de SQLOS ni cambiar el comportamiento y los patrones de simultaneidad. Por lo tanto, el tipo de datos espaciales está diseñado para cambiar la preferencia durante cada invocación. Nota El tipo de datos espaciales se basa en CLR de SQL Server, puede encontrarse con varios niveles de consumo de memoria de .NET y el comportamiento de la conmutación de subprocesos.
Causa
Las ejecuciones de métodos de tipo de datos espaciales suelen ser submilisegundos y es posible que no requieran el programador de sistema operativo SQL completo ni la protección rápida. La sobrecarga de cambiar al modo preferente puede ser mucho mayor que la ejecución del método espacial.
Resolución
Esta corrección presenta la marca de seguimiento 6531 para indicar al nivel de hospedaje de SQLOS que el tipo de datos espaciales debe evitar las protecciones preventivas. Esto puede reducir el consumo de la CPU y mejorar el rendimiento general de las actividades espaciales. Use esta marca de seguimiento solo si las invocaciones de métodos espaciales individuales (por fila y columna) tardan menos de ~ 4ms. Las invocaciones más largas sin la protección rápida pueden conducir a problemas de simultaneidad del programador y a los mensajes de SQLCLR Punishment registrados en el registro de errores. El problema se solucionó por primera vez en la siguiente actualización acumulativa de SQL Server.
Actualización acumulativa 4 para SQL Server 2012 SP2 /en-us/help/3007556
Actualización acumulativa 5 para SQL Server 2014 /en-us/help/3011055
Actualización acumulativa 13 para SQL Server 2012 SP1 /en-us/help/3002044
Cada actualización acumulativa para SQL Server contiene todas las revisiones y todas las revisiones de seguridad incluidas en la actualización acumulativa anterior. Consulte las últimas actualizaciones acumulativas para SQL Server:
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft recogidos en la sección "Se aplica a".