According to Oracle Support note 336315.1, this ORA-600 error is a known issue (bug 4335559) affecting some versions of 9i and 10g. It is a bug in the cost-based optimizer’s initial join order routine. The note mentions a simple known workaround that you can implement either in one session, or throughout the whole Oracle instance.
To implement the workaround in your own session, run:
[code language=”sql”]SQL> alter session set "_new_initial_join_orders" = false;[/code]
To deploy the workaround instance-wide:
— If you are using an spfile:
[code language=”sql”]SQL> alter system set "_new_initial_join_orders" = false scope = both;[/code]
— If you are using a pfile, add this to the init.ora:
_new_initial_join_orders=false