Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

9

积分

0

好友

0

主题
1#
发表于 2012-7-9 21:42:14 | 查看: 3296| 回复: 2
刘大,我做了个测试,版本:11.2.0.1 for windows 64bit

开两个session,同时执行:

declare
  x varchar(1);
begin
  for i in 1..1000000 loop
    select * into x from dual;
  end loop;
end;

然后我能偶尔得到这两个session的等待事件是:cursor: pin S

介绍这个事件的资料不多,请问能解释一下么?

1)这个等待代表着什么?
2)在什么情况下会发生?
2#
发表于 2012-7-11 22:33:34
ODM FINDING:
cursor: pin S
 We try to pin the cursor in shared mode (for execution for example)
 Mutex for child cursor pinning is "in flux", someone is in process of
pinning that same cursor already.
 We have to wait until the other session completes their pin request

你可以理解为在有其他session在我之前已经在pin cursor的过程中时, 我也要以s mode pin这个cursor,此时需要等待其他session完成pin request才轮到本session。

回复 只看该作者 道具 举报

3#
发表于 2012-7-14 22:22:08
多谢刘大,我大概明白了。

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-11-16 01:53 , Processed in 0.051827 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569