Se aplica a
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Express - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Síntomas

Esta actualización incluye las siguientes mejoras para la compatibilidad con el tiempo de espera del contrato de arrendamiento de Microsoft SQL Server AlwaysOn:

  • El mensaje Tiempo de espera de la concesión ahora muestra y registra la hora actual y el tiempo de renovación esperado.

  • Se agregó un nuevo mensaje de error para los trabajadores del contrato de arrendamiento que indica claramente el motivo del tiempo de espera del contrato de arrendamiento.

  • Se agregó un nuevo evento ampliado y un nuevo búfer de anillo para los trabajadores del arrendamiento. Estos datos indican claramente las etapas del arrendamiento.

Solución

El problema se corrigió por primera vez en los siguientes Service Pack para SQL Server.

Para obtener más información sobre SQL Server Service Pack 3 (SP3) de 2012, consulte errores corregidos en SQL Server 2012 Service Pack 3.

Service Pack 2 para SQL Server para SQL Server 2014Acerca de los Service Pack de SQL Server Servicios son acumulativos. Cada nuevo Service Pack contiene todas las revisiones de Service Packs previos junto con revisiones nuevas. Nuestra recomendación es aplicar el Service Pack más reciente y la actualización acumulativa más reciente para ese Service Pack. No es necesario instalar un Service Pack anterior antes de instalar el Service Pack más reciente. Use la Tabla 1 del artículo siguiente para obtener más información sobre el Service Pack más reciente y la actualización acumulativa más reciente.Cómo determinar el nivel de versión, edición y actualización de SQL Server y sus componentes

Más información

Para proporcionar información adicional, se han agregado nuevos mensajes de error a SQL Server. En la tabla siguiente se enumeran y se explica cada una de ellas.

error

Mensaje de error

Causa

Acción correctiva

19419

La renovación del contrato de arrendamiento entre el grupo de disponibilidad '%.*ls' y el clúster de conmutación por error de Windows Server ha fallado porque la concesión existente ya no es válida.

El trabajador del contrato de arrendamiento en el lado SQL Server no se programó a tiempo para procesar la señal de evento del clúster.

Compruebe el uso de cpu en el servidor, ya que SQL Server trabajador de arrendamiento parece estar hambrienta.

19420

Se pide explícitamente al grupo de disponibilidad '%.*ls' que detenga la renovación del contrato de arrendamiento.

La renovación del contrato de arrendamiento se detiene como parte de la conexión del grupo de disponibilidad. Esto es solo informativo.

19421

La renovación del contrato de arrendamiento entre el grupo de disponibilidad '%.*ls' y el clúster de conmutación por error de Windows Server no se realizó porque la renovación no se realizó dentro del intervalo del contrato de arrendamiento.

El ayudante del contrato de arrendamiento en el lado del clúster no señal el SQL Server trabajador del contrato de arrendamiento a tiempo.

Compruebe el recurso del grupo de disponibilidad correspondiente en el clúster de WSFC para ver si ha notificado algún error.

19422

La renovación del contrato de arrendamiento entre el grupo de disponibilidad '%.*ls' y el clúster de conmutación por error de Windows Server falló debido a un error de ventanas con código de error ('%d').

El trabajador del contrato de arrendamiento en SQL Server lado no pudo renovar el contrato de arrendamiento debido a un error de ventanas.

Comprueba el código de error de windows y realiza la acción correctiva.

19423

El contrato de arrendamiento del grupo de disponibilidad '%.*ls' ya no es válido para iniciar el proceso de renovación del contrato.

Cuando el trabajador del contrato de arrendamiento comenzó a procesar el exceso de tiempo proporcionado por llamada en línea el contrato de arrendamiento ya expiró. Esto puede ocurrir debido a problemas de programación.

Compruebe el uso de cpu en el servidor, ya que SQL Server trabajador de arrendamiento parece estar hambrienta.

19424

El trabajador del grupo de disponibilidad '%.*ls' está durmiendo el exceso de tiempo de arrendamiento (%u ms) suministrado durante la conexión. Solo se trata de un mensaje informativo. No es necesaria ninguna acción del usuario.

Informativo. Tiempo en línea adicional asignado para iniciar el hilo de renovación del contrato de arrendamiento y como parte de la rutina en línea del grupo de disponibilidad.

Ejemplo de error 19419: Si usas un depurador para adjuntar a SQL Server, interrumpe el mantenimiento de subprocesos en el proceso de SQL Server hasta que reanudes el proceso de SQL Server. Al reanudar SQL Server, se notifica lo siguiente en el registro de errores de SQL Server:

<fecha y hora> error del servidor: 19419, gravedad: 16, estado: 1. <date time> Server Windows Server Failover Cluster no recibió una señal de evento de proceso de SQL Server grupo de disponibilidad de hospedaje "ag" dentro del período de tiempo de espera del contrato de arrendamiento. <fecha y hora> error del servidor: 19407, gravedad: 16, estado: 1. <fecha y hora> server La concesión entre el grupo de disponibilidad "ag" y el clúster de conmutación por error de Windows Server ha expirado. Se ha producido un problema de conectividad entre la instancia de SQL Server y el clúster de conmutación por error de Windows Server. Para determinar si el grupo de disponibilidad está conmutando por error correctamente, compruebe el recurso del grupo de disponibilidad correspondiente en el clúster de conmutación por error de Windows Server. <fecha y hora> Server AlwaysOn: la réplica local del grupo de disponibilidad "ag" se está desconectando porque la renovación del contrato ha expirado o porque no se ha podido realizar la renovación del contrato de arrendamiento. Solo se trata de un mensaje informativo. No es necesaria ninguna acción del usuario. <fecha y hora> Server El estado de la réplica de disponibilidad local en el grupo de disponibilidad "ag" ha cambiado de "PRIMARY_NORMAL" a "RESOLVING_NORMAL". El estado de réplica cambió debido a un inicio, una conmutación por error, un problema de comunicación o un error de clúster. Para obtener más información, consulte el panel del grupo de disponibilidad, SQL Server registro de errores, Windows Server consola de administración de clústeres de conmutación por error o Windows Server registro de clúster de conmutación por error.

El error 19419 se devuelve porque SQL Server no respondió al servicio de clúster. También puede recibir un mensaje de error de tiempo de espera del contrato de arrendamiento (19407) junto con el error 19419.Ejemplo de error 19424: El siguiente es el mensaje de exceso de tiempo de concesión que se notifica justo antes de que el grupo de disponibilidad pase al rol PRIMARY:

<Fecha y hora> Server El trabajador del grupo de disponibilidad "ag" ahora duerme el exceso de tiempo de arrendamiento (164766 ms) proporcionado durante la conexión. Solo se trata de un mensaje informativo. No es necesaria ninguna acción del usuario. <Fecha y hora> Server El estado de la réplica de disponibilidad local en el grupo de disponibilidad "ag" ha cambiado de "PRIMARY_PENDING" a "PRIMARY_NORMAL". El estado de réplica cambió debido a un inicio, una conmutación por error, un problema de comunicación o un error de clúster. Para obtener más información, consulte el panel del grupo de disponibilidad, SQL Server registro de errores, Windows Server consola de administración de clústeres de conmutación por error o Windows Server registro de clúster de conmutación por error.

Se han mejorado los availability_group_lease_expired y hadr_ag_lease_renewal XEvents, con la adición de puntos de datos que proporcionan más información sobre la condición del contrato de arrendamiento. En la siguiente tabla se describen las mejoras de estos XEvents:

XEvent

Nueva columna

Descripción

availability_group_lease_expired

current_time

Hora en la que expiró el contrato de arrendamiento

availability_group_lease_expired

new_timeout

Tiempo de espera, cuando aumenta availability_group_lease_expired, current_time es mayor que new_timeout

availability_group_lease_expired

estado

Etapas de arrendamiento: consulte la tabla Etapas de arrendamiento a continuación

hadr_ag_lease_renewal

estado

hadr_ag_lease_renewal

hadr_ag_lease_renewal

error_code

Si el estado es HadrLeaseRenewal_FailedWithWindowsError entonces error_code es el código de error de Windows asociado al error

Fases y definicionesde arrendamiento En la tabla siguiente se enumeran las posibles etapas de arrendamiento y se explican sus funciones:

Nombre de la fase

Descripción

HadrLeaseRenewal_LeaseWorkerStarted

Se inició el subproceso de trabajador de arrendamiento.

HadrLeaseRenewal_StartedExcessLeaseSleep

Comenzar el exceso de contrato de arrendamiento. Las etapas de arrendamiento excesivo documenta el inicio de la conversación de arrendamiento durante la fase en línea del grupo de disponibilidad.

HadrLeaseRenewal_FailedExcessSleepInvalidOnlineLease

Se produce un error en el contrato de arrendamiento si el contrato de arrendamiento ya ha expirado.

HadrLeaseRenewal_SkipExcessSleep

Se omite el exceso de arrendamiento si la duración disponible para dormir es menor que el intervalo de arrendamiento. No hay necesidad de pasar por el exceso de contrato de arrendamiento a solo iniciar el proceso de agitación de la mano.

HadrLeaseRenewal_ExcessSleepSucceeded

Exceso de contrato de arrendamiento con éxito.

HadrLeaseRenewal_RenewSucceeded

Deberíamos verlo con cada renovación.

HadrLeaseRenewal_LeaseNotValid

Equivalente al error: 19419 Windows Server clúster de conmutación por error no recibió una señal de evento de proceso de SQL Server grupo de disponibilidad de hospedaje '%.*ls' dentro del período de tiempo de espera del contrato de arrendamiento.

HadrLeaseRenewal_StopLeaseRenewal

Debería ver esto durante un evento de conmutación por error.

HadrLeaseRenewal_LeaseExpired

Equivalente al error: 19421 SQL Server grupo de disponibilidad de hospedaje '%.*ls' no recibió una señal de evento de proceso del clúster de conmutación por error de Windows Server dentro del período de tiempo de espera del contrato de arrendamiento.

HadrLeaseRenewal_FailedWithWindowsError

Error en la renovación del contrato de arrendamiento debido a un error de ventanas.

Para obtener más información, consulte Diagnósticos de tiempo de espera de contrato de tiempo de espera de contrato de arrendamiento de grupo de disponibilidad AlwaysOn mejorado.Para obtener más información sobre el tiempo de espera del contrato de arrendamiento, consulte Cómo funciona: SQL Server AlwaysOn Lease Timeout.

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "Se aplica a".

¿Necesita más ayuda?

¿Quiere más opciones?

Explore las ventajas de las suscripciones, examine los cursos de aprendizaje, aprenda a proteger su dispositivo y mucho más.