How to check locks on a particular table/object
set lines 400
col Object format a40
col Locker format a6
col Type format a9
SELECT
SESSION_ID "SID",
serial#,
c.status,
c.audsid "ora_sess_id",
OWNER||'.'||OBJECT_NAME "Object",
ORACLE_USERNAME "Locker",
-- mysessf(lockwait) "Wait",
-- lockwait "Wait",
DECODE(LOCKED_MODE,
2, 'ROW SHARE',
3, 'ROW EXCLUSIVE',
4, 'SHARE',
5, 'SHARE ROW EXCLUSIVE',
6, 'EXCLUSIVE', 'UNKNOWN') "Lockmode",
OBJECT_TYPE "Type",
c.ROW_WAIT_ROW#,
c.inst_id
-- PROGRAM "Program"
FROM
SYS.gV_$LOCKED_OBJECT A,
SYS.ALL_OBJECTS B,
SYS.gV_$SESSION c
WHERE
A.OBJECT_ID = B.OBJECT_ID AND
C.SID = A.SESSION_ID
and object_name in ('&object_name')
ORDER BY 1 ASC, 5 Desc
/
Provide table_name or object_name in question to check the locks on it.
========================================================================
No comments:
Post a Comment