Here is a quick tip for when you run into error ORA-00600: [2662], this error points to that a block’s SCN is higher than the Database SCN, this can mean that there can exist a physical corruption in your Database, and I won’t say here on how to solve this, I would suggest opening an SR with Oracle for this.

But something that can help you out to troubleshoot this error is, when the error appears , if the 5th argument shows up it can give you the information of which datafile the error is present

ORA-00600: internal error code, arguments: [2662], [2910], [829087674], [2910], [829528307], [1451708231], [], [], [], [], [], []

If the error as above, has the 5th argument, you can use the following query to identify the datafile that is probable causing  error

TESTDB> select dbms_utility.data_block_address_file(1451708231) "fileno",dbms_utility.data_block_address_block(1451708231) from dual ;

---------- -------------------------------------------
138 3

Now that you have the file number , you can query v$datafile to identify the physical file

TESTDB> Select name ,file#,ts# from v$datafile where rfile#=138 ;

And with the utility dbverify , you can check wether this file is corrupt or not

dbv file=<NAME_OF_DATAFILE_OBTAINED_ABOVE> blocksize=<db_block_size>

As I mentioned at the beginning, what I recommend is to open an SR when this error presents itself so that you can get to the bottom of this error, but this will give you more power and information to localize the error and feed it to the SR.