Параметр конфигурации сервера «blocked process threshold»
Параметр blocked process threshold определяет пороговое значение (в секундах), в течение которого блокированный процесс порождает сообщения. Пороговое значение может быть задано в диапазоне от 0 до 86 400. По умолчанию отчеты о заблокированных процессах не создаются. Это событие не формируется для системных задач и для задач, которые ожидают ресурсы, не производящие отслеживаемых взаимоблокировок.
При формировании данного события можно выдать предупреждение. Например, можно выдать администратору на пейджер сообщение о необходимости разобраться с блокировкой.
Мониторинг порога блокировки процесса использует фоновый поток отслеживания взаимоблокировок, который просматривает список задач, ожидающих выполнения в течение времени, превышающего указанное в настройках пороговое значение. Это событие формируется один раз в течение отчетного интервала для каждой из заблокированных задач.
Отчет о блокированном процессе выполняется по принципу оптимальных затрат. Нет никакой гарантии, что он будет выдаваться в реальном времени или хотя бы достаточно быстро.
Новые настройки вступают в силу сразу же, без остановки или перезапуска сервера.
Примеры
В следующем примере параметр blocked process threshold устанавливается в значение 20 секунд, выдавая отчет о заблокированных процессах.
sp_configure 'show advanced options', 1 ;
GO
RECONFIGURE ;
GO
sp_configure 'blocked process threshold', 20 ;
GO
RECONFIGURE ;
GO