subversion-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tony Sweeney" <tswee...@omnifone.com>
Subject RE: corrupt revision, "Reading one svndiff window read beyond the end of the representation"
Date Tue, 03 Aug 2010 09:16:25 GMT
 
I don't recall exactly where I found this file (author's own site, I
think), but this works for me on CentOS 5.3; If the attachment doesn't
come through, ask and I'll email directly.  Ah, here's where I got it:

http://www.szakmeister.net/fsfsverify/

Download link is at the bottom.

Tony.

> -----Original Message-----
> From: Justin Georgeson [mailto:JGeorgeson@lgc.com] 
> Sent: 03 August 2010 01:24
> To: Mark Phippard
> Cc: users@subversion.apache.org
> Subject: RE: corrupt revision, "Reading one svndiff window 
> read beyond the end of the representation"
> 
> 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-s
> ide/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
> [svnadmin@hourdcm1 ~]$
> 
> ________________________________
> From: Mark Phippard [markphip@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 
> <JGeorgeson@lgc.com<mailto:JGeorgeson@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
> 
> [svnadmin@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.
> 
> ______________________________________________________________________
> This email has been scanned by the MessageLabs Email Security System.
> For more information please visit 
> http://www.messagelabs.com/email 
> ______________________________________________________________________
> 

Mime
View raw message