Every time my system hangs, restarts, whatever, bitcoin qt fucks up the blocks database, has to re-index it. By starting over and re-downloading it.
From the fucking start. All the fucking blocks.
I don't have that issue. Also, if the database does get corrupt, you can run bitcoin-qt with -reindex to do a check of the database and
only redownload the corrupt blocks.