It doesn't come with the CollabNet precompiled binaries (even the -extras 
package) so I grabbed a copy from 
http://svn.apache.org/viewvc/subversion/trunk/contrib/server-side/fsfsverify.py?view=log.
 I'm on a RH4.6 with python 2.4.4. With no options it exits with

Traceback (most recent call last):
  File "/opt/CollabNet_Subversion/sbin/fsfsverify.py", line 1120, in ?
    for noderev in strategy:
  File "/opt/CollabNet_Subversion/sbin/fsfsverify.py", line 839, in _nodeWalker
    for x in self._nodeWalker():
  File "/opt/CollabNet_Subversion/sbin/fsfsverify.py", line 839, in _nodeWalker
    for x in self._nodeWalker():
  File "/opt/CollabNet_Subversion/sbin/fsfsverify.py", line 839, in _nodeWalker
    for x in self._nodeWalker():
  File "/opt/CollabNet_Subversion/sbin/fsfsverify.py", line 839, in _nodeWalker
    for x in self._nodeWalker():
  File "/opt/CollabNet_Subversion/sbin/fsfsverify.py", line 839, in _nodeWalker
    for x in self._nodeWalker():
  File "/opt/CollabNet_Subversion/sbin/fsfsverify.py", line 839, in _nodeWalker
    for x in self._nodeWalker():
  File "/opt/CollabNet_Subversion/sbin/fsfsverify.py", line 839, in _nodeWalker
    for x in self._nodeWalker():
  File "/opt/CollabNet_Subversion/sbin/fsfsverify.py", line 839, in _nodeWalker
    for x in self._nodeWalker():
  File "/opt/CollabNet_Subversion/sbin/fsfsverify.py", line 839, in _nodeWalker
    for x in self._nodeWalker():
  File "/opt/CollabNet_Subversion/sbin/fsfsverify.py", line 832, in _nodeWalker
    noderev = NodeRev(self.f, self.currentRev)
  File "/opt/CollabNet_Subversion/sbin/fsfsverify.py", line 678, in __init__
    (rev, offset, length, size, digest) = value.split(' ')
ValueError: too many values to unpack
[svnad...@hourdcm1 ~]$

________________________________
From: Mark Phippard [markp...@gmail.com]
Sent: Monday, August 02, 2010 5:47 PM
To: Justin Georgeson
Cc: users@subversion.apache.org
Subject: Re: corrupt revision, "Reading one svndiff window read beyond the end 
of the representation"

Have you tried fsfsverify.py?

Sent from my iPhone

On Aug 2, 2010, at 6:39 PM, Justin Georgeson 
<jgeorge...@lgc.com<mailto:jgeorge...@lgc.com>> wrote:

I have a repo with >39k revisions. Last week, r39245 was committed, a merge of 
a single file from trunk to branch. It is the HEAD revision of that file on 
that branch. Turns out this revision is corrupt

[svnad...@hourdcm3 ~]$ svnadmin verify -r 39245 /repos/prowess
svnadmin: Reading one svndiff window read beyond the end of the representation

I've searched from r30000 to HEAD in this repo and that's the only rev that 
fails the verify. All our backup copies have the same issue too. I'm wondering 
what our options for recovery are. Some suggestions we have come up with 
internally are:

1. Developer still has sandbox which reports the parent folder as updated, so 
have him 'svn cat' the previous version and commit that, then re-commit the 
changes from the corrupt revision
2. 'svn rm' the file from the server and re-add it (losing ancestry)
3. Some combination of svndump up to that revision, import to new repo, redo 
that merge in new repo, overwrite the revision file with new one
4. delete revision file (seems like bad idea)
5. svn dump up to corrupt revision and everything after bad revision, merge 
dumps, create new repo, redo merge

Is there something else we missed? Which of these seems like the safest/easiest?

________________________________
This e-mail, including any attached files, may contain confidential and 
privileged information for the sole use of the intended recipient. Any review, 
use, distribution, or disclosure by others is strictly prohibited. If you are 
not the intended recipient (or authorized to receive information for the 
intended recipient), please contact the sender by reply e-mail and delete all 
copies of this message.

Reply via email to