Subversion 1.9.2: Invalid filesystem format option 'addressing logical'

11,645

Solution 1

Although the OP solved his problem - by going back to an old version of Subversion (probably 1.6.x as he says it's the default shipped with RHEL6.6) - the error symptom poses a valid question which deserves more research.

Subversion 1.9 introduced a new version of their FSFS file system (v7), which is the filesystem used in the repository (not the working copy). If the repository in question was created by a 1.9 server, it seems it may cause compatibility problems with older clients when accessing through file:// protocol. The error message invalid filesystem format option 'addressing logical' corresponds to the new FSFS v7 feature "Logical Adressing".

About client-server, the compatibility matrix clearly states there is no issue, as far as the server code version supports the FSFS file system version of accessed repositories.

Note: Since 1.9, you can use the svnadmin info subcommand to check a repository's features (on the server). It even gives a hint which level of client compatibility the repository bears. Unfortunately, I don't have a 1.9 repo at hand for testing, but here's some example output:

Path: /repos/apache
UUID: ac336b0e-000b-11e0-b354-23d019ddd9ed
Repository Format: 5
Compatible With Version: 1.8.0
Repository Capability: mergeinfo
Filesystem Type: fsfs
Filesystem Format: 6
FSFS Sharded: yes
FSFS Shard Size: 1000
FSFS Shards Packed: 1631/1631
FSFS Logical Addressing: no
Configuration File: /repos/apache/db/fsfs.conf

Solution 2

I encountered this issue when migrating a few repos from RHEL 6.4 / subversion 1.6.11 to RHEL 7.4 / subversion 1.9.7.

I found the answer from this question worked for me: Subversion: SVN E160043. Expected FS format between '1' and '4

If you want to create backwards-compatible repositories from v1.8, you can use the --compatible-version flag. example:

svnadmin create --compatible-version 1.6 PATHNAME

http://svn.apache.org/repos/asf/subversion/trunk/subversion/libsvn_fs_fs/structure has a list showing which FS formats are compatible with different versions of svn. But you should just check the versions of svn on the machines that you are going to use, and make your repo compatible with the oldest version.

Share:
11,645
intechops6
Author by

intechops6

Mid aged IT guy working for Service based company. Exploring the new tech trends in the open community. Passion to learn Linux and nothing more...

Updated on June 13, 2022

Comments

  • intechops6
    intechops6 almost 2 years

    I installed SVN 1.9.2 in UAT Linux redhat 6.6 using tarball and run the SVNSERVE as daemon and all went fine. Then I created a repository and configured the repo for client access and tried to access the repository using tortoiseSVN but could not access the repository. Seeing the error,

    "db/format contains invalid filesystem format option addressing logical"

    Before installing in UAT, I tried in TEST server but I could install and access the repository with no issues. I am using Redhat 6.6 Server. Anyone seen this issue. I am stuck since next week we have production installation.


    Edit: Actually I moved to SVN installed bin directory and started the svnserve as daemon. The svnserve started was the one which is shipped with Redhat OS. It solved the issue when invoked the svnserve with full path.

  • bahrep
    bahrep over 8 years
    "compatibility" problem you refer to may occur when using Subversion 1.8 older client to access the repository locally over file:/// access schema. This is NOT client-server incompatibility. OP gets the error because he attempts accessing the repository over file:/// when the client acts as server and client both. Should he access the repository over http(s) or svnserve the error won't occur. Another possible reason: the server is not Subversion 1.9, but some older version.
  • zb226
    zb226 over 8 years
    @bahrep: Thanks for the input. If that's true I'll withdraw my scribbling. Still, some notes: SVN server is explicitly 1.9 on RHEL6.6 as per OP's question. SVN client is TortoiseSVN 1.7, which is a Windows client, so access via file:/// is quite unlikely.
  • bahrep
    bahrep over 8 years
    let's wait OP clarifying this :)
  • intechops6
    intechops6 over 8 years
    The SVN server installed in latest 1.9.2 in Redhat6.6 and accessing svn repos using svnserve. below is svnadmin info. Path: /<path>/Repo UUID: a079313c-77dd-11e5-94ae-b1684fb5e5f3 Repository Format: 5 Compatible With Version: 1.9.0 Repository Capability: mergeinfo Filesystem Type: fsfs Filesystem Format: 7 FSFS Sharded: yes FSFS Shard Size: 1000 FSFS Shards Packed: 0/0 FSFS Logical Addressing: yes Configuration File: <path>/Repo/db/fsfs.conf I believe when repos accessed using svnserve, there is no client-server compatibility.
  • zb226
    zb226 over 8 years
    @bahrep: Does the added information help to clear this up?