Поделиться через


пороговое значение заблокированного процесса (параметр конфигурации сервера)

Область применения: SQL Server

Параметр blocked process threshold определяет пороговое значение (в секундах), в течение которого блокированный процесс порождает сообщения. Пороговое значение может быть задано в диапазоне от 5 до 86400. Монитор блокировки просыпается только каждые 5 секунд, чтобы обнаружить условия блокировки (он также ищет другие условия, такие как взаимоблокировки). Таким образом, если задано значение порогового значения 1 заблокированного процесса, он не обнаруживает процесс, блокирующийся в течение 1 секунды. Минимальная продолжительность блокировки процесса, которую можно будет обнаружить, составляет 5 секунд.

По умолчанию отчеты о заблокированных процессах не создаются. Это событие не создается для системных задач или задач, ожидающих ресурсов, которые не создают обнаруживаемые взаимоблокировки.

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

Мониторинг порога блокировки процесса использует фоновый поток отслеживания взаимоблокировок, который просматривает список задач, ожидающих выполнения в течение времени, превышающего указанное в настройках пороговое значение. Это событие формируется один раз в течение отчетного интервала для каждой из заблокированных задач.

Отчет о блокированном процессе выполняется по принципу оптимальных затрат. Нет никаких гарантий в режиме реального времени или даже близко к отчетам в режиме реального времени.

Новые настройки вступают в силу сразу же, без остановки или перезапуска сервера.

Примеры

В следующем примере параметр blocked process threshold устанавливается в значение 20 секунд, выдавая отчет о заблокированных процессах.

sp_configure 'show advanced options', 1;
GO

RECONFIGURE;
GO

sp_configure 'blocked process threshold', 20;
GO

RECONFIGURE;
GO