ORA-00600 as per the description is a catch all error when it comes to data corruption. This error may be raised due to file system or database index and table corruption. However, this error is also catch all when there is fundamental problem in Oracle Database. Thus, making it extremely hard and laborious to trace and resolve.
So, if you ever see an ORA-00600, your best bet is to
- rebuild your file system where database is writing
- if you have HA configured, reconfigure and validate your “mirrored file mounts”
- check your database indexes
- if you know the query which tables that query is going against, re-create the table and index.
- Make sure that you do not have open cursor that you rolled back first and try to use to again in the same transaction.
The simplest solution is
- Check your transactions such that you are using stale connection or stale cursor
- Rebuild your entire database