ORA-00600 [xxxxxx] [yyy] [zzz] ....
ORA-00600 errors are errors where the error number is not known. When an undetermined error is thrown, the system cannot give you a number, so it gives you the ORA-00600 error instead. The first parameter in brackets "xxxxxx" denotes the section of code in the kernel that the error was raised from.
Before control is passed back to the user, the database looks up the error message for that specific number. Since Oracle is a global product, the error messages I see here in the United States are different than those errors shown in another country, like France. If you install the French version of Oracle, then your error message will be in French. So how does Oracle know what language to present your error message in? When you install Oracle, you install it for a region.
When the system needs to look up an error message for a specific error number, it looks up the message in the $ORACLE_HOME/rdbms/mesg folder for a file called oraXX.msg, where XX is the region. I only have one such file, oraus.msg since I am in the United States region. If you look at that file, you can see the text for all of the error messages.
This was first published in February 2005