APPLIES TO:

Oracle Server - Enterprise Edition - Version: 10.2.0.5<max_ver> and later   [Release: 10.2 and later ]
Information in this document applies to any platform.

SYMPTOMS

The following symptoms are required for this article to be applicable :-

a) The database version is specifically 10.2.0.5
b) The database sees many DROP/CREATE activities
c) In ORA-4031 trace files, we will see subpool information similar to :-

===========================
Memory Utilization of Subpool 1
===========================
Allocation Name Size

"free memory " 107844008 
"obj stat memo " 413473896  <==== large allocations

There might be many subpools, but the pattern to look for is that we see plenty of free memory and high values for allocation "obj stat memo"

d) The following SQL queries will return results that continually increase :-

select * from v$sgastat where name = 'obj stat memo';
select count(distinct fts_objd) from x$ksolsfts;

e) The following SQL will show a continual steady increase for "obj stat memo"

SELECT * FROM
(SELECT NAME, BYTES/(1024*1024) MB
FROM V$SGASTAT
WHERE POOL = 'shared pool'
ORDER BY BYTES DESC)
WHERE ROWNUM <= 10;

f) Using _disable_objstat_del_broadcast=false stops the ORA-04031 errors and the SQL in (D) and (E) no longer shows an increase on "obj stat memo"

This article is solely written for 10.2.0.5.  If any other version or PSR is being used the article will not be appropriate.  For versions prior to10.2.0.5, Note.9737897.8 can be considered but this is beyond the scope of this document. 

CHANGES

The database might have been  patched or upgraded to 10.2.0.5 but the problem can also be seen on a database that has only ever existed as 10.2.0.5.

CAUSE

On 10.2.0.5 an architectural change was made to switch off the publishing of "obj stat del channel" messages by default.  This can lead to excessive growth of "obj stat memo" memory allocation.

SOLUTION

On 10.2.0.5, and only for 10.2.0.5, we have introduced the hidden parameter :-

_disable_objstat_del_broadcast

If you are seeing ORA-04031 related to the symptoms reported then this parameter can be set to FALSE and by doing so we will no longer see the growth of "obj stat memo" that  potentially leads to ORA-04031.

This parameter has been instructed by development to be used as the solution to ORA-04031 with the symptoms reported. There is no patch fix and no patch fix will be made.  The hidden parameter will not cause any problems to the database and it must not be accidentally left within the init/spfile when/if the database is upgraded as startup would fail with :-

LRM-00101: unknown parameter name '_disable_objstat_del_broadcast'
ORA-01078: failure in processing system parameters

Again the parameter is ONLY for 10.2.0.5.

ORA-04031 With Leak in "OBJ STAT MEMO" Allocations Seen in V$SGASTAT on 10.2.0.5 (文档 ID 1350050.1)的更多相关文章

  1. ORACLE从共享池删除指定SQL的执行计划

    Oracle 11g在DBMS_SHARED_POOL包中引入了一个名为PURGE的新存储过程,用于从对象库缓存中刷新特定对象,例如游标,包,序列,触发器等.也就是说可以删除.清理特定SQL的执行计划 ...

  2. Oracle 从共享池删除指定SQL的执行计划

    ORACLE从共享池删除指定SQL的执行计划 2016-12-29 11:14 by 潇湘隐者, 2836 阅读, 0 评论, 收藏, 编辑 Oracle 11g在DBMS_SHARED_POOL包中 ...

  3. [转帖]Oracle 12cR2使用经验

    大规模升级来临,谈谈Oracle 12cR2使用经验 随着2019年2月13日,Oracle 19c (Oracle 12.2.0.3) for Exadata 版本发布,Oracle 12cR2体系 ...

  4. ACFS-9459: ADVM/ACFS is not supported on this OS version

    环境:RHEL 7.3 + Oracle 12.2.0.1 RAC 现象:acfs资源状态不正常,asmca图形也没有acfs相关内容,无法使用acfs. 1.具体现象 2.定位bug 3.解决问题 ...

  5. AMM调整为ASMM命令(关闭memory_target自动管理方式)

    客户生产系统,AIX oracle 11.2.0.4 数据库版本,2节点RAC. 操作系统内存,均为125G,调整前,使用oracle memory_target自动调整分配方式,memory_max ...

  6. elasticsearch系列四:搜索详解(搜索API、Query DSL)

    一.搜索API 1. 搜索API 端点地址 从索引tweet里面搜索字段user为kimchy的记录 GET /twitter/_search?q=user:kimchy 从索引tweet,user里 ...

  7. elasticsearch最全详细使用教程:搜索详解

    一.搜索API 1. 搜索API 端点地址从索引tweet里面搜索字段user为kimchy的记录 GET /twitter/_search?q=user:kimchy从索引tweet,user里面搜 ...

  8. SQL Tuning Advisor一个错误ORA-00600: internal error code, arguments: [kesqsMakeBindValue:obj]

    跑SELECT dbms_sqltune.report_tuning_task(:tuning_task) FROM dual;  错误消息,如下面: ORA-00600: internal erro ...

  9. 【翻译自mos文章】Windows平台下的 Oraagent Memory Leak

    来源于: Oraagent Memory Leak (文档 ID 1956840.1) APPLIES TO: Oracle Database - Enterprise Edition - Versi ...

随机推荐

  1. Android Intent 用法全面总结

    [代码全屏查看]-Android Intent 用法全面总结 // [1].[代码] 调用拨号程序 跳至 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] / ...

  2. WPF性能改善---之化整为零(蜂窝的衍生应用)

    在有的项目中,有这样的需求,由于显示器的显示区域是有限的,而软件却要展示一个远大于显示区域的一些元素,此时就要引入放大.缩小.拖动等UI控制技术,而在使用这些技术的同时,在后台有效的控制渲染元素的个数 ...

  3. 请使用GameBench.jar 文件启动 GameBench服务

    请使用GameBench.jar 文件启动 GameBench服务 电脑上安装JAVA JRE:http://www.oracle.com/technetwork/java/javase/downlo ...

  4. SQL SERVER 2008安装时出现不能在控件上调用 Invoke 或 BeginInvoke错误 解决方法

    或者 SQL SERVER 2008安装时要求重启,但重启后仍要求重启.都可以使用此方法. 注册表的 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet ...

  5. 预定义宏__GNUC__和_MSC_VER

    一.预定义__GNUC__宏 1 __GNUC__ 是gcc编译器编译代码时预定义的一个宏.需要针对gcc编写代码时, 可以使用该宏进行条件编译. 2 __GNUC__ 的值表示gcc的版本.需要针对 ...

  6. usaco 2010年3月银组题解

    usaco银组解题报告 一.石子游戏如果把‘O’当作0,‘X’当做1,则N个洞的每一种状态都可以看做是一个N位二进制数.于是,这个问题就变成了求环绕的N位格雷码.幸运的是,这个结构很容易就能够用一个简 ...

  7. 【转】T-SQL 教程

    USE [test] GO /****** Object: StoredProcedure [dbo].[PageIndex] Script Date: 12/07/2011 10:26:36 *** ...

  8. 判断apache是否启动的脚本

    #!/bin/bashhttp=$(netstat -tunpl | awk '{printf $4 "\n"}' | grep '80$')if [ -z "$http ...

  9. 最大流问题Ford-Fulkerson方法(转)

    本篇主要讲解最大流问题的Ford-Fulkerson解法.可是说这是一种方法,而不是算法,因为它包含具有不同运行时间的几种实现.该方法依赖于三种重要思想:残留网络,增广路径和割.本文将会详细介绍这些内 ...

  10. ahk鼠标连击工具

    ;x = 0开始点击,x = 1暂停点击 ^::ck_start() ^::ck_end() ck_start() { x = { Click } } ck_end() { x = else x = ...