Един възможен начин може да бъде да увеличите INIT.ORA параметър за distributed_lock_timeout на по-голяма стойност. Това ще ви даде по-дълго време за наблюдение на v$lock маса, тъй като ключалките ще издържат по-дълго.
За да постигнете автоматизация на това, можете да
-
Изпълнявайте SQL задание на всеки 5-10 секунди, което регистрира стойностите на
v$lockили заявката, която sandos е дала по-горе в таблица и след това я анализирайте, за да видите коя сесия е причинила заключването. -
Изпълнете
STATSPACKилиAWRДокладвай. Сесиите, които са били заключени, трябва да се покажат с дълго изминало време и следователно могат да бъдат идентифицирани.
v$session има още 3 колони blocking_instance, blocking_session, blocking_session_status който може да бъде добавен към заявката по-горе, за да даде картина на това какво се заключва.