Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Subversion 1.9.2: Invalid filesystem format option 'addressing logical'

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.

like image 822
intechops6 Avatar asked Oct 21 '15 10:10

intechops6


2 Answers

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
like image 137
zb226 Avatar answered Sep 19 '22 11:09

zb226


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.

like image 31
Ace Avatar answered Sep 19 '22 11:09

Ace