Each repository follows a repository format and a data store format.
SUBVERSION VERSION NUMBER | SCHEMA VERSION |
---|---|
Up to and including 0.27 | 1 |
0.28 - 0.33.1 | 2 |
0.34 - 1.3 | 3 |
(no released version used this) | 4 |
1.4 - | 5 |
Source: https://svn.apache.org/repos/asf/subversion/trunk/notes/repos_upgrade_HOWTO
FSFS is used as the default data store since Subversion 1.2. Before that, Berkeley DB (BDB) was used by default.
More info about the FSFS structure can be found here: https://svn.apache.org/repos/asf/subversion/trunk/subversion/libsvn_fs_fs/structure
FSFS format | Compatible with | Summary |
---|---|---|
1 | Subversion 1.1+ | The very first release of FSFS repository backend and the first FSFS filesystem format. |
2 | Subversion 1.4+ | Introduced compression for the data stored in the repository. |
3 | Subversion 1.5+ | Introduced the merge tracking and the sharded repository layout. |
4 | Subversion 1.6+ | Introduced repository packing and representation sharing (i.e. data deduplication). |
6 | Subversion 1.8+ | Extended the repository packing feature to also pack revision properties. |
7 | Subversion 1.9+ | Introduced logical revision content addressing and several optional performance-related configuration options. |
8 | Subversion 1.10+ | Introduced LZ4 compression. |
Source: https://www.visualsvn.com/support/topic/00135/#FilesystemFormat
Since Subversion 1.9, you can get both the repository format and the data store format with a single command executed on the server side:
svnadmin info MyRepo
Which gives, for example:
Path: MyRepo
UUID: 1fd1a4d4-5b13-11ee-b3b5-690c71163c99
Revisions: 733
Repository Format: 5
Compatible With Version: 1.6.0
Repository Capability: mergeinfo
Filesystem Type: fsfs
Filesystem Format: 4
FSFS Sharded: yes
FSFS Shard Size: 1000
FSFS Shards Packed: 0/0
FSFS Logical Addressing: no
Configuration File: MyRepo/db/fsfs.conf
More info: https://subversion.apache.org/docs/release-notes/1.9.html#fsfs-improvements