ORA-01578: ORACLE data block corrupted (file # XX, block # XXXXX) As this error (ORA-01578: ORACLE data block corrupted) message shows that you have a corrupt block. So for data corruption you need to check what is going wrong.Check alert logs for more detail. You can also use below sql:- select * from v$database_block_corruption; When i run the SQL. I found that one file # in my case 14 and some block 15353 is corrupted. As we know Corruption can occur in a table or index. So i have checked for this. In my case it was an index. So for a solution i just drop the index and created again and rebuild it. Just remember you cannot rebuild the index if it is having error ORA-01578: ORACLE data block corrupted. So drop and create index works for me and now i can rebuild. Dropping a index will not harm you much because it's already on corrupt block. Also i think when we create index again then it will take a different block. I am not sure about this because i have checked with sql after dr...