DeadLock. Один сеанс - несколько процессов.
Когда возникает DeadLock при работе нескольких сеансов Axapta с этим успешно справляется, просто прекращая один из процессов и эту ситуацию можно обработать по try...catch.
Однако есть ситуации, когда один сеанс открывает несколько процессов. И вот здесь возможны мертвые блокировки примерно такого вида
Сеанс = 1 SPID = 1,2
Сеанс = 3 SPID = 3
SPID 1 блокирует SPID 3
SPID 3 блокирует SPID 2
Axapta такую ситуацию "не видит", поскольку вроде бы нет явной взаимной блокировки. Как следствие, оба сеанса висят, пока вручную не прибьешь один из процессов.
Существует ли способ борьбы с такими ситуациями? В смысле, чтобы не было необходимости вручную отслеживать такие подвисания?
AXAPTA 2.5 SP3 + MS SQL 2005 в режиме совместимости с 2000
|