Bitcoin-Qt 0.8.0-beta Wallet Corruption on OS X Mountain Lion — Unrecovered After Five Months
BlockedHardware device was lost or destroyed, and no independent seed phrase backup existed.
In late April 2013, jordan.dev, a Bitcoin-Qt user on macOS Mountain Lion 10.8.3, encountered a crash (EXC_BAD_ACCESS/SIGBUS) when launching Bitcoin-Qt 0.8.0-beta. The application had been running for approximately one month. The wallet.dat file, stored locally on a MacBook Pro and used as a staging area for transfers between online platforms, became inaccessible. The user had not maintained regular backups.
Initial troubleshooting followed standard practice: deleting application data while preserving wallet.dat, upgrading to 0.8.1, and attempting wallet recovery tools. However, pywallet returned 'Couldn't open wallet.dat/main,' bitcointools fixwallet produced identical failures, and blockchain.info import was unsuccessful. Subsequent attempts with Bitcoin-Qt 0.8.2 and 0.8.5 yielded 'wallet corrupt, salvage failed' messages.
Database forensics revealed Berkeley DB corruption: corrupted metadata pages, LSN (log sequence number) mismatches indicating database log desynchronization, and DB_VERIFY_BAD status. The critical error occurred when the user followed recovery guidance from a BitcoinTalk thread (topic 11331) advising deletion of the database/ subdirectory. Gmaxwell, a Bitcoin Core developer, later identified this as the fatal step, stating the issue was 'common [and] easily repaired' but that removing database/ without wallet.dat created an unrecoverable state.
Multiple users reported identical crashes on Bitcoin-Qt 0.8.0-beta and 0.8.1-beta under OS X 10.8.3, and GitHub issue #2435 was filed. By September 2013, five months after the initial incident, no recovery path had succeeded. The user possessed backup copies of __db.XXX files and wallet.dat from the time of original corruption but could not restore them using any available method. The thread documentation ends without resolution; the final documented attempt was running 0.8.5-beta with 'Salvage found no records' failure. The user acknowledged minimal funds were at stake but expressed concern about the principle of irreversible loss.
| Stress condition | Device loss |
| Custody system | Software wallet |
| Outcome | Blocked |
| Documentation | Present and interpretable |
| Year observed | 2013 |
| Country | United States |
What determines whether device loss is permanent
When a device fails, burns, floods, or disappears, the Bitcoin remains on the blockchain, unchanged. What changes is whether any path to authorized access still exists. A seed phrase stored separately from the device preserves that path. A seed phrase stored with the device — or never recorded at all — eliminates it permanently.
The pattern observed across cases in this archive is consistent: recovery is possible when the seed phrase survived the event that took the device. It is not possible when it did not. The type of device, its cost, its brand, its security features — none of these factors determine the outcome. The seed phrase backup does.
Most device loss cases that result in permanent loss involve one of three failure modes: the seed phrase was never recorded at setup, the seed phrase was stored physically alongside the device and lost with it, or the seed phrase was stored in a location that became inaccessible during the same event (flood, fire, relocation). All three are detectable in advance. A backup test — confirming that the seed phrase can restore the wallet on a separate device — would have revealed the gap before the loss event.
A device loss case becomes unrecoverable the moment the backup path is also broken. The preventive action is simple in concept: record the seed phrase at setup, store it independently from the device, and test that it works. Most cases in this archive involved none of these three steps.
Translate