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

Применимо к:SQL Server

Параметр blocked process threshold определяет пороговое значение (в секундах), в течение которого блокированный процесс порождает сообщения. Пороговое значение может быть задано в диапазоне от 5 до 86400. Монитор блокировки переходит в активное состояние каждые 5 секунд для обнаружения условий блокировки, а также других условий, таких как взаимоблокировка. Соответственно, если параметр blocked process threshold имеет значение 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  

См. также:

Хранимая процедура sp_trace_setevent (Transact-SQL)
Класс событий Blocked Process Report