Troubleshooting Waits for Locks / Enqueues
Other than 'TM', 'TX' and 'UL' (文档 ID 1905157.1)
适用范围:
7i以后的任何平台,任何版本;
目的:
本章节的目的是当面对非普通锁(TM\TX\UL)时我们如何处理;
注:enqueues分两种,一种是普通锁也可叫做
User Type Locks (TM, TX and UL Enqueues),另一种是非普通锁被定义为system enqueues
以下3种enqueue 类型被定义为users type locks
-
TM - DML (Table Manipulation) Enqueue called against a base table or
partition for various table / partition operations that need to be
co-ordinated.
-
TX - Transaction Enqueue used to protect transaction information.
-
UL - User Lock Enqueue used when an application makes use of the DBMS_LOCK
package.
本意旨在讨论system enqueues锁,
如下是system enqueues的部分队列相关的文档, 这里并不是很全,但已经包含了大部分常见队列;
1.DX Distributed Transaction Enqueue: 'enq: DX - contention'
这个DX enqueue是用来保护分布式事物,如果你有问题在在此队列上争用,查看谁holding the dx lock 并查看它等待什么,使用这此信息来定为潜在的争用区域,导向一个问题原因;出现这个等待的时候,将显示为 'enq: DX - contention' ,如下是目前已知的相关的问题点,我们可以参考:
Document
1275884.1 High CPU by Sessions Holding DX Enqueue; Others Waiting 'enq: DX -
contention'
Document
730423.1 Select With Local Function and Remote Tables Using a Dblink Hangs
Due To Enq DX
Document
9773415.8 Bug 9773415 - GTX may deadlock with foreground on DX lock
Document
8477973.8 Bug 8477973 - Multiple open DB links / ORA-2020 / distributed
deadlock / ORA-600 possible using DB Links
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29446986/viewspace-1385045/
,如需转载,请注明出处,否则将追究法律责任。