Skip to Main Content

Chinese

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

应用程序并行测试取序列的下一个值时一直处于等待状态

957155Sep 21 2012 — edited Sep 21 2012
测试人员反映应用程序中:select ad.CA_BUSI_REC_SEQ.CURRVAL from dual; 通过这样取序列的下一个值时一直处于等待状。
创建序列语句如下:
create sequence AD.CA_BUSI_REC_SEQ
minvalue 1
maxvalue 999999999999
start with 217643
increment by 1
cache 1000;

他们测试时用的并行,这个序列取出来的值只做为 主键用,不用管是否连续,唯一 就可以。
之前 没有cache,我怀疑是nocache的原因,昨天将cache改为1000的。不过今天 还是这样的现象。
当时发现一个idle等待事件,对应 的SQL就是select ad.CA_BUSI_REC_SEQ.CURRVAL from dual;
目前的等待事件如 下:
EVENT INST1 INST2 INST3 INST4 TOTAL EVENT_TYPE
-------------------------------------------------------- ------- ----- ----- ----- ----- ----------
SQL*Net message from client 424 0 0 0 424 idle
rdbms ipc message 15 0 0 0 15 idle
DIAG idle wait 2 0 0 0 2 idle
VKTM Logical Idle Wait 1 0 0 0 1 idle
smon timer 1 0 0 0 1 idle
pmon timer 1 0 0 0 1 idle
Space Manager: slave idle wait 1 0 0 0 1 idle
VKRM Idle 1 0 0 0 1 idle
Streams AQ: qmn slave idle wait 1 0 0 0 1 idle
Streams AQ: qmn coordinator idle wait 1 0 0 0 1 idle
SQL*Net more data from client 1 0 0 0 1 idle
Streams AQ: waiting for time management or cleanup tasks 1 0 0 0 1 idle
--------------------TOTAL_SESSION---------------------- 450 0 0 0 450 ----

这个是什么原因,还需要什么样的信息??
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Oct 19 2012
Added on Sep 21 2012
4 comments
569 views