That stinks. On one hand, the beauty of DVCS is that you can clone from another repos that isn't corrupt, but this would still be a big problem in a bare (central) repository during a merge or if you were working offline for an extended period of time (in which case you just lose your diffs). Of course we all keep local projects with just one copy of the repository.
One great thing about Fossil is how easy it is to back up since it's a single file. I've always felt that million-file approach was clumsy, even when centralized in a single directory.
Monotone (http://www.monotone.ca/ : a DVCS that predates git by several years, and was a major inspiration) keeps its repositories in SQLite databases, as well. I used it for a while, kept my home directory in mtn, etc. SQLite databases are indeed quite easy to back up. (You're better off putting "echo .dump | sqlite3 dbfile.sql > dbfile.sql.bak" in cron, though - the dump is more portable.)
Using SQLite dbs for serialization is a great idea, particularly for prototyping. It's not quite as efficient as bespoke file formats and data structures, but frequently good enough, and getting transactions for free is a huge bonus.
One great thing about Fossil is how easy it is to back up since it's a single file. I've always felt that million-file approach was clumsy, even when centralized in a single directory.