zoukankan      html  css  js  c++  java
  • enq: TX

    10.3.6.2.4 TX enqueue:
    
    那些是排他的当一个事务开始它的第一次改变持有知道COMMIT或者ROLLBACK:
    
    Waits for TX in mode 6:
    
    发生当一个session 是等待一个row level lock 被其他session持有。
    
    这个发生在一个yoghurt是更新或者删除一个记录, 另外一个session需要来更新或者删除。
    
    这类TX enqueue 等待对应于 wait event enq: TX - row lock contention.
    
    
    解决方案是第一个持有lock的session执行一个COMMIT或者ROLLBACK
    
    SESSION 1:
    
    SQL> select * from v$mystat where rownum<2;
    
           SID STATISTIC#	   VALUE
    ---------- ---------- ----------
          1178	    0	       0
    SQL> update test set id=200 where id=2;
    
    已更新 1 行。
    
    
    
    SESSION 2:
    
    
    SQL> select * from v$mystat where rownum<2;
    
           SID STATISTIC#	   VALUE
    ---------- ---------- ----------
           584	    0	       0
    
    SQL> 
    SQL> update test set id=300 where id=2;  --hang
    
    
    SQL>  select * from v$lock a where sid in (1178,584) and type in ('TM','TX');
    
    ADDR		 KADDR			 SID TY        ID1	  ID2	   LMODE    REQUEST	 CTIME	    BLOCK
    ---------------- ---------------- ---------- -- ---------- ---------- ---------- ---------- ---------- ----------
    00000001840D1910 00000001840D1968	 584 TX     196631	47429	       0	  6	    81		0
    00007FB180654A68 00007FB180654AC8	 584 TM      99891	    0	       3	  0	    81		0
    00007FB180654A68 00007FB180654AC8	1178 TM      99891	    0	       3	  0	   131		0
    000000017F752FA0 000000017F753018	1178 TX     196631	47429	       6	  0	   131		1
    
    
    
    SQL> select sid, SERIAL#, USERNAME,p1,p2,p3,event, BLOCKING_SESSION from v$session where sid in (1178,584);
    
           SID    SERIAL# USERNAME				     P1 	P2	   P3 EVENT							       BLOCKING_SESSION
    ---------- ---------- ------------------------------ ---------- ---------- ---------- ---------------------------------------------------------------- ----------------
           584	49455 QUERY			     1415053318     196631	47429 enq: TX - row lock contention						   1178
          1178	53813 QUERY			     1650815232 	 1	    0 SQL*Net message from client
    
    SQL> 
    

  • 相关阅读:
    自我介绍 x
    第一次作业 x
    第二次作业 x
    第三次作业 x
    [C#] 用一种更优美的方式来替换掉又多又长的switchcase代码段
    通过设置光标形状实现拖拽控件时跟随一张透明图片的效果
    spring 入门笔记(一)
    PAT IO01. 表格输出(5)
    Maven 安装记
    华为机试 求最大三位数
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13349733.html
Copyright © 2011-2022 走看看