ITPub博客

首页 > 数字化转型 > ERP > Heap size ***K exceeds notification threshold

Heap size ***K exceeds notification threshold

原创 ERP 作者:liujinwei 时间:2007-10-16 11:28:46 0 删除 编辑

早上上班检查alert文件,发现有很多警告信息

Tue Oct 16 18:41:06 2007
Memory Notification: Library Cache Object loaded into SGA
Heap size 5118K exceeds notification threshold (2048K)
Details in trace file /home/oracle/ora10g/admin/capdb/udump/capdb_ora_19717.trc

[@more@]

早上上班检查alert文件,发现有很多警告信息

Tue Oct 16 18:41:06 2007
Memory Notification: Library Cache Object loaded into SGA
Heap size 5118K exceeds notification threshold (2048K)
Details in trace file /home/oracle/ora10g/admin/capdb/udump/capdb_ora_19717.trc
KGL object name :SELECT /*+rule*/ SYS_XMLGEN(VALUE(KU$), XMLFORMAT.createFormat2('TABLE_T', '7')), KU$.OBJ_NUM FROM SYS.KU$_FHTABLE_VIEW KU$ WHERE NOT (BITAND (KU$.PROPERTY,8192)=8192) AND NOT BITAND(KU$.SCHEMA_OBJ.FLAGS,128)!=0 AND KU$.SCHEMA_OBJ.NAME=:NAME1 AND KU$.SCHEMA_OBJ.OWNER_NAME=:SCHEMA2
上网检索,说是oracle的一个bug在10g10.2.0.1的各个平台上都出现过。 Oracle10g中,在load较大的对象进library cache中时,会记录以上警告。在版本10.2.0.1中,这个定义大对象的阈值是2M,这是有隐含参数_kgl_large_heap_warning_threshold 指定的

从10.2.0.2起,这个参数的默认值被修改为50M。

这个错误跟经典的Ora-04031没有什么太大的关系

解决方法1:升级到10.2.0.2

解决方法2:

SQL> alter system set "_kgl_large_heap_warning_threshold"=8388608 scope=spfile ;

SQL> shutdown immediate

SQL> startup

Applies to:
Oracle Server - Enterprise Edition - Version: 10.2.0.1
This problem can occur on any platform.
.
Symptoms
The following messages are reported in alert.log after 10g Release 2 is installed.

Memory Notification: Library Cache Object loaded into SGA
Heap size 2294K exceeds notification threshold (2048K)

Changes
Installed / Upgraded to 10g Release 2

Cause
A number of issues have been logged with these messages in 10GR2, many are
still open. These look like warning messages that should not cause the program
responsible for these errors to fail.

They appear as a result of new event messaging mechanism
and memory manager in 10g Release 2. The meaning is that the
process is just spending a lot of time in finding free memory
extents during an allocate as the memory may be heavily fragmented.
Real memory messages should be ORA-403x when a real memory problem
occurs.


Solution
In 10g we have a new undocumented parameter that sets the KGL heap size
warning threshold. This parameter was not present in 10GR1.
Warnings are written if heap size exceeds this threshold.

Set _kgl_large_heap_warning_threshold to a reasonable high value
to prevent these warning messages. Value needs to be set in bytes.

If you want to set this to 8192 (8192 * 1024) and are using an spfile:

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

请登录后发表评论 登录
全部评论
  • 博文量
    5
  • 访问量
    8497