Bitcoin stuck, not syncing I recently converted from Chakra Linux to Opensuse 13.1 without formatting the home partition (I took a chance) and didn't have to do the usual reloading of email, documents and bitcoin started working straight away after I installed it from opensuse repo. Chakra installation had bitcoin-qt 0.8.6 and opensuse loaded bitcoin-qt 0.9.1. So, basically, it found the files in the home partition and seemed to carry on from there. I do have a backup from before the conversion. Bitcoin 0.9.1 did add a quite a few blocks before the error. So, maybe it wasn't the transition to opensuse that did it.
Now the wallet is six days behind. Here is quote from debug.log. It is 'catching up' from block 297123.

2014-04-23 20:59:35 ProcessBlock: ACCEPTED
2014-04-23 20:59:45 UpdateTip: new &gt;best=000000000000000087be011f611f80fd4d3d917780a27850fb878512f492f828  &gt;height=297123  log2_work=78.143683  tx=37308919  date=2014-04-22 09:43:51 &gt;progress=0.993196
2014-04-23 20:59:45 ProcessBlock: ACCEPTED
2014-04-23 20:59:56 ERROR: CScriptCheck() : &gt;447f1be22db9cca6b7539a66b54f99ea11c1c0316a72915d34d8a1c86d00ebcf &gt;VerifySignature failed
2014-04-23 21:00:03 EnvShutdown exception: Invalid argument (22)
2014-04-23 21:21:02 CheckForkWarningConditions: Warning: Large valid fork found
forking the chain at height 297123 &gt;(000000000000000087be011f611f80fd4d3d917780a27850fb878512f492f828)
lasting to height 297131 &gt;(00000000000000004866bff18fa3e4378486920d6b9dc7f332f9f0bc18bd247e).
Chain state database corruption likely.

Any suggestions on how I should proceed?
A signature check failed for a valid transaction. This likely indicates a CPU or RAM problem with the system you're running on (even though you don't see regular errors in normal operation, Bitcoin does so many computations during validation that it's likely to see them more).

The result of this is that bitcoind marked the chain this transaction was in as invalid, and rejects new blocks in it.

To rebuild your database, you can start the client with the -reindex flag (if you exit while rebuilding, it will pick up where it was stopped on the next run).

One workaround that helps in some cases is running with -par=1, making validation only run in one thread. This seems to reduce the load enough to make some CPUs not cause errors anymore.