重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 455|回复: 0
打印 上一主题 下一主题

[Oracle] A Query Fails With ORA-4030 On "kkoutlCreatePh,logdef* : kkoabr"

[复制链接]
跳转到指定楼层
楼主
发表于 2025-9-19 19:16:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现象:
On Oracle 11.2.0.2, when attempting to run a large SELECT statement the following errors are raised:

ORA-04030: out of process memory when trying to allocate 188152 bytes (kkoutlCreatePh,logdef* : kkoabr)
ORA-04030: out of process memory when trying to allocate 824504 bytes (pga heap,kco buffer)=

From the incident trace the top memory consumption is in kkoutlCreatePh:

=======================================
TOP 10 MEMORY USES FOR THIS PROCESS
---------------------------------------
95%   12 GB, 68061 chunks: "permanent memory          "  SQL
         kkoutlCreatePh  ds=0x2ad41a095230  dsprt=0x2ad4179a0200 <<<<< -- shows kkoutlCreatePh
4%  502 MB, 62493 chunks: "free memory               "
         top call heap   ds=0xb9203e0  dsprt=(nil)
0%   45 MB, 3349 chunks: "permanent memory          " SQL
         kxs-heap-c      ds=0x2ad4179a0200  dsprt=0xb9203e0
0%   27 MB, 282863 chunks: "opndef: qcopCreateOpnViaM "
         TCHK^f34ec23f   ds=0x2ad4179aff48  dsprt=0xb91f4e0
0%   20 MB, 94734 chunks: "kccdef : qcsvwsci         "
         TCHK^f34ec23f   ds=0x2ad4179aff48  dsprt=0xb91f4e0
0%   16 MB, 427981 chunks: "chedef : qcuatc           "
         TCHK^f34ec23f   ds=0x2ad4179aff48  dsprt=0xb91f4e0
0%   13 MB, 189042 chunks: "logdef: qcopCreateLog     "
         TCHK^f34ec23f   ds=0x2ad4179aff48  dsprt=0xb91f4e0
0%   11 MB, 94809 chunks: "optdef: qcopCreateOptInte "
         TCHK^f34ec23f   ds=0x2ad4179aff48  dsprt=0xb91f4e0
0% 7041 KB, 47437 chunks: "coldef: qcopCreateCol     "
         TCHK^f34ec23f   ds=0x2ad4179aff48  dsprt=0xb91f4e0
0% 3933 KB, 95020 chunks: "idndef : qcuAllocIdn      "
         TCHK^f34ec23f   ds=0x2ad4179aff48  dsprt=0xb91f4e0


原因:
The cause of this problem has been addressed in
Bug 13354720 - ORA-4030 DUE TO HIGH KKOUTLCREATEPH MEMORY ALLOCATION
which has been closed as 'Not a Bug'.


处理方法:
The following workaround is confirmed to prevent the ORA-4030 errors on this memory heap type from occurring:

ALTER SESSION SET "_b_tree_bitmap_plans"=false;

This parameter can also be set at the instance level, in case multiple sessions run into the problem.

Another possible workaround is to set _NO_OR_EXPANSION=TRUE.
Note: This parameter can cause performance issues and needs to be tested first.

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2026-4-18 03:01 , Processed in 0.354742 second(s), 21 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表