ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 10g wait event: read by other session

10g wait event: read by other session

原创 Linux操作系统 作者:v_fantasy 时间:2009-04-12 17:47:18 0 删除 编辑

查了下官方文档:

read by other session

This event occurs when a session requests a buffer that is currently being read into the buffer cache by another session. Prior to release 10.1, waits for this event were grouped with the other reasons for waiting for buffers under the ‘buffer busy wait’ event

其实就是9i中的buffer busy waits event p3=130读/读争用

附一段:

带有原因码130的数据块(类#1)争用

1) 等待集中在数据块上,并且原因码是130,则意味着多个会话并发请求相同的数据块,但该数据块并不在缓冲存储器中,并且必须从磁盘读取。

2) 当多个会话请求不在缓冲存储器中的相同数据块时,ORACLE可以聪明地防止每个会话进行相同的操作系统I/O调用。否则,这可能严重地增加系统I/O的数量,所以,ORACLE只允许一个会话执行实际的I/O,而其他的会话在buffer busy waits上等待块,执行I/O的会话在db file sequential read或db file scattered read等待事件上等待。

3) 可在v$session视图中检查SESSION的注册时间,并且等待事件db file sequential(scattered) read和buffer busy waits等待相同的文件号和块号。

4) 解决方法:优化SQL语句,尽可能地减少逻辑读和物理读;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16158219/viewspace-588730/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-10-07

  • 博文量
    98
  • 访问量
    179087