enq: TX - row lock contention

    技术2022-05-19  24

    记录两个排查与enq: TX - row lock contention事件相关的SQL

    参考文档: Detecting blocking Locks in 10.2 and above [ID 729727.1]

     

    SQL*Plus: Release 11.2.0.1.0 Production on 星期一 4月 18 16:56:15 2011

    Copyright (c) 1982, 2010, Oracle.  All rights reserved.

    SQL> SELECT DISTINCT A.SID              "waiting sid",  2                  D.SQL_TEXT         "waiting SQL",  3                  A.ROW_WAIT_OBJ#    "locked object",  4                  A.BLOCKING_SESSION "blocking sid",  5                  C.SQL_TEXT         "SQL from blocking session",  6                  c.SQL_ID  7    FROM gV$SESSION A, gV$ACTIVE_SESSION_HISTORY B, gV$SQL C, V$SQL D  8   WHERE A.EVENT = 'enq: TX - row lock contention'  9     AND A.SQL_ID = D.SQL_ID 10     AND A.BLOCKING_SESSION = B.SESSION_ID 11     AND C.SQL_ID = B.SQL_ID 12     AND B.CURRENT_OBJ# = A.ROW_WAIT_OBJ# 13     AND B.CURRENT_FILE# = A.ROW_WAIT_FILE# 14     AND B.CURRENT_BLOCK# = A.ROW_WAIT_BLOCK#;         SQL> SELECT DISTINCT A.SID "waiting sid",  2                  A.EVENT,  3                  C.SQL_TEXT "SQL from blocked session",  4                  B.SID "blocking sid",  5                  B.EVENT,  6                  B.SQL_ID,  7                  B.PREV_SQL_ID,  8                  D.SQL_TEXT "SQL from blocking session"  9    FROM gV$SESSION A, gV$SESSION B, gV$SQL C, gV$SQL D 10   WHERE A.EVENT = 'enq: TX - row lock contention' 11     AND A.BLOCKING_SESSION = B.SID 12     AND C.SQL_ID = A.SQL_ID 13     AND D.SQL_ID = NVL(B.SQL_ID, B.PREV_SQL_ID);


    最新回复(0)