Oracle Locks
Manchmal kann es hilfreich sein direkt auf Datenbankebene zu schauen welche Session welchen Lock hält um zu sehen warum es wo genau klemmt und zum Beispiel ein Workprozess nicht weiter arbeiten kann oder die erwarteten Updates noch immer nicht fertig gestellt wurden.
Ich persönlich finde folgenden Statements dabei hilfreich.
Mit diesem Statement kann man schnell und einfach sehen, welche Session einen Lock hält und welche andere Session genau auf diesen Lock wartet:
SQL> set pages 200 lines 200 SQL> select HOLDING_SESSION, MODE_HELD, WAITING_SESSION from DBA_WAITERS order by HOLDING_SESSION; HOLDING_SESSION MODE_HELD WAITING_SESSION --------------- ---------------------------------------- --------------- 147 Exclusive 918 147 Exclusive 4621 147 Exclusive 4626 147 Exclusive 428 428 None 918 428 None 4621 428 None 4626 428 None 428 4621 None 4626 4621 None 4621 4621 None 918 4621 None 428 4626 None 4626 4626 None 4621 4626 None 918 4626 None 428 16 rows selected. SQL>