Oracle Bug 某脚本一直处于执行状态,等待事件为:asynch descriptor resize

Posted My Life My Dream!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle Bug 某脚本一直处于执行状态,等待事件为:asynch descriptor resize相关的知识,希望对你有一定的参考价值。

问题描述:

      项目反馈数据库服务器的CPU持续100%的情况,跟踪发现很多活动会话的等待事件是“asynch descriptor resize”,并且这些会话一直处于Active状态,而这些会话执行的查询并不复杂,感觉很是奇怪。

      查阅了一下资料,对应Oracle的Bug 9829397,Excessive CPU and many "asynch descriptor resize" waits for SQL using Async IO,此BUG发生于11.2.0.1和11.2.0.2上,11.2.0.3修复了此问题。

      设置隐藏参数也是一个解决办法:将disk_asynch_io设置为false来禁用异步I/O: alter system set disk_asynch_io=false

 

修改参数配置并重启后,问题依旧,该sql仍然处于一直执行状态,但等待事件变为:db file scattered read

尝试将db_file_multiblock_read_count 调大,问题解决。

SQL> show parameter db_file_multiblock_read_count 

SQL> alter system set db_file_multiblock_read_count=10000;    --试图变更为超大值

经测试,最后将 db_file_multiblock_read_count  的值定义为 512 (OR 256、128 ?)

 

 

 

 

以上是关于Oracle Bug 某脚本一直处于执行状态,等待事件为:asynch descriptor resize的主要内容,如果未能解决你的问题,请参考以下文章

oracle 10g R2数据库,用pl/sql developer 删除数据时,执行DELETE FROM TABLE1后就一直停在执行的状态,

程序一直处于Accept状态,无法调度运行

Oracle死锁处理

Oracle死锁查询及处理

shell脚本实现命令执行等待状态显示的三种方式

Oracle数据库无响应故障处理方式