早上有个问题报ora-600,记录下来,后面有时间了仔细研究:

Mon Aug 30 23:56:19 2010
Errors in file /opt/app/oracle/admin/xateldb/udump/xateldb_ora_21118.trc:
ORA-00600: 内部错误代码, 参数: [17059], [0x6CFFCB260], [], [], [], [], [], []
Mon Aug 30 23:57:29 2010
Errors in file /opt/app/oracle/admin/xateldb/udump/xateldb_ora_21118.trc:
ORA-00600: 内部错误代码, 参数: [17059], [0x6CFFCB260], [], [], [], [], [], []
Tue Aug 31 00:01:02 2010
Thread 1 advanced to log sequence 46361
Current log# 3 seq# 46361 mem# 0: /redo_log/xateldb/sys/redo03a.log
Current log# 3 seq# 46361 mem# 1: /redo_log/xateldb/sys/redo03b.log
Tue Aug 31 00:09:49 2010
Errors in file /opt/app/oracle/admin/xateldb/udump/xateldb_ora_21118.trc:
通过收集这段时间的AWR信息,发现:
比较严重和显著的事件是latch: library cache

暂时解决方法:

连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options

SQL> select do.obj#,
  2          po.obj# ,
  3          p_timestamp,
  4          po.stime ,
  5          decode(sign(po.stime-p_timestamp),0,'SAME','*DIFFER*') X
  6      from sys.obj$ do, sys.dependency$ d,  sys.obj$ po
  7     where P_OBJ#=po.obj#(+)
  8       and D_OBJ#=do.obj#
  9       and do.status=1 /*dependent is valid*/
 10       and po.status=1 /*parent is valid*/
 11       and po.stime!=p_timestamp /*parent timestamp not match*/
 12     order by 2,1;

未选定行

SQL> show parameter cursor;

NAME                                 TYPE
------------------------------------ --------------------------------
VALUE
------------------------------
cursor_sharing                       string
SIMILAR
cursor_space_for_time                boolean
FALSE
open_cursors                         integer
300
session_cached_cursors               integer
200
SQL> alter system set open_cursors=500 scope=both;

系统已更改。
SQL> show parameter cursor;

NAME                                 TYPE
------------------------------------ --------------------------------
VALUE
------------------------------
cursor_sharing                       string
SIMILAR
cursor_space_for_time                boolean
FALSE
open_cursors                         integer
500
session_cached_cursors               integer
200
 参见metalink:ORA-600 [17059] [ID 138554.1]

问题还是未能解决,最终定位为bug

临时解决方法:

session_cached_cursors设置为0

或者升级到10204