oracle latch chain,【案例】Oracle等待事件latch:cache buffer chain产生原因和解决办法

【案例】Oracle等待事件latch:cache buffer chain产生原因和解决办法

时间:2016-11-01 21:52   来源:Oracle研究中心   作者:HTZ   点击:

天萃荷净

Oracle研究中心案例分析:运维DBA反映在Oracle 11G数据库中执行insert插入语句时出现等待事件latch:cache buffer chain,结合MOS分析由BUG导致。

每次INSERT就会出现latch:cache buffer chain等待事件,并且最多只有几个进程同时INSERT操作,最后通过搜索MOS发现是由于BUG导致的,将表更改为非压缩表就可解决问题。

Bug 13063120 – Inserts of chained rows to COMPRESSed table do unnecessary single block reads (文档 ID 13063120.8)

clip_image001[4]

Bug 13063120 Inserts of chained rows to COMPRESSed table do unnecessary single block reads

This note gives a brief overview of bug 13063120.

The content was last updated on: 23-JUL-2013

Click here for details of each of the sections below.

Affects:

Product (Component)

Oracle Server (Rdbms)

Range of versions believed to be affected

Versions >= 11.2 but BELOW 12.1

Versions confirmed as being affected

11.2.0.3

11.2.0.2

Platforms affected

Generic (all / most platforms affected)

It is believed to be a regression in default behaviour thus:

Regression introduced in 11.2.0.1

Fixed:

The fix for 13063120 is first included in

12.1.0.1 (Base Release)

11.2.0.4 (Server Patch Set)

11.2.0.3.7 Database Patch Set Update

11.2.0.3 Bundle Patch 5 for Exadata Database

11.2.0.3 Patch 3 on Windows Platforms

Interim patches may be available for earlier versions – click here to check.

Symptoms:

Related To:

Performance Of Certain Operations Affected

Waits for “db file sequential read”

Waits for “cell single block physical read”

Waits for “latch: cache buffers chains”

Waits for “buffer busy waits”

ASSM Space Management (Bitmap Managed Segments)

Compressed Data StOracleоorage

Chained or Migrated Rows

INSERT

Description

Excessive buffer gets and/or single block reads may be seen when inserting a rowinto a compressed table where the row needs to be chained across multiple blocks in an ASSM tablespace.

Rediscovery Notes

Two factors are needed to reproduce this problem :

1) The target table is OLTP compressed

2) The inserted row is chained.

Chaining can happen for any of the following reasons :

– Very long row pieces, such as can occur with lengthy LONG or LONG RAW columns, or even just many long VARCHAR2 or similar columns

– Chaining also occurs implicitly(肯定的) for rows > 255 columns, regardless of their length.

The symptoms can show as hiigh “buffer gets” values (eg: in AWR reports) along with high

buffer cache related waits such as:

‘latch: cache buffers chains’ ‘buffer busy waits’ ‘cell single block physical read’ ‘db file sequential read’ etc…

Workaround

Typically chained rows do not gain much from using a compressed tableso if this is common it may be worth considering using an uncompressed table.For LONG / LONG RAW consider migrating to CLOB / BLOB.

Please note: The above is a summary description only. Actual symptoms can vary. Matching to any symptoms here does not confirm that you are encountering this problem. For questions about this bug please consult Oracle Support.

References

Bug:13063120 (This link will only work for PUBLISHED bugs)

Note:245840.1 Information on the sections in this article

本文固定链接: http://www.htz.pw/2014/10/22/11g-insert%e8%af%ad%e5%8f%a5%e5%87%ba%e7%8e%b0latchcache-buffer-chain%e7%ad%89%e5%be%85%e4%ba%8b%e4%bb%b6.html | 认真就输

--------------------------------------ORACLE-DBA----------------------------------------

最权威、专业的Oracle案例资源汇总之【案例】Oracle等待事件latch:cache buffer chain产生原因和解决办法

9bd101509341196819122f36086c9a60.png

你可能感兴趣的:(oracle,latch,chain)