powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Процедура убивается по deadlock, как отследить в каком месте это происходит?
10 сообщений из 10, страница 1 из 1
Процедура убивается по deadlock, как отследить в каком месте это происходит?
    #32072024
Long
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Процедура убивается по deadlock victim, как отследить в каком именно месте это происходит?
Код перелопатил весь, либо чего-то не понимаю либо одно из двух. Процедура запускается в job'е. Мог бы по её неудачному завершению что-нибудь сделать, но не знаю что.
Помогите!!! :-)
...
Рейтинг: 0 / 0
Процедура убивается по deadlock, как отследить в каком месте это происходит?
    #32072063
VAT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Грубо - в процедуре сразу открыть транзакцию и явно заблокировать все используемые таблицы в том же порядке, что и в конкурирующих процессах. Типа:
declare @ForLock int
select @ForLock=1 from tabl1 (TABLOCK) where (1=2)
select @ForLock=1 from tabl2 (TABLOCK) where (1=2)
...
...
Рейтинг: 0 / 0
Процедура убивается по deadlock, как отследить в каком месте это происходит?
    #32072073
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно отловить в Profiler'е.
Можно в ErrorLog'е SQL Server'а при помощи trace flag'а 1204.
...
Рейтинг: 0 / 0
Процедура убивается по deadlock, как отследить в каком месте это происходит?
    #32072099
Long
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2(VAT) Сорри, я не до конца описал ситуацию:
Процедура читает данные из очень активно используемой базы (1C'ная она), читает везде с nolock. Локирует по идее только свои собственные служебные таблицы, которые никто кроме неё и не трогает. Вот поэтому я и не понимаю, как она может по deadlock victim валится.
2(jimmers) В профайлере не вариант, т.к. она падает 2-3 в день, а профайлер очень сильно тормозить сервер будет.
А вот про errorlog попробую, спасибо.
...
Рейтинг: 0 / 0
Процедура убивается по deadlock, как отследить в каком месте это происходит?
    #32072114
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Журналы тоже будут большие, не обольщайтесь.
Команду все знают, конечно, но на всякий случай:

Код: plaintext
DBCC TRACEON( 1204 , 3605 ,- 1 )
...
Рейтинг: 0 / 0
Процедура убивается по deadlock, как отследить в каком месте это происходит?
    #32072189
Long
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А 3605 что такое?
...
Рейтинг: 0 / 0
Процедура убивается по deadlock, как отследить в каком месте это происходит?
    #32072193
VAT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всё равно и "свои" таблицы не мешает сразу заблокировать. Может, что и проявится.
А SQL = MSSQL2000? Что-то давно припоминаю, что ЕМ кажется, при запуске Current Activity, сцеплялся на какой-то версии во временной базе с чужими таблицами.
...
Рейтинг: 0 / 0
Процедура убивается по deadlock, как отследить в каком месте это происходит?
    #32072366
Long
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2(jimmers) Огромное спасибо - нашёл касяк.
2(VAT) Тоже большущее спасибо - твоим способом и исправил касяк :-)
SQL=2000
...
Рейтинг: 0 / 0
Процедура убивается по deadlock, как отследить в каком месте это происходит?
    #32072411
nik_rom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2(Long )
у нас похожая ситуация с базой... есть вопросы, можно ли написать на ваш мэйл или пообщаться по аське ?
...
Рейтинг: 0 / 0
Процедура убивается по deadlock, как отследить в каком месте это происходит?
    #32072450
Long
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2(nik_rom) ICQ: 40926487
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Процедура убивается по deadlock, как отследить в каком месте это происходит?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]