Avamar: El respaldo y la restauración de múltiples flujos de SQL pueden fallar con el mensaje "La API estaba esperando y el intervalo de tiempo de espera agotado había"
Summary: Cuando seis o más flujos respaldan o restauran bases de datos de ~1 TB en SQL Server 2017 2019, el trabajo puede detenerse y agotar el tiempo de espera debido a que VDI utiliza un conteo de semáforos en lugar de SetEvent, lo que causa un interbloqueo en avsql. ...
Symptoms
Un respaldo de SQL grande falla con varios flujos
- El respaldo y la restauración multistreaming de SQL pueden fallar con el siguiente error:
2021-09-16 15:01:54 avsql Error <6478>: VDS::Getconfig failed with 'The api was waiting and the timeout interval had elapsed' 2021-09-16 15:01:54 avsql Error <6478>: VDS::Getconfig failed with 'The api was waiting and the timeout interval had elapsed' 2021-09-16 15:01:54 avsql Error <6478>: VDS::Getconfig failed with 'The api was waiting and the timeout interval had elapsed' 2021-09-16 15:01:54 avsql Error <6479>: Timed out. Was Microsoft SQLServer running? - Todos los subprocesos avtar generados para el
“avsql stack execution”No mostrar bytes de progreso. - El problema se produce cuando se configuran seis o más flujos para bases de datos de aproximadamente un terabyte o más.
- Este problema afecta a los entornos de Microsoft SQL Server 2017 y 2019. La ejecución del respaldo con un solo flujo finaliza, pero tarda más.
Cause
Interbloqueo causado por el cambio de comportamiento de VDI
Este problema se debe a un cambio en la implementación de la interfaz de dispositivo virtual (VDI) de Microsoft para SQL Server 2017 y 2019. En SQL Server 2016, el avsql plug-in utilizó el método SetEvent Parámetro para indicar la finalización de la configuración de respaldo. A partir de SQL Server 2017/2019, la capa de VDI utiliza un conteo de semáforos en su lugar. Cuando el streaming múltiple está habilitado, el avsql incrementa el conteo de semáforos, lo que deja el conteo distinto de cero y crea un interbloqueo que impide el “avsql” Los subprocesos no avanzan, lo que genera un error de tiempo de espera agotado.
- Diferencia de comportamiento de VDI entre SQL 2016 (
SetEvent) y SQL 2017/2019 (semáforo). - Avamar
“avsql”El componente espera que el componenteSetEventsemántica. - El streaming múltiple activa la ruta de acceso del código que manipula el semáforo.
- El interbloqueo provoca que no se avance en los subprocesos avtar generados y el mensaje de tiempo de espera agotado.
Resolution
Resolución permanente
Actualice el cliente de respaldo Avamar y el plug-in de SQL a la versión 19.10 o posterior, que incluye la corrección de código. Dell recomienda actualizar a la versión compatible más reciente (por ejemplo, Avamar 19.12.x) para obtener las correcciones y mejoras más recientes.
Aplique la revisión acumulativa más reciente para la versión instalada:
- Para la versión 19.10.100-166 HF338875
- Para la versión 19.12.100-186 HF953552
Descargue la corrección urgente necesaria desde el soporte de Dell:
Consulte el artículo Avamar: Cómo encontrar y descargar revisiones, parches o paquetes de instalación y actualización desde el soporte de Dell para obtener más información.