Síntomas
Imagine la siguiente situación:
-
Ha implementado un grupo de disponibilidad AlwaysOn de SQL Server y un agente de escucha del grupo de disponibilidad.
-
La detección de estado AlwaysOn detecta un problema de mantenimiento con el servidor SQL Server que hospeda la réplica principal y comienza a migrar el grupo de disponibilidad del rol principal al rol de resolución. Parte de esto implica poner el recurso de escucha del grupo de disponibilidad fuera de conexión.
-
Es posible que la operación que intenta detener el recurso de escucha no finalice y que el diagnóstico de volcado sin rendimiento de SQL Server informe el bloqueo como un ' programador no rendimiento ' en el registro de errores de SQL Server.
-
La operación puede bloquearse indefinidamente al intentar detener el agente de escucha del grupo de disponibilidad si se deja desatendido.
En este escenario, las bases de datos de disponibilidad del grupo disponibilidad permanecen en el modo de recuperación y no se pueden poner en línea. Recibe los siguientes errores:
<fecha> <hora> <nombre del servidor> * * * no se puede obtener el contexto del subproceso para el SPID 0<hora> <el nombre del servidor> <* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *> <8> <7> <> <> <2> <4 fecha> <hora> <nombre del servidor> <9 *> <0 de fecha> <hora> <3 el SPID 1068> <4 fecha> <hora> <el nombre del servidor> <9 *> <0 hora> < el nombre del servidor> < * programador sin rendimiento> <5 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * = 0x0000000000000176>> <> <<
Causa
El problema se produce porque el subproceso cierra la inmovilización de recursos de escucha y no produce ningún resultado. Este subproceso no rinde bloqueó otros subprocesos en el mismo procesador que bloquearon a otros subprocesos intentando recuperar las bases de datos de disponibilidad.
Resolución
El problema se solucionó por primera vez en la siguiente actualización acumulativa de SQL Server.
Actualización acumulativa 9 para SQL Server 2012 SP1 /en-us/help/2931078
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".