oracle 11g ora-00979 bug的处理
2013-05-06 20:15
381 查看
将oracle 10g报表库迁移到 oracle 11g上发现有个存储过程编译时报ora-00979错误,经确定是group by 后面加的游标不能使用,后来用metlink查询发现是11g的一个bug:
ORA-979 bugs on 11.2.0.1 [ID 1085766.1]
修改时间 23-MAR-2012 类型 FAQ 状态 PUBLISHED
Applies to:
Oracle Server - Enterprise Edition - Version: 11.2.0.1.0 to 11.2.0.1.0 - Release: 11.2 to 11.2
Information in this document applies to any platform.
Purpose
The purpose of this document is to have a complete list of ORA-979 bugs with workarounds and their current status on 11.2
Questions and Answers
1. BUG 9411496 - ORA-979 ON 'UNION ALL PUSHED PREDICATE' (Query Optimizer bug)
--- Symptoms ---
When the query has group by and order by, and they use the same attribute and the cursor_sharing is set to a value <> EXACT, the queries fail with ORA-979.
The call stack from the event 979 errorstack is:
... qcuErroer qcuErroep erroep qecgoc qecoby qecpqbcheck qecdrv kkqcttcalo kkqctdrvJPPD kkqjpdctr qksqbApplyToQbc kkqctdrvTD kkqjpddrv kkqdrv kkqctdrvIT apadrv opitca kksFullTypeCheck rpiswu2 kksSetBindType kksfbc ...
--- Changes ---
Following the upgrade to 11.2.
--- Cause ---
Bug 9411496 - ORA-979 ON 'UNION ALL PUSHED PREDICATE'
--- Solution ---
The workarounds are:
1. "_fix_control"="5520732:OFF"
OR
2. optimizer_features_enable = '11.1.0.7'
OR
3."_optimizer_push_pred_cost_based" = false
OR
4."_optimizer_cost_based_transformation" = off
The bug is fixed and there are patches for some platforms. If the workarounds are not acceptable, a one-off patch for the bug should be requested from Oracle Support.
2. Bug 9478304 "LOOP FAILING WITH ORA-00979 NOT A GROUP BY EXPRESSION" (Query Optimizer bug)
--- Symptoms ---
GROUP BY/ORDER BY in PL/SQL cursor loops fails with ORA-979.
1,3,4都是隐含参数,修改必须重启数据库,只有2可以在线修改,修改后编译通过,问题解决。
ORA-979 bugs on 11.2.0.1 [ID 1085766.1]
修改时间 23-MAR-2012 类型 FAQ 状态 PUBLISHED
Applies to:
Oracle Server - Enterprise Edition - Version: 11.2.0.1.0 to 11.2.0.1.0 - Release: 11.2 to 11.2
Information in this document applies to any platform.
Purpose
The purpose of this document is to have a complete list of ORA-979 bugs with workarounds and their current status on 11.2
Questions and Answers
1. BUG 9411496 - ORA-979 ON 'UNION ALL PUSHED PREDICATE' (Query Optimizer bug)
--- Symptoms ---
When the query has group by and order by, and they use the same attribute and the cursor_sharing is set to a value <> EXACT, the queries fail with ORA-979.
The call stack from the event 979 errorstack is:
... qcuErroer qcuErroep erroep qecgoc qecoby qecpqbcheck qecdrv kkqcttcalo kkqctdrvJPPD kkqjpdctr qksqbApplyToQbc kkqctdrvTD kkqjpddrv kkqdrv kkqctdrvIT apadrv opitca kksFullTypeCheck rpiswu2 kksSetBindType kksfbc ...
--- Changes ---
Following the upgrade to 11.2.
--- Cause ---
Bug 9411496 - ORA-979 ON 'UNION ALL PUSHED PREDICATE'
--- Solution ---
The workarounds are:
1. "_fix_control"="5520732:OFF"
OR
2. optimizer_features_enable = '11.1.0.7'
OR
3."_optimizer_push_pred_cost_based" = false
OR
4."_optimizer_cost_based_transformation" = off
The bug is fixed and there are patches for some platforms. If the workarounds are not acceptable, a one-off patch for the bug should be requested from Oracle Support.
2. Bug 9478304 "LOOP FAILING WITH ORA-00979 NOT A GROUP BY EXPRESSION" (Query Optimizer bug)
--- Symptoms ---
GROUP BY/ORDER BY in PL/SQL cursor loops fails with ORA-979.
1,3,4都是隐含参数,修改必须重启数据库,只有2可以在线修改,修改后编译通过,问题解决。
相关文章推荐
- oracle 11g ora-00979 bug的处理
- Oracle 10g 10.2.0.4的group by BUG |ORA-00979 not a GROUP BY expression|
- Oracle 11g 参数修改错误导致数据库无法启动的处理方法.[ORA-01034,ORA-27101]
- Oracle 11g R2 (11.2.0.1.0)impdp 导入报ora-06512错误,处理一例
- Oracle 11g default profile 默认启用密码过期180天 ORA-28001错误处理
- Oracle 10g 10.2.0.4的group by BUG |ORA-00979 not a GROUP BY expression|
- Oracle 11g default profile 默认启用密码过期180天 ORA-28001错误处理
- rman blockrecover ORA-600 [kcrrge.cannotread_inc.1] oracle bug 处理方式
- Oracle 11g ORA-14450: 试图访问已经在使用的事务处理临时表
- Oracle 11g参数修改错误导致数据库无法启动的处理方法.[ORA-01034,ORA-27101,ORA-00824]
- Oracle 11g RAC 补丁升级时报ORA-01565: error in identifying spfileprod.ora 错误处理
- 关于oracle 11g导出数据时 报 ORA 1455错误的处理
- Oracle 11G R2 RAC 启动报错:ORA-01078 ORA-01565 ORA-17503 ORA-12547 处理方法
- 由ORA-00979错误发现ORACLE一个BUG
- oracle 11g的ORA-28001 处理
- Oracle 11g ORA-00845: MEMORY_TARGET not supported on this system 报错处理
- Oracle 11g用exp无法导出空表的处理
- linux下oracle 11g一些简单的操作和一些错误处理
- 关于Oracle full outer join 的bug问题分析及处理
- Oracle ora-03113错误的处理