"жертва тупика" в транзакции, как изменить приоритет? - PullRequest
3 голосов
/ 09 июня 2011

Я зарегистрировал исключение, вызванное ASP.NET-приложением.

Сообщение: транзакция (ID процесса 56) был заблокирован на замке | связь буферные ресурсы с другим процессом и был выбран в качестве тупика потерпевший. Перезапустите транзакцию.

Я уверен, что причиной этого было то, что я запускал некоторые selects непосредственно в SSMS для таблиц, которые были запрошены в приложении в то же время.

Так что теперь мой вопрос:

  • Могу ли я изменить приоритет SQL-Server, который выбирает "жертв тупиков"? Я хотел бы выбрать «себя» (SSMS) в качестве жертвы тупика, а не ASP.NET, потому что это приложение, требующее времени, и мне проще повторно выполнить ручной запрос, чем пользователям принять ошибку.

Заранее спасибо.

1 Ответ

5 голосов
/ 09 июня 2011

SET DEADLOCK_PRIORITY позволяет вам точно настроить приоритет

Вы можете указать это в своем сеансе SSMS (для каждого окна запроса) или глобально:

Tools..Options..etc

...