Search code examples
sqlitesvntortoisesvn

svn cleanup: sqlite: database disk image is malformed


I was trying to do a svn cleanup because I can't commit the changes in my working copy, and I got the following error:

sqllite: database disk image is malformed

Cleanup failed to process the following paths

What can I do right now?


Solution

  • First, open command/terminal at repository root (folder which has .svn as child folder):

    cd /path/to/repository
    

    Download sqlite3 and put executable sqlite3 at root of folder.

    You do an integrity check on the sqlite database that keeps track of the repository (/path/to/repository/.svn/wc.db):

    sqlite3 .svn/wc.db "pragma integrity_check"
    

    That should report some errors.

    Then you might be able to clean them up by doing:

    sqlite3 .svn/wc.db "reindex nodes"
    sqlite3 .svn/wc.db "reindex pristine"
    

    If there are still errors after that, you still got the option to check out a fresh copy of the repository to a temporary folder and copy the .svn folder from the fresh copy to the old one. Then the old copy should work again and you can delete the temporary folder.