Блокировки удерживаются в течение различных периодов времени, но наиболее распространенные блокирующие блокировки, блокировки X, сохраняются в течение транзакции. Поскольку время жизни транзакции совершенно не связано с временем жизни пакета, абсолютно нормально иметь спид SPID для собственных блокировок, это просто означает, что клиент запустил транзакцию и выполнил некоторые обновления. Как только клиент решит продолжить и выдаст команду серверу для подтверждения или отката транзакции, блокировка исчезнет.
Другая частая блокировка - это блокировка сеанса базы данных, которая является общей блокировкой, поддерживаемой соединением, использующим базу данных. Простое действие по поддержанию соединения будет удерживать блокировку, но обычно это только конфликт с операциями, которые пытаются получить блокировку X для базы данных, такими как ALTER DATABASE DDL.
Существуют и более эзотерические случаи, например, блокировки двухфазной фиксации после восстановления, но, вероятно, это не ваши проблемы. То, что вы видите, скорее всего, является одним из тривиальных случаев, когда пользователь запускает что-то из SSMS и забывает зафиксировать, или приложение, которое содержит длинные транзакции, возможно, даже пропускает их.