Announcement

Collapse
No announcement yet.

corrupt repository, changing checksum

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • corrupt repository, changing checksum

    I have a repository with a corrupt revision. Every time I run "svnadmin verify," I get a different "actual" checksum. (Except sometimes, when I get a seg fault.) It seems like the SVN library is calculating an invalid memory offset, probably based on a bad value in the revision data. Can anybody provide advice on recovering the repository, or should I delete the bad revision?

    Server: Ubuntu 14.04, SCM Manager 1.40 (which uses SVNKit in Java)
    Format: 5

    The repo has 606 revisions, and #606 seems to be the bad one. When I run svnadmin (from 1.8. verify or dump, it errors out on the last one. Here's a sample:

    ...
    * Verified revision 605.
    svnadmin: E160004: Filesystem is corrupt
    svnadmin: E200014: Checksum mismatch while reading representation:
    expected: e309f1edf2d42f50cf083d3f1fdfcb64
    actual: 7a306083b2b8ab9bde19b64dc619e0df

    But if I run it again, the "actual" checksum will be different! I've tried copying the repository to other systems, using different versions of svn. All of them give different checksums every time verify is run, and they occasionally crash.

    Chris

  • #2
    Originally posted by cjyar View Post
    I have a repository with a corrupt revision. Every time I run "svnadmin verify," I get a different "actual" checksum. (Except sometimes, when I get a seg fault.) It seems like the SVN library is calculating an invalid memory offset, probably based on a bad value in the revision data. Can anybody provide advice on recovering the repository, or should I delete the bad revision?

    Server: Ubuntu 14.04, SCM Manager 1.40 (which uses SVNKit in Java)
    Format: 5

    The repo has 606 revisions, and #606 seems to be the bad one. When I run svnadmin (from 1.8. verify or dump, it errors out on the last one. Here's a sample:

    ...
    * Verified revision 605.
    svnadmin: E160004: Filesystem is corrupt
    svnadmin: E200014: Checksum mismatch while reading representation:
    expected: e309f1edf2d42f50cf083d3f1fdfcb64
    actual: 7a306083b2b8ab9bde19b64dc619e0df

    But if I run it again, the "actual" checksum will be different! I've tried copying the repository to other systems, using different versions of svn. All of them give different checksums every time verify is run, and they occasionally crash.

    Chris
    Hi Chris

    Did you ever find a solution to this problem? I am having a similar issue.


    thanks.

    Comment


    • #3
      I don't remember; we've had a few instances of repository corruption due to SCM Manager's use of SVNKit. If the problem is in the most recent revision, I recommend a dump/reload, and have the users re-commit that revision.

      You can also do some crazy stuff involving hexedit and the revs files in the repository on the server. Sometimes, you can fix these problems; other times, you can identify which file in the commit caused the problem.

      Comment

      Working...
      X