← Sessions & Locks
Oracle · Sessions & Locks

How to check locked objects in Oracle

List Oracle objects currently locked with the holding session, lock mode, and object type.

Tested on11g12c18c19c21c23ai26ai

Join V$LOCKED_OBJECT with V$SESSION and DBA_OBJECTS to see who holds which lock, on what object, and in what mode.

SELECT s.sid, s.serial#, s.username, s.machine, s.program,
       o.owner, o.object_name, o.object_type,
       DECODE(lo.locked_mode,
              0,'None',1,'Null',2,'Row-S',3,'Row-X',
              4,'Share',5,'S/Row-X',6,'Exclusive',
              TO_CHAR(lo.locked_mode)) AS lock_mode,
       s.status, s.last_call_et
FROM   v$locked_object lo
JOIN   v$session       s ON s.sid = lo.session_id
JOIN   dba_objects     o ON o.object_id = lo.object_id
ORDER BY s.sid;
locksv$locked_objectdba_objects