我正在尝试使用以下查询来识别阻塞会话:
SELECT
v1.sid esid, v1.blocking_session bsid, v1.process, v1.wait_class, v1.event, v1.sql_id, v1.seconds_in_wait waitss, v2.blocking_session bsid2, v2.process,
v2.sql_id, v2.wait_class, v2.event
from
v$session v1, v$session v2
where
v1.blocking_session is not null and v1.blocking_session = v2.sid
order by
waitss desc
这是示例输出:
ESID BSID PROCESS WAIT_CLASS EVENT SQL_ID WAITSS BSID2 PROCESS_1 SQL_ID_1 WAIT_CLASS_1 EVENT_1
2707 2313 8526 Application enq: TX - row lock contention 05v90pbavkptk 11 (null) 28152 (null) Idle SQL*Net message from client
这表明阻塞会话是空闲的。也许我遗漏了一些东西,但我不明白没有执行任何语句的空闲会话如何阻塞任何东西。