处理本故障时,走了点弯路,这告诉我们遇到问题要仔细分析,不要遇到问题就baidu
ORA-00600: internal error code, arguments: [kcfrbd_3], [1], [655361], [1], [655360], [655360], [], []
Current SQL statement for this session:
insert into plan_table (statement_id, timestamp, operation, options,object_node, object_owner, object_name, object_instance, object_type,search_columns, id, parent_id, position, other,optimizer, cost, cardinality, bytes, other_tag, partition_start, partition_stop, partition_id, distribution, cpu_cost, io_cost, temp_space, access_predicates, filter_predicates, projection, time, qblock_name, object_alias, plan_id, depth, remarks, other_xml ) values(:1,:2,:3,:4,:5,:6,:7,:8,:9,:10,:11,:12,:13,:14,:15,:16,:17,:18,:19,:20,:21,:22,:23,:24,:25,:26,:27,:28,:29,:30,:31,:32,:33,:34,:35,:36)
这个时候会使用的临时表。
为了验证,我创建了一个临时表,同样触发了这个错误,也是百试不爽。
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [kcfrbd_3], [1], [655361], [1], [655360], [655360], [], []
Current SQL statement for this session:
create global temporary table FS.test_temp
on commit preserve rows
as
select * from FS.T_ORDER partition(P_20120101)
trace文件如附件billhist_ora_11866.trc
感觉这个还是和临时表空间有关系。
重新创建一新临时表空间
create temporary tablespace temp1
tempfile '+DATA/oradata/hist/temp_test_01.dbf' size 1000M
alter user sys temporary tablespace temp1;
14:16:57 sys@billhist> create global temporary table FSCRECON.test_temp
14:17:33 2 on commit preserve rows
14:17:33 3 as
14:17:33 4 select * from FS.T_ORDER partition(P_20120101);
select * from FS.T_ORDER partition(P_20120101)
*
ERROR at line 4:
ORA-01652: unable to extend temp segment by 128 in tablespace TEMP1
看,不在报ora-00600了,现在只是临时表空间不够用而已。
将临时表空间改回去,看看ora-00600是够能重现
alter user sys temporary tablespace temp;
14:18:56 sys@billhist> create global temporary table FS.test_temp
14:19:04 2 on commit preserve rows
14:19:04 3 as
14:19:04 4 select * from FS.T_ORDER partition(P_20120101);
select * from FSCRECON.T_ORDER partition(P_20120101)
*
ERROR at line 4:
ORA-00600: internal error code, arguments: [kcfrbd_3], [1], [655361], [1], [655360], [655360], [], []
Ora-00600报错显现重现。
问题点应该在这里。将数据库默认临时表空间切换为新创建的temp1
14:19:08 sys@billhist> alter database tempfile '+DATA/oradata/billhist/temp_test_01.dbf' resize 10G;
Database altered.
Elapsed: 00:00:04.54
14:22:28 sys@billhist> ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMP1;
Database altered.
Elapsed: 00:00:00.13
创建临时表
14:25:39 sys@billhist> create global temporary table FS.test_temp
14:33:38 2 on commit preserve rows
14:33:38 3 as
14:33:38 4 select * from FS.T_ORDER partition(P_20120101);
Table created.
Elapsed: 00:00:29.14
14:34:13 sys@billhist> drop tablespace temp including contents and datafiles;
Tablespace dropped.
Elapsed: 00:00:03.76
目前现象已经消失,正在手动手机统计信息,看看是否会触发,如果不在触发,问题应该已经解决
ORA-00600: internal error code, arguments: [kcfrbd_3], [1], [655361], [1], [655360], [655360], [], []
Current SQL statement for this session:
insert into plan_table (statement_id, timestamp, operation, options,object_node, object_owner, object_name, object_instance, object_type,search_columns, id, parent_id, position, other,optimizer, cost, cardinality, bytes, other_tag, partition_start, partition_stop, partition_id, distribution, cpu_cost, io_cost, temp_space, access_predicates, filter_predicates, projection, time, qblock_name, object_alias, plan_id, depth, remarks, other_xml ) values(:1,:2,:3,:4,:5,:6,:7,:8,:9,:10,:11,:12,:13,:14,:15,:16,:17,:18,:19,:20,:21,:22,:23,:24,:25,:26,:27,:28,:29,:30,:31,:32,:33,:34,:35,:36)
这个时候会使用的临时表。
为了验证,我创建了一个临时表,同样触发了这个错误,也是百试不爽。
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [kcfrbd_3], [1], [655361], [1], [655360], [655360], [], []
Current SQL statement for this session:
create global temporary table FS.test_temp
on commit preserve rows
as
select * from FS.T_ORDER partition(P_20120101)
trace文件如附件billhist_ora_11866.trc
感觉这个还是和临时表空间有关系。
重新创建一新临时表空间
create temporary tablespace temp1
tempfile '+DATA/oradata/hist/temp_test_01.dbf' size 1000M
alter user sys temporary tablespace temp1;
14:16:57 sys@billhist> create global temporary table FSCRECON.test_temp
14:17:33 2 on commit preserve rows
14:17:33 3 as
14:17:33 4 select * from FS.T_ORDER partition(P_20120101);
select * from FS.T_ORDER partition(P_20120101)
*
ERROR at line 4:
ORA-01652: unable to extend temp segment by 128 in tablespace TEMP1
看,不在报ora-00600了,现在只是临时表空间不够用而已。
将临时表空间改回去,看看ora-00600是够能重现
alter user sys temporary tablespace temp;
14:18:56 sys@billhist> create global temporary table FS.test_temp
14:19:04 2 on commit preserve rows
14:19:04 3 as
14:19:04 4 select * from FS.T_ORDER partition(P_20120101);
select * from FSCRECON.T_ORDER partition(P_20120101)
*
ERROR at line 4:
ORA-00600: internal error code, arguments: [kcfrbd_3], [1], [655361], [1], [655360], [655360], [], []
Ora-00600报错显现重现。
问题点应该在这里。将数据库默认临时表空间切换为新创建的temp1
14:19:08 sys@billhist> alter database tempfile '+DATA/oradata/billhist/temp_test_01.dbf' resize 10G;
Database altered.
Elapsed: 00:00:04.54
14:22:28 sys@billhist> ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMP1;
Database altered.
Elapsed: 00:00:00.13
创建临时表
14:25:39 sys@billhist> create global temporary table FS.test_temp
14:33:38 2 on commit preserve rows
14:33:38 3 as
14:33:38 4 select * from FS.T_ORDER partition(P_20120101);
Table created.
Elapsed: 00:00:29.14
14:34:13 sys@billhist> drop tablespace temp including contents and datafiles;
Tablespace dropped.
Elapsed: 00:00:03.76
目前现象已经消失,正在手动手机统计信息,看看是否会触发,如果不在触发,问题应该已经解决
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29033984/viewspace-768663/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29033984/viewspace-768663/