The enqueue wait event is related to transaction locking.
1. Discover the requested lock type and mode by deciphering the P1 value supplied by the CURRENT_EVENT cursor.
select chr(bitand(,-16777216)/16777215) ||
chr(bitand(,16711680)/65535) lock_type,
mod(,16) lock_mode
from dual; 2. Determine the name of the object the enqueue is for using the ROW_WAIT_OBJ# supplied by the CURRENT_EVENT cursor:
select object_name, subobject_name
from dba_objects
where object_id = ; 3. Identify the blocking session and the information about the lock that is being held, such as the lock type and lock mode and time held using the P2 and P3 values supplied by the CURRENT_EVENT cursor:
select a.sid, a.serial#, a.username, a.paddr, a.logon_time,
a.sql_hash_value, b.type, b.lmode, b.ctime
from v$session a, v$lock b
where a.sid = b.sid
and b.id1 =
and b.id2 =
and b.block = 1;4. Obtain the SQL statement that is associated with the enqueue event using the hash value supplied by the CURRENT_EVENT cursor:
select hash_value, address, piece, sql_text
from v$sqltext
where hash_value =
order by piece;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/178357/viewspace-896952/ ,如需转载,请注明出处,否则将追究法律责任。