Síntomas
Supongamos que habilita una característica, como los grupos de disponibilidad AlwaysOn, que utiliza un grupo de registros en una instancia de Microsoft SQL Server 2012 o Microsoft SQL Server 2014. En esta situación, el contador de esperas de escritura de registros para el búfer de registro en la instancia de SQL Server tiene un valor alto. También observará valores altos para los tipos de espera CMEMTHREAD y WRITELOG en las vistas de administración dinámica (DMV). Además, se generan archivos de minivolcado.
Nota: El grupo de registros es una memoria caché en memoria del registro de transacciones. Esta memoria caché se utiliza, entre otras cosas: para optimizar la lectura del registro durante las operaciones de recuperación y reversión en la replicación de transacciones, y para la característica Grupos de disponibilidad AlwaysOn.
Causa
Este problema se produce porque el grupo de registros utiliza un puntero global a un objeto de memoria (PMO) para todas las bases de datos.
Cuando muchos subprocesos intentan escribir registros utilizando el grupo de registros, todos los subprocesos tienen que esperar el puntero a un objeto de memoria, lo que da como resultado la contención descrita en la sección Síntomas.
Resolución
SQL Server 2014 Service Pack 1
De forma predeterminada, Service Pack 1 para SQL Server 2014 incluye esta corrección y no es necesario agregar ninguna marca de seguimiento para habilitarla.
SQL Server 2014
El problema se ha corregido en la versión RTM de SQL Server 2014, pero aún debe habilitar la marca de seguimiento T9024 y/o 8048para activar la corrección. Después de habilitar esta marca de seguimiento, la instancia de SQL Server crea particiones del puntero a un objeto de memoria en el nivel de nodo.
Notas
- Si los problemas persisten incluso después de habilitar la marca de seguimiento T9024, también puede habilitar la marca de seguimiento T8048 que particiona el puntero al objeto de memoria en el nivel de CPU.
- SQL Server 2014 Service Pack 1 (SP1) incluye esta corrección y no es necesario habilitar la marca de seguimiento.
SQL Server 2012
Nota SQL Server 2012 Service Pack 3 (SP3) incluye esta corrección y no tiene que habilitar la marca de seguimiento.
Información sobre la actualización acumulativa
Actualización acumulativa 3 para SQL Server 2012 SP1
La corrección de este problema se publicó por primera vez en la actualización acumulativa 3. Para obtener más información acerca de cómo obtener este paquete de actualizaciones acumulativas para SQL Server 2012 SP1, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2812412 paquete de actualización acumulativa 3 para SQL Server 2012 Service Pack 1Nota Dado que las compilaciones son acumulativas, cada nueva corrección contiene todas las revisiones y correcciones de seguridad que se incluyeron con la versión de corrección anterior de SQL Server 2012 SP1. Recomendamos que se plantee la posibilidad de aplicar la versión de corrección más reciente que contiene esta revisión. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2772858 Compilaciones de SQL Server 2012 que se publicaron después de SQL Server 2012 Service Pack 1Nota: Después de aplicar la revisión, debe habilitar la marca de seguimiento T9024 a fin de activar la corrección. Después de habilitar esta marca de seguimiento, la instancia de SQL Server crea particiones del puntero a un objeto de memoria en el nivel de nodo.
Nota: Si los problemas persisten incluso después de habilitar la marca de seguimiento T9024, también puede habilitar la marca de seguimiento T8048, que particiona el puntero al objeto de memoria en el nivel de CPU.
Información de la revisión
Microsoft ofrece una revisión compatible. Sin embargo, esta revisión está pensada para corregir únicamente el problema que se describe en este artículo. Aplique esta revisión únicamente a los sistemas que experimenten este problema específico.
Si la revisión está disponible para su descarga, hay una sección "Descarga de revisión disponible" en la parte superior de este artículo de Knowledge Base. Si esta sección no aparece, envíe una solicitud al soporte técnico y al servicio al cliente de Microsoft para obtener la revisión.
Nota: si se producen más problemas o necesita alguna solución, es posible que tenga que crear una solicitud de servicio independiente. Se aplicarán los costos habituales de soporte técnico a las preguntas y problemas de soporte técnico adicionales que no estén relacionados con esta revisión específica. Para obtener una lista completa de los números de teléfono del servicio de soporte técnico y de atención al cliente de Microsoft, así como información acerca de cómo crear una solicitud de servicio independiente, visite el siguiente sitio web de Microsoft:
/contactus/?ws=support Nota: El formulario "Descarga de revisiones disponible" muestra los idiomas para los que está disponible la revisión. Si no ve su idioma, se debe a que no hay una revisión disponible para ese idioma.
Requisitos previos para SQL Server 2012
Para aplicar esta revisión, debe tener SQL Server 2012 SP1 instalado en el equipo.
Requisito de reinicio
No es necesario que reinicie el equipo una vez aplicada esta revisión. SQL Server debe reiniciarse con la marca de seguimiento T9024. Para obtener más información acerca de cómo configurar SQL Server mediante una marca de seguimiento de inicio, consulte Opciones de inicio del servicio Motor de base de datos.
Información de archivo
La versión de revisión global tiene los atributos de archivo (o atributos posteriores) que se enumeran en la tabla siguiente. Las fechas y horas de estos archivos se expresan de acuerdo con la hora universal coordinada (UTC). La información del archivo se convertirá a la hora local cuando la vea. Para conocer la diferencia entre la hora UTC y la hora local, use la pestaña Zona horaria del elemento Fecha y hora del Panel de control.