Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

MSSQL_19408 1С:Предприятие и СУБД

MSSQL Error 19408: Lease between availability group and WSFC has been renewed — Анализ

Обновлено: 25.08.2026 · Официальная документация ↗
  • В 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

Убедитесь, что в системе не запущены сторонние утилиты, отнимающие процессорное время (например, пересчет индексов во внешних заданиях или бэкапы сторонним софтом без сжатия).

💡 Практика специалистов: Если событие 19408 фиксируется во время ночных регламентных заданий 1С (реиндексация, обновление статистики), это верный признак необходимости снижения параллелизма обслуживания (MAXDOP 1 для дефрагментации).

Частые вопросы (FAQ)

Является ли ошибка 19408 критической?

Нет, это информационное сообщение (Severity: 10), сообщающее об успешном продлении аренды. Однако регулярная фиксация после предупреждений о задержке указывает на риск внезапного сбоя 19407.

Как часто по умолчанию происходит обновление аренды?

Поток Lease renewal опрашивает кластер с интервалом, равным 1/4 от значения LeaseTimeout (по умолчанию каждые 5 секунд при таймауте в 20 секунд).

Нужно ли перезапускать кластер при появлении этого сообщения?

Нет, перезапуск не требуется. Необходимо проанализировать график загрузки CPU и дисковой активности в моменты появления сообщений.

Влияет ли антивирусное сканирование на продление аренды?

Да, если антивирус сканирует память процессов или файлы в каталоге Data/Log SQL Server, он может вызвать задержку потока аренды hadrres.dll.

Полезные материалы
Рекомендуем