That is a wallet corruption.
Use backup. You had one?
No way to recover wallet with your client.
Only to use tools to export privkeys.
Edit: Db corruption fix. Use working db to fix wallet and then return to the old db.
Should be no need for re dl.
https://github.com/zcoinofficial/zcoin/issues/79https://github.com/bitcoin/bitcoin/issues/2395 qubez commented on 22 Mar 2013
The wallet.dat LSN errors indicate that the wallet.dat's BerkeleyDB was not properly closed (as detachdb does for the blockchain, issuing a LSN RESET), and the log file is either missing or does not correspond with the wallet.dat that was put in the data directory. This can also come from (a similar type of BDB database log desynchronization can be created by) a large change in the (BDB) database version or environment used in Bitcoin.
The way I would proceed with this particular issue is to rename the wallet.dat file (and make backups of it if you don't have a before-upgrade backup), remove the database subdirectory (or all .log files inside it), and launch Bitcoin again (which creates a blank wallet.dat). After Bitcoin has completed the blockchain download, then shut it down, substitute back your original wallet.dat, remove the db.log and debug.log, and launch with the -rescan and -upgradewallet options. If Bitcoin completes startup and shows your balance, I would still send the Bitcoins to a new wallet if any strange errors appear in the logs.
sipa commented on 22 Mar 2013
@qubez Since 0.8, BDB is only used for the wallet, so that is the problem, and syncing the block chain without the walelt won't change anything.
I don't understand why -salvagewallet doesn't solve this, as it rebuilds the wallet from scratch. The only thing I can imagine is something very broken in in of the database/* files. I'd try wiping database/*, and then starting with -salvagewallet.