enq: SQ

                                   p1           p1raw                p2    p3
2	1598	enq: SQ - contention	1397817350	0000000053510006	166684	0
3	1601	latch: library cache	2220128352	0000000084547860	215	0
4	1607	enq: SQ - contention	1397817350	0000000053510006	166684	0
5	1611	enq: SQ - contention	1397817350	0000000053510006	166684	0
6	1612	enq: SQ - contention	1397817350	0000000053510006	166684	0
7	1623	Streams AQ: qmn slave idle wait	0	00	0	0
8	1624	enq: SQ - contention	1397817350	0000000053510006	166684	0

enq: SQ - contention事件的P2值是sequence的object_id

SQL> select object_name from dba_objects where object_id=166684;

OBJECT_NAME
--------------------------------------------------------------------------------
SEQ1

创建Sequence赋予的CACHE值较小时,有enq:SQ-contention等待增加的趋势。

CACHE值较小时,内存上事先CACHE的值很快被耗尽,这时需要将数据字典信息物理修改后,再次执行CACHE的工作。

在此期间,因为一直拥有SQ锁,相应的enq:SQ-contention事件的等待时间也会延长。很不幸的是,在创建sequence时,将CACHE值的缺省值设定为较小的20.

因此创建使用量多的Sequence时,CACHE值应该取1000以上的较大值。

原文地址:https://www.cnblogs.com/hzcya1995/p/13352216.html