enq: RO - fast object reuse

SQL> l
  1* select name, parameter1, parameter2, parameter3 from v$event_name where name like '&event'
SQL> /
Enter value for event: enq: RO - fast object reuse
old   1: select name, parameter1, parameter2, parameter3 from v$event_name where name like '&event'
new   1: select name, parameter1, parameter2, parameter3 from v$event_name where name like 'enq: RO - fast object reuse'

NAME                           PARAMETER1      PARAMETER2      PARAMETER3
------------------------------ --------------- --------------- ---------------
enq: RO - fast object reuse    name|mode       2               0

SQL>

简述:
This note covers issues where the Guided Resolution Tool indicates contention on "enq: RO - fast object reuse". In effect this enqueue serializes the truncate/drop operations given concurrently and usually manifests itself when dropping objects or truncating tables.

Problem Confirmation:问题确认:
    ~The time spent actively in the local database is significant
    ~Only certain sessions, queries or jobs are experiencing slowness (not throughout the database)
    ~"enqueue: RO - fast object reuse" is a significant component of the DB time
    ~Objects are being dropped or tables truncated

"enq: RO - fast object reuse"

The RO enqueue known as "Multiple object resue" enqueue, is used to synchronise operations between foreground process and a background process such as DBWR or CKPT. It is typically used when dropping objects or truncating tables.

Following is the sequence of events When a truncate/drop occurs:
    1.Foreground process acquires the "RO" enqueue in exclusive mode
    2.Cross instance calls (or one call if it is a single object) are issued ("CI" enqueue is acquired)
    3.CKPT processes on each of instances requests the DBWR to write the dirty buffers to the disk and invalidate all the clean buffers.
    4.After DBWR completes writing all blocks, the foreground process releases the RO enqueue.
    
Application Logic:应用逻辑
由于这是并发问题,因此应该检查逻辑和进程以消除不必要的DROP或TRUNCATE命令。
您也可以考虑使用临时表作为替代,因为所用的机制不适用于临时对象.
另一个选择是将导致问题的操作重新安排到较低并发期间.

调整缓冲区缓存:
RO入队依赖于检查点,因此调整DBWR和缓冲区高速缓存性能可能有助于减少RO入队锁定机制的等待时间。see:Document 62172.1 Understanding and Tuning Buffer Cache and DBWR
等待的时间也受扫描缓冲区高速缓存所需的时间的影响,以便将脏块写入磁盘并从缓存刷新。 缓冲区缓存越大,找到这些块所需的时间就越长。 如果缓冲区缓存非常大,那么减小缓冲区大小对于提高性能已经是有影响的
    


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

转载于:http://blog.itpub.net/31397003/viewspace-2149626/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值