You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Malte Finsterwalder <fi...@gmx.de> on 2009/06/17 08:08:38 UTC

How to repair a broken Revision in our SVN-Repository

Hi there,

We have a large repository with >26000 Revisions. One of them is broken.
Most of the time this doesn't cause any problems, but for some
history-commands I get an error and alike.
How can I repair such a broken revision without getting into other trouble?
As far as I know we currently use svn 1.4 on the server. I don't really
know whether it's berkleyDB- or file-based, but would guess it's a
berkeleyDB.

Greetings,
   Malte

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2362702

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

RE: How to repair a broken Revision in our SVN-Repository

Posted by Geir Engebakken <ge...@edb.com>.
Not that I am an expert in fixing SVN revisions, just that I hope I will be able to do so when the day comes, but I don’t understand the problem, isn’t this a matter of restoring the file in revprops from backup?


Geir

-----Original Message-----
From: Malte Finsterwalder [mailto:finjunk@gmx.de] 
Sent: 24. juni 2009 08:13
To: users@subversion.tigris.org
Subject: Re: How to repair a broken Revision in our SVN-Repository

Blair Zajac wrote:
> Malte Finsterwalder wrote:
>> Maybe some addition information about the problem can help.
>>
>> When I do:
>> svn log -r 8831 http://repositoryUrl
>> I get:
>> svn: REPORT of '/oosetb/!svn/bc/8831': 200 OK (http://ooseappsrv)
> 
> You should run svnadmin verify on the repository to see if it's truly a bad 
> revision or if something else is going on.

svnadmin gives the same error:
We ran svn in the german version on the server, which gives:
* Revision 8830 verifiziert.
svnadmin: Kann Längenzeile nicht aus Datei »oosetb\db\revprops\8831« lesen

Which is translated roughly to:
* Revision 8830 verified.
svnadmin: Can't read length-line from file »oosetb\db\revprops\8831«
Which is probably similar to the error I got reviously: Premature end of
file.

It's no problem, that the information from that broken revision is lost.
I just would like to fix it up in a way that it doesn't disturb
svn-operations.

Any idea how I can fix the problem?

Greetings,
   Malte

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2364793

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2364931

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

Re: How to repair a broken Revision in our SVN-Repository

Posted by Blair Zajac <bl...@orcaware.com>.
On Jun 23, 2009, at 11:12 PM, Malte Finsterwalder wrote:

> Blair Zajac wrote:
>> Malte Finsterwalder wrote:
>>> Maybe some addition information about the problem can help.
>>>
>>> When I do:
>>> svn log -r 8831 http://repositoryUrl
>>> I get:
>>> svn: REPORT of '/oosetb/!svn/bc/8831': 200 OK (http://ooseappsrv)
>>
>> You should run svnadmin verify on the repository to see if it's  
>> truly a bad
>> revision or if something else is going on.
>
> svnadmin gives the same error:
> We ran svn in the german version on the server, which gives:
> * Revision 8830 verifiziert.
> svnadmin: Kann Längenzeile nicht aus Datei »oosetb\db\revprops\8831«  
> lesen
>
> Which is translated roughly to:
> * Revision 8830 verified.
> svnadmin: Can't read length-line from file »oosetb\db\revprops\8831«
> Which is probably similar to the error I got reviously: Premature  
> end of
> file.
>
> It's no problem, that the information from that broken revision is  
> lost.
> I just would like to fix it up in a way that it doesn't disturb
> svn-operations.
>
> Any idea how I can fix the problem?

You can try the fsfsverify.py script.

http://svn.collab.net/repos/svn/trunk/contrib/server-side/fsfsverify.py

If that doesn't work, there's either calling CollabNet for help and  
paying for support or recovering a repository from backups to the  
previous revision and then putting the commits in there manually.

Blair

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2365008

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].


Re: How to repair a broken Revision in our SVN-Repository

Posted by Malte Finsterwalder <fi...@gmx.de>.
Blair Zajac wrote:
> Malte Finsterwalder wrote:
>> Maybe some addition information about the problem can help.
>>
>> When I do:
>> svn log -r 8831 http://repositoryUrl
>> I get:
>> svn: REPORT of '/oosetb/!svn/bc/8831': 200 OK (http://ooseappsrv)
> 
> You should run svnadmin verify on the repository to see if it's truly a bad 
> revision or if something else is going on.

svnadmin gives the same error:
We ran svn in the german version on the server, which gives:
* Revision 8830 verifiziert.
svnadmin: Kann Längenzeile nicht aus Datei »oosetb\db\revprops\8831« lesen

Which is translated roughly to:
* Revision 8830 verified.
svnadmin: Can't read length-line from file »oosetb\db\revprops\8831«
Which is probably similar to the error I got reviously: Premature end of
file.

It's no problem, that the information from that broken revision is lost.
I just would like to fix it up in a way that it doesn't disturb
svn-operations.

Any idea how I can fix the problem?

Greetings,
   Malte

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2364793

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].


Re: How to repair a broken Revision in our SVN-Repository

Posted by Blair Zajac <bl...@orcaware.com>.
Malte Finsterwalder wrote:
> Maybe some addition information about the problem can help.
> 
> When I do:
> svn log -r 8831 http://repositoryUrl
> I get:
> svn: REPORT of '/oosetb/!svn/bc/8831': 200 OK (http://ooseappsrv)

You should run svnadmin verify on the repository to see if it's truly a bad 
revision or if something else is going on.

Regards,
Blair

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2362979

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

Re: How to repair a broken Revision in our SVN-Repository

Posted by Malte Finsterwalder <fi...@gmx.de>.
Maybe some addition information about the problem can help.

When I do:
svn log -r 8831 http://repositoryUrl
I get:
svn: REPORT of '/oosetb/!svn/bc/8831': 200 OK (http://ooseappsrv)

When I do a logMessage via JavaHL I get the following exception:

Error fetching comment for Revision 8831
org.tigris.subversion.javahl.ClientException: svn: Processing REPORT
request response failed: Premature end of file.
(/repositoryUrl/!svn/bc/8831)
svn: REPORT request failed on '/repositoryUrl/!svn/bc/8831'
	at
org.tigris.subversion.javahl.JavaHLObjectFactory.throwException(JavaHLObjectFactory.java:777)
	at
org.tmatesoft.svn.core.javahl.SVNClientImpl.throwException(SVNClientImpl.java:1850)
	at
org.tmatesoft.svn.core.javahl.SVNClientImpl.logMessages(SVNClientImpl.java:470)
	at
org.tmatesoft.svn.core.javahl.SVNClientImpl.logMessages(SVNClientImpl.java:417)
	at
org.tmatesoft.svn.core.javahl.SVNClientImpl.logMessages(SVNClientImpl.java:411)
	at MyClass.getComment(MyClass.java:xx)
	at MyClass.main(MyClass.java:xx)
Caused by: org.tmatesoft.svn.core.SVNException: svn: Processing REPORT
request response failed: Premature end of file.
(/repositoryUrl/!svn/bc/8831)
svn: REPORT request failed on '/repositoryUrl/!svn/bc/8831'
	at
org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:103)
	at
org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:87)
	at
org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:618)
	at
org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:273)
	at
org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:261)
	at
org.tmatesoft.svn.core.internal.io.dav.DAVConnection.doReport(DAVConnection.java:266)
	at
org.tmatesoft.svn.core.internal.io.dav.DAVConnection.doReport(DAVConnection.java:257)
	at
org.tmatesoft.svn.core.internal.io.dav.DAVRepository.logImpl(DAVRepository.java:974)
	at org.tmatesoft.svn.core.io.SVNRepository.log(SVNRepository.java:1035)
	at org.tmatesoft.svn.core.wc.SVNLogClient.doLog(SVNLogClient.java:1024)
	at org.tmatesoft.svn.core.wc.SVNLogClient.doLog(SVNLogClient.java:891)
	at
org.tmatesoft.svn.core.javahl.SVNClientImpl.logMessages(SVNClientImpl.java:452)
	... 4 more

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2362978

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].