Иногда я получаю такое исключение на не очень загруженном сервере SQL:
Transaction (Process ID 57) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.
Line number: 1
Error Number: 1205
Procedure:
Server name: P01
Error Source: .Net SqlClient Data Provider
Error State: 47
Я не могу его воспроизвести. Я попытался выполнить несколько запросов от разных клиентов одновременно, но этого не произошло. Как лучше всего справиться с такой проблемой, когда она происходит внутри процедуры или внутри триггера? Я имею в виду, как перезапустить транзакцию?
Как это сделать, когда возникает исключение внутри процедуры, вызванной из триггера, который был вызван вставкой, выполненной некоторой процедурой (то есть: процедура01 -> вставка -> триггер -> процедура02 !)