Best approach to dealing with different version of SVN clients and repositories?

31 views
Skip to first unread message

olivier....@gmail.com

unread,
Jan 9, 2020, 5:48:38 AM1/9/20
to TortoiseSVN
Hi,

I have been using TortoiseSVN for many years now and I have been applying updates fairly regularly on the client side.
At the moment I am using  local or on the LAN repositories but I am gradually trying to migrate to a server based solution.
Those repositories where created from the client side.
I have been experiencing issues with a program that has only internal support for SVN 1.7, 1.8 or 1.9.
The issue is that this program will not be able to access a repository which was created with SVN 1.10, 1.11 or 1.12 because of the  "Expected Format 8" error and similar.

I started noticing this issue after I recreated the repository with SVN 1.11 or SVN 1.12.
As a result, I had to recreate a new repository under SVN 1.9, which also means loosing history from the original repository.

As I am on SVN 1.9, I no longer have access to repositories created with more recent version of SVN.
If a client running SVN 1.10 or newer, is committing onto SVN 1.9 repository, then it seems there are time where my software running SVN 1.9 isn't able to access that data.

How can I manage App/Client/repository coexistence/relationship in such heterogeneous environment?

What would be my options?

Regards.








Justin MASSIOT

unread,
Jan 9, 2020, 10:06:25 AM1/9/20
to TortoiseSVN
Hello,

When you say

a repository which was created with SVN 1.10, 1.11 or 1.12

Niemann, Hartmut

unread,
Jan 9, 2020, 11:07:02 AM1/9/20
to TortoiseSVN

Hi!

 

If I understand correctly, you are using no svn server process, but file:-addressed repositories, and

you have a tool (which is not a part of tortoise svn) which supports only formats up to 1.9.

 

Would you be able to recompile the tool against a more recent subversion library? That would be the cleanest thing, I think.

 

If not: does the tool you mention work on the repository files, or on the working copy files (i.e. .svn/ and below)? How does it interact with subversion data?

There was a big change in .svn between 1.7 and 1.8 if I recall correctly, switching to a sqlite database.

If it works on the working copy structure, then my ideas don’t apply.

 

Or you switch to a subversion server process (which might be a good idea anyway), then the client version and the server version

do not need to be identical and you can use the newest server available.

 

If your tool needs a special repository format because it reads (writes??) files directly, you could check, whether

svnadmin’s command line option “- –compatible-version” would help you

  • use the latest subversion
  • but with an older repo format

 

As far as I know, subversion keeps backwards compatibility for repositories, so you never need to recreate repositories if you upgrade subversion. (although it might be a good idea to do that sometimes – I don’t know)

You could even keep an old subversion version for creating empty repositories and use the latest version after that and still have the old on-disc-data format.

 

Hope this helps

 

Hartmut

--
You received this message because you are subscribed to the Google Groups "TortoiseSVN" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tortoisesvn...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/tortoisesvn/9da10a80-f67c-49d5-b0b0-56629db14c7b%40googlegroups.com.

olivier....@gmail.com

unread,
Jan 9, 2020, 11:34:40 AM1/9/20
to TortoiseSVN
Hello Justin,

I have been using TortoiseSVN "Create repository here" function, from Windows file explorer menu, either on a local drive or a mounted SMB share on the local network.
I went through the release notes quite quickly but didn't find a specific answer related to "format 8" reported error messages. My finding was from a search that lead to a forum user comment somewhere.
The error I was getting from using the software with SVN 1.9 was as follow:

Unable to connect to a repository at ......
Unable to open repository 'file.....' "
Expected FS format between '1' and '7'; found format '8'

The release notes do indicate some compatibility issues, but isn't very specific. However the server option might resolve it.

Thanks.

olivier....@gmail.com

unread,
Jan 9, 2020, 11:56:15 AM1/9/20
to TortoiseSVN
Hi Hartmut,

I use TortoiseSVN to create repositories and access to the repositories is in fact done with the "file://..." protocol.
All repositories prior to the major restructuring of SVN where upgraded long time ago so I don't have this issue.
I don't have much experience with the server side, but I could experiment locally by installing VisualSVN Server.

The SVN server solution on the LAN I am trying to migrate to is running on FreeBSD in an iocage jail, and as a result is quite a challenge for me to implement. I might say this is a work in progress as there isn't anything straight forward about it.

Thanks for the feedback, this gives me an incentive to focus more on the server side at this point.

Thanks,
Olivier



On Thursday, January 9, 2020 at 8:07:02 AM UTC-8, H. Niemann wrote:

Hi!

 

If I understand correctly, you are using no svn server process, but file:-addressed repositories, and

you have a tool (which is not a part of tortoise svn) which supports only formats up to 1.9.

 

Would you be able to recompile the tool against a more recent subversion library? That would be the cleanest thing, I think.

 

If not: does the tool you mention work on the repository files, or on the working copy files (i.e. .svn/ and below)? How does it interact with subversion data?

There was a big change in .svn between 1.7 and 1.8 if I recall correctly, switching to a sqlite database.

If it works on the working copy structure, then my ideas don’t apply.

 

Or you switch to a subversion server process (which might be a good idea anyway), then the client version and the server version

do not need to be identical and you can use the newest server available.

 

If your tool needs a special repository format because it reads (writes??) files directly, you could check, whether

svnadmin’s command line option “- –compatible-version” would help you

  • use the latest subversion
  • but with an older repo format

 

As far as I know, subversion keeps backwards compatibility for repositories, so you never need to recreate repositories if you upgrade subversion. (although it might be a good idea to do that sometimes – I don’t know)

You could even keep an old subversion version for creating empty repositories and use the latest version after that and still have the old on-disc-data format.

 

Hope this helps

 

Hartmut

 

Betreff: Best approach to dealing with different version of SVN clients and repositories?

Reply all
Reply to author
Forward
0 new messages