开发人员报往一个表插入数据的时候,长时间没反应,其他表可以正常用插入数据。接到报障后,查看了一下该表,发现有40万条记录,
记录数不是很多,决定对表做重建(move)操作,在重建的过程中,报ORA-00600错误。查看aler.log文件,发现有大量的600错误:
Errors in file /export/home/oracle/admin/well/udump/well_ora_24503.trc:
ORA-00600: internal error code, arguments: [kcbnew_3], [1], [1], [51552], [], [], [], []
Mon Mar 22 9:50:42 2011
Errors in file /export/home/oracle/admin/well/udump/esbdb6_ora_24939.trc:
ORA-00600: internal error code, arguments: [kcbnew_3], [2], [1], [51552], [], [], [], []
Mon Mar 22 9:50:42 2011
Errors in file /export/home/oracle/admin/well/udump/well_ora_24503.trc:
ORA-00600: internal error code, arguments: [kcbnew_3], [1], [1], [51552], [], [], [], []
Mon Mar 22 9:53:29 2011
Errors in file /export/home/oracle/admin/well/udump/well_ora_24503.trc:
ORA-00600: internal error code, arguments: [kcbnew_3], [1], [1], [51552], [], [], [], []
Mon Mar 22 9:53:29 2011
Errors in file /export/home/oracle/admin/well/udump/well_ora_23713.trc:
ORA-00600: internal error code, arguments: [kcbnew_3], [2], [1], [51552], [], [], [], []
Mon Mar 22 9:55:10 2011
Errors in file /export/home/oracle/admin/well/udump/well_ora_21227.trc:
ORA-00600: internal error code, arguments: [kcbnew_3], [0], [1], [51552], [], [], [], []
查看trace文件,发现有大量的enq: TX - index contention等待事件。
结合enq: TX - index contention等待事件发生的背景,对该表的索引进行了重建,问题解决。
enq: TX - index contention发生背景:B*Tree索引在添加数据的过程中,如果叶节点已满就会进行
分割,以此来达到平衡。它主要发生在多个会话对已有索引的表执行较多量的DML时发生。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/23203681/viewspace-701255/
,如需转载,请注明出处,否则将追究法律责任。