MSSQL Error 19408: Lease between availability group and WSFC has been renewed — Анализ
- В Errorlog регистрируется сообщение:
The lease between availability group 'AG_1C' and the Windows Server Failover Cluster has been renewed. - Предшествуют сообщения о задержках аренды (Warning) или событие 19419.
- Кратковременные «фризы» транзакций в 1С:Предприятие при проведении документов.
- Событие указывает на восстановление контроля перед критическим сбоем 19407.
1. Анализ частоты появления событий восстановления аренды
Событие 19408 является информационным, однако его регулярное появление после задержек свидетельствует о работе системы на грани срыва в аварийный Failover.
-- Поиск событий продления аренды в Extended Events Always On (Health Session)
SELECT
XEvent.value('(event/@timestamp)[1]', 'datetime2') AS [timestamp],
XEvent.value('(event/data[@name="availability_group_name"]/value)[1]', 'varchar(255)') AS [AG_Name],
XEvent.value('(event/data[@name="message"]/value)[1]', 'varchar(max)') AS [Log_Message]
FROM (
SELECT CAST(target_data AS XML) AS TargetData
FROM sys.dm_xe_session_targets st
JOIN sys.dm_xe_sessions s ON s.address = st.event_session_address
WHERE s.name = 'AlwaysOn_health'
) AS Data
CROSS APPLY TargetData.nodes('//RingBufferTarget/event') AS XEventData(XEvent)
WHERE XEvent.value('(event/@name)[1]', 'varchar(100)') = 'alwayson_ddl_executed'
OR XEvent.value('(event/data[@name="message"]/value)[1]', 'varchar(max)') LIKE '%lease%';2. Проверка задержек потоков планировщика (SOS_SCHEDULER_YIELD)
SELECT
wait_type,
waiting_tasks_count,
wait_time_ms,
max_wait_time_ms
FROM sys.dm_os_wait_stats
WHERE wait_type IN ('SOS_SCHEDULER_YIELD', 'HADR_SYNC_COMMIT', 'CLUSTER_RESOURCE_SYNC');3. Оптимизация приоритета процесса SQL Server
Убедитесь, что в системе не запущены сторонние утилиты, отнимающие процессорное время (например, пересчет индексов во внешних заданиях или бэкапы сторонним софтом без сжатия).
Частые вопросы (FAQ)
Является ли ошибка 19408 критической?
Нет, это информационное сообщение (Severity: 10), сообщающее об успешном продлении аренды. Однако регулярная фиксация после предупреждений о задержке указывает на риск внезапного сбоя 19407.
Как часто по умолчанию происходит обновление аренды?
Поток Lease renewal опрашивает кластер с интервалом, равным 1/4 от значения LeaseTimeout (по умолчанию каждые 5 секунд при таймауте в 20 секунд).
Нужно ли перезапускать кластер при появлении этого сообщения?
Нет, перезапуск не требуется. Необходимо проанализировать график загрузки CPU и дисковой активности в моменты появления сообщений.
Влияет ли антивирусное сканирование на продление аренды?
Да, если антивирус сканирует память процессов или файлы в каталоге Data/Log SQL Server, он может вызвать задержку потока аренды hadrres.dll.