客户11.2.0.2环境数据库出现这个ORA-600错误。
详细错误信息如下:
Tue Jun 12 09:50:47 2012
Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl2/trace/orcl2_ora_28252.trc
(incident=329000):
ORA-00600: internal error code, arguments: [qctopn1], [], [], [], [], [], [],
[], [], [], [], []
Incident details in: /u01/app/oracle/diag/rdbms/orcl/orcl2/incident/incdir_329000/orcl2_ora_28252_i329000.trc
Tue Jun 12 09:51:21 2012
Dumping diagnostic data in directory=[cdmp_20120612095121], requested by
(instance=2, sid=28252), summary=[incident=329000].
Tue Jun 12 09:51:21 2012
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Tue Jun 12 09:51:22 2012
Sweep [inc][329000]: completed
Sweep [inc2][329000]: completed
导致这个错误的原因在于CREATE TABLE语句执行的时候尝试对子查询接嵌套。详细的描述可以参考Bug 10398457 - ORA-600 [qctopn1] from disjunctive Subquery Unnest on a CREATE TABLE as SELECT [ID 10398457.8]。这个错误确认影响的数据库版本为11.2.0.2,Oracle在11.2.0.3中FIXED了这个问题。
除了版本升级外,还可以通过设置隐含参数"_optimizer_cost_based_transformation"为FALSE,或者设置"_fix_control"的值为"4768040:OFF"来避免子查询的UNNEST。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4227/viewspace-735535/ ,如需转载,请注明出处,否则将追究法律责任。