ORA-600(qcsgpvc3)错误

编译包导致的错误。
数据库版本为10.2.0.4 RAC for Linux X86-64,错误信息为:

Fri Nov 4 14:27:47 2011
Errors IN file /u01/admin/orcl/udump/orcl1_ora_15210.trc:
ORA-00600: internal error code, arguments: [qcsgpvc3], [], [], [], [], [], [], []

MOS上这个错误信息为:Bug 7172752 – OERI[qcsgpvc3] recompiling a package body [ID 7172752.8]。这个问题影响的版本为10.2.0.4和11.1.0.6,而Oracle在版本10.2.0.4.2、10.2.0.5、11.1.0.7和11.2.0.1中fixed了这个错误。
和以往对bug言之不详不同,这次Oracle给出重现问题的代码。虽然这个代码我在10.2.0.3上没有重现出来这个错误,不过根据代码可以大概看出是什么问题导致了错误的产生。问题应该是Oracle在编译包体时,没有区分表的列和过程的参数的区别,从而引发了这个错误。而Oracle给出的建议也是,避免过程或函数的变量与过程中参考的列名出现重名的情况。
那么这个问题即使出现也不难解决,只需要将过程或函数的参数进行修改既可。

This entry was posted in BUG and tagged , , , , , , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *