You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by "Robert R. Kessler" <ke...@cs.utah.edu> on 2012/11/14 04:54:56 UTC

Problem with an archive

I am not a subscriber so please cc: me on any responses. I appreciate it….

Now to the issue:

I have an svn archive that a student of mine was using in March.  I am trying to access the files in the archive, however, when I try to access it, I get the following error:

   Found format '5', only created by unreleased dev builds.

The release notes say that it is because I am using an archive that was created with the 1.7 alpha3 version.

I tried going back to previous versions of tortoisesvn to see if I might find one that has the 1.7 alpha3 version so I could unpack the svn and get the files back.  Unfortunately, their various beta and rc versions did not have the correct subversion version.

The suggestion from the tortoisesvn mailing list is that if I get the 1.7 alpha3 version, I can use svnadmin to extract the files and then reload them into a valid system.

Unfortunately, I have not been able to find an archived download of the 1.7 alpha3 version in order to try to see if the svnadmin extraction will work.

Does anyone have a copy of that version so I can give this a shot.

We have not been able to find any other way to get access to the files in there and they are very important.  

BTW - I am not convinced that this will solve our problem, but it is the next step to try.  It doesn't make sense that he was using the latest svn version and was using the alpha3 release in March of this year when it was out in mid 2011.  It feels like something else is goofed up with this archive.

Thanks for anyone that can help us.

Bob.


Re: Problem with an archive

Posted by Daniel Shahaf <d....@daniel.shahaf.name>.
Daniel Shahaf wrote on Wed, Nov 14, 2012 at 09:14:13 +0200:
> IIRC format 5 is identical to 4 except for storage of revprops.  It
> would be straightforward to export it without the revprops, and should
> be straightforward to write a script to convert the revprops storage to
> format 4 (supported by 1.6+); but I don't know that anyone ever wrote
> that script.

I figure somebody's going to need this eventually, so here is how to
write that script:

0. This procedure assumes nothing writes to the repository.

1. Check the format numbers: the first line of $REPOSDIR/db/format
should read "5".

2. For each revision between 0 and $(cat current):

2.1. Read the list of revision properties from revprops.db; the schema
is in revprops-db.sql.  You can decode the skel with the svn_skel.h API,
or roll-your-own in $LANGUAGE_OF_CHOICE.

2.2 Create the appropriate file in the revprops/ directory (depending on
the 'layout' setting in the format file).  Fill it with the properties
hash --- as created by svn_hash_write2() ---

   for k,v in propslist:
      print "K %d\n%s\nV %d\n%s\n" % (len(k), k, len(v), v)
   print "END\n"

3. Change the first line of the format file from step1 to "4".

4. Once you have that script, send it to dev@ as a patch (for inclusion
in tools/server-side/).

Re: Problem with an archive

Posted by Daniel Shahaf <d....@daniel.shahaf.name>.
Ryan Schmidt wrote on Wed, Nov 14, 2012 at 00:27:21 -0600:
> 
> On Nov 13, 2012, at 21:54, Robert R. Kessler <ke...@cs.utah.edu> wrote:
> 
> > Unfortunately, I have not been able to find an archived download of the 1.7 alpha3 version in order to try to see if the svnadmin extraction will work.
> > 
> > Does anyone have a copy of that version so I can give this a shot.
> 
> Source downloads for all versions of Subversion are here:
> 
> http://archive.apache.org/dist/subversion/
> 
> Since you mentioned TortoiseSVN, I assume you are looking for a pre-compiled Windows binary of Subversion. The Subversion project doesn't provide pre-compiled binaries, but does provide links to others who do:
> 
> http://subversion.apache.org/packages.html#windows
> 
> You'll have to ask those individuals and organizations if they have older versions and how to get them.
> 
> As for TortoiseSVN itself, older versions can be found here:
> 
> http://sourceforge.net/projects/tortoisesvn/files/
> 
> You might try the first beta of TortoiseSVN 1.7.0; perhaps the beta of
> Subversion 1.7.0 that it was linked with is close enough to the alpha3
> version that your repository was made with.

Good idea, but no.  1.7.0-beta1 doesn't support FSFS format 5:

% svn cat ^/subversion/tags/1.7.0-beta1/subversion/libsvn_fs_fs/fs.h | grep SVN_FS_FS__FORMAT_NUMBER
#define SVN_FS_FS__FORMAT_NUMBER   4

Neither do 1.7.0-rc* of course.  So only 1.7.0-alpha* and 1.7-dev (ie,
trunk or branch snapshots).

IIRC format 5 is identical to 4 except for storage of revprops.  It
would be straightforward to export it without the revprops, and should
be straightforward to write a script to convert the revprops storage to
format 4 (supported by 1.6+); but I don't know that anyone ever wrote
that script.

> 

Re: Problem with an archive

Posted by Ryan Schmidt <su...@ryandesign.com>.
On Nov 13, 2012, at 21:54, Robert R. Kessler <ke...@cs.utah.edu> wrote:

> Unfortunately, I have not been able to find an archived download of the 1.7 alpha3 version in order to try to see if the svnadmin extraction will work.
> 
> Does anyone have a copy of that version so I can give this a shot.

Source downloads for all versions of Subversion are here:

http://archive.apache.org/dist/subversion/

Since you mentioned TortoiseSVN, I assume you are looking for a pre-compiled Windows binary of Subversion. The Subversion project doesn't provide pre-compiled binaries, but does provide links to others who do:

http://subversion.apache.org/packages.html#windows

You'll have to ask those individuals and organizations if they have older versions and how to get them.

As for TortoiseSVN itself, older versions can be found here:

http://sourceforge.net/projects/tortoisesvn/files/

You might try the first beta of TortoiseSVN 1.7.0; perhaps the beta of Subversion 1.7.0 that it was linked with is close enough to the alpha3 version that your repository was made with.