En mulig måde kunne være at øge INIT.ORA parameter for distributed_lock_timeout til en større værdi. Dette vil så give dig længere tid til at observere v$lock bord, da låsene ville holde længere.
For at opnå automatisering af dette kan du enten
-
Kør et SQL-job hvert 5.-10. sekund, der logger værdierne for
v$lockeller den forespørgsel, som sandos har givet ovenfor i en tabel, og analyser den derefter for at se, hvilken session der forårsagede låsen. -
Kør en
STATSPACKeller enAWRRapport. De sessioner, der blev låst, skulle dukke op med lang forløbet tid og kan derfor identificeres.
v$session har 3 kolonner mere blocking_instance, blocking_session, blocking_session_status som kan tilføjes til forespørgslen ovenfor for at give et billede af, hvad der bliver låst.