Resumen
Los entornos que ejecutan un gran volumen de transacciones de base de datos en una instancia de Microsoft SQL Server 2019 pueden producir una contención severa de bloqueo por subproceso. Esta afirmación se observa generalmente en sistemas de gama alta que usan procesadores de nueva generación.
Se pueden observar las siguientes condiciones con respecto a la contención de bloqueo por subproceso grave:
- Se observa comúnmente en el hardware moderno, especialmente en los procesadores Intel Skylake. También se puede observar en otros procesadores modernos.
- Normalmente se observa en sistemas con muchos procesadores.
- Los entornos pueden tener más usuarios simultáneos, como cargas de trabajo de misión crítica y altamente transaccionales.
- Los síntomas incluyen un uso inesperadamente alto de la CPU y muchos giros y eventos de interrupción para un tipo de bloqueo por subproceso en particular, y un mayor número de espines por colisión.
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".
Resolución
La mejora del bloqueo por subproceso se puso a disposición por primera vez en la actualización acumulativa 2 para SQL Server 2019. Se introdujeron mejoras adicionales en las siguientes actualizaciones acumulativas para SQL Server:
- Actualización acumulativa 8 para SQL Server 2019
- Actualización acumulativa 14 para SQL Server 2019
- Actualización acumulativa 16 para SQL Server 2019
Se recomienda aplicar la actualización acumulativa más reciente de esta lista para solucionar diversos problemas de contención de bloqueos por subproceso.
Importante: Para poder corregir el problema de bloqueo por subproceso, la marca de seguimiento 8101 debe estar habilitada después de aplicar una de las CU de esta lista.
Acerca de las actualizaciones acumulativas para SQL Server
Cada nueva actualización acumulativa para SQL Server contiene todas las revisiones y correcciones de seguridad que se incluyeron con la actualización acumulativa anterior. Consulte las actualizaciones acumulativas más recientes para SQL Server:
Solución de problemas
Para solucionar problemas de contención de bloqueos por subproceso, consulte los siguientes artículos para obtener información detallada acerca de cómo identificar y resolver problemas relacionados con la contención elevada de CPU y bloqueos por subproceso en aplicaciones de SQL Server:
- Notas del producto: Diagnosticar y resolver la contención de bloqueos por subproceso en SQL Server | Microsoft Learn
- Solucionar problemas de uso elevado de CPU en SQL Server | Microsoft Learn
Referencias
Obtenga información sobre la terminología que usa Microsoft para describir las actualizaciones de software.
sys.dm_os_spinlock_stats (Transact-SQL) | Microsoft Learn
DBCC TRACEON - Marcas de seguimiento (Transact-SQL)
Aviso de declinación de responsabilidades sobre la información de terceros
Los productos de otros fabricantes que se mencionan en este artículo han sido creados por compañías independientes de Microsoft. Microsoft no ofrece ninguna garantía, ya sea implícita o de otro tipo, sobre la confiabilidad o el rendimiento de dichos productos.