KB4538688 - FIX: Se produce una contención severa de bloqueo por subproceso en SQL Server de 2019

Se aplica a
SQL Server 2019 on Windows SQL Server 2019 on Linux

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:

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:

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.