We have an automated job which recompile all invalid objects in database everyday. When it tries to re-compile the SYS.DBMSOBJG Package the above error comes up. I tried to recompile it directly but same error. We have another 7.3 instance. It is Ok on that and can compile successfully.. What should I do? Is it safe to drop the package and re-create a vald copy of it from another database. Remember it is SYS user.
Is database up and running ? If it is how about running/refreshing Data dictionary and default packages. I mean running catalog, catproc in restricted mode if possible. An idea. Not sure will solve the problems...
ORA-600 error messages should be reported to Oracle support. That being said, if you look in $OH/rdbms/admin and find the script that creates that object, you can certainly run it again. That may or may not solve your problem.
This error indicates corruption. Here is a note on the error from Oracle. I'd call Oracle support.
You may receive an ORA-00600 in one of the following scenarios where an
index is used:
1. select, update, delete queries,
2. calling stored procedures.
3. running pro*c or pl/sql application
4. ora 600  using a BITMAP index.
5. and other possible scenarios.
Some possible reasons you may receive this error are:
1. Some detected cases are problems when doing a query (doing consistent
read) using an index but the corresponding row to be fetch from the
data block is inconsistent (most likely does not exist).
The more common case is when there is an index split and CR has to roll
it back so you may see this  when there are queries against
Other cases may happen when there are heavy update and query activities
against the same set of data.
2. There is a corruption, usually in the index. Doing an analyze table
validate structure cascade will catch any corruption. In these cases,
dropping and recreating the object will solve the error.
3. If you alter a column that has a BITMAP index, the index is flagged
Solution: DO ANALYZE TABLE VALIDATE STRUCTURE CASCADE ON OBJECT,CHECK FOR TRACE FILES
There have been many bugs that have been filed for this internal error. Many
are closed and unreproducible, mainly due to insufficient information. So here
are some steps to gather enough information so that Oracle Support Services
can help determine what is the cause of the ORA-00600  error:
1. Check for any trace files generated at the time the error occurred.
Look for the ORA-00600 trace files, SQL trace files, etc. Search the
database alert log for other related errors.
2. Run analyze on the object you received the error on to check for any
3. If the ANALYZE returns with errors, it is likely that a data block is
corrupted. Save the trace file produced, as well as a dump of the redo
log of that data block. Refer to the DBA in the trace file. (This may
require the assistance of Oracle Support Services.)
4. In some cases it is the index that is corrupted and so dropping and
recreating the index will resolve the problem. In the case of a BITMAP
index that is flagged as invalid, dropping and recreating the index
will correct this error.
Analyzing the object and gathering all relevant trace files will aid in
determining the cause of this error.
Some times 600 errors are not real errors but, version of products, compatibility issues etc. They don't remove the old features of the product, these desupported product features will be embedded some where in the latest versions and gives problems due to conflicts.
I have been told by Oracle to ignore, if its one time incident and database is up and running with no problems or issues.
If database is working fine and you don't have any issues, there may not be problem. All you need to do is confirm with Oracle that there is no problem.
Bottom line it has to reported to Oracle for peace of mind.
In other way, I would say, that it was due to oracle's laziness. Check this scenario: Lately my 22.214.171.124 DB's MTS started to dump its servers and dispatchers frequently on my solaris system. This was giving me ORA-6000 with some 16.... So I went ahead and opend a TAR with oracle support. It took the support almost 3-4 weeks to find the cause. It seems that this was a known problem with the HP but not with the Solaris. Then their development group came up with a reply, that this could be due to the bug 1603274. and they had fixed it on 8.1.7. Since I haven't migrated to 8.1.7, I don't know how far it works on Rel 3.