在测试库alert log中发现了ora-600
Thu Mar 28 22:01:44 2013
Errors in file /oracle/admin/devdb/bdump/devdb_j001_21471.trc:
ORA-00600: internal error code, arguments: [qkssao2s1], [], [], [], [], [], [], []
Thu Mar 28 22:01:49 2013
Errors in file /oracle/admin/devdb/bdump/devdb_j001_21471.trc:
ORA-00600: internal error code, arguments: [ORA-00600: internal error code, arguments: [qkssao2s1], [], [], [], [], [], [], []
ORA-06512: at “SYS.DBMS_STATS”, line 18963
], [], [], [], [], [], [], []
查看trace中的信息
*** 2013-03-28 22:01:44.652 ksedmp: internal or fatal error ORA-00600: internal error code, arguments: [qkssao2s1], [], [], [], [], [], [], [] Current SQL statement for this session: select /*+ no_parallel(t) no_parallel_index(t) dbms_stats cursor_sharing_exact use_weak_name_resl dynamic_sampling(0) no_monitoring */ count(*) from "ICME5 "."ICME_NOPROJECT_SCORE" sample block ( .0174997419,1) t ----- PL/SQL Call Stack ----- object line object handle number name 0x206b4cd98 8290 package body SYS.DBMS_STATS 0x206b4cd98 12013 package body SYS.DBMS_STATS 0x206b4cd98 12518 package body SYS.DBMS_STATS 0x206b4cd98 12964 package body SYS.DBMS_STATS 0x206b4cd98 18889 package body SYS.DBMS_STATS
根据MOS 中的信息,和当前的数据库版本是10201
With the stack trace:
qkssaOptdef2Struct <- qkssaSamplePushdown <- qkaMarkQkn <- qkaMarkQkn <- qkadrv2Pre <- qkadrv2 <- opitca 
可以确认是bug 5005939
This causes ORA-600 [qkssa02S1] when running a query against a table with a functional index which contains a constant.
查询trace 中指定表的索引情况
SQL> select index_name,index_type from USER_INDEXES WHERE LOWER(TABLE_NAME)='icme_noproject_score';
INDEX_NAME                     INDEX_TYPE
------------------------------ ---------------------------
UK_NOPROJECT_SCORE             NORMAL
...
IDX_NOPROJECT_SCORE_SPECID     NORMAL
IDX_CNT                        FUNCTION-BASED NORMAL
IDX_ACTIVITY_DATE              NORMAL
IDX_I_NOPROJECT_SCORE_SAC      NORMAL
SQL> set long 1000
SQL> select dbms_metadata.get_ddl('INDEX','IDX_CNT') FROM DUAL;
DBMS_METADATA.GET_DDL('INDEX','IDX_CNT')
--------------------------------------------------------------------------------
  CREATE INDEX "ICME5"."IDX_CNT" ON "ICME5"."ICME_NOPROJECT_SCORE" (1)
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS COMPRESS 1
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
  TABLESPACE "ICME"
想起这个索引是昨天为了select count(*) tablexx 而建的一个function-index,没想到在此版本还触发了bug,在10203版本中已修复。
