FSFS 逻辑寻址:无

FSFS Logical Addressing: no

我正在尝试将颠覆服务器从 1.6 升级到 1.9,我已经安装了 mod_dav 模块和 svn binaries.The svn 1.9 的一大特点是 FSFS 文件系统格式 7,它具有很多功能,为了启用所有这些功能,我只是 运行 命令 svnadmin upgrade ,它给我以下输出

Path: repo1<br>
UUID: c67fd7ed-3808-3f41-9d25-6d8197ee6fd9<br>
Repository Format: 5<br>
Compatible With Version: 1.9.0<br>
Repository Capability: mergeinfo<br>
Filesystem Type: fsfs<br>
Filesystem Format: 7<br>
FSFS Sharded: yes<br>
FSFS Shard Size: 1000<br>
FSFS Shards Packed: 0/320<br>
FSFS Logical Addressing: no<br>
Configuration File: repo1/db/fsfs.conf<br>

这里根据发行说明,要启用所有格式 7 功能,FSFS 逻辑 Addressing:Yes(以前没有),所以我的问题是如何将上面的 属性 设置为是

您可以更改 repo1/db/fsfs.conf 文件中的内容寻址类型。但你真的需要吗?很可能,你没有。 :)

Subversion 存储库中有两种类型的修订内容寻址:物理寻址和逻辑寻址。

  • 物理寻址是解决 Subversion 存储库中修订内容的最稳健可靠的方法。

  • 逻辑寻址是一种可选的方法来寻址存储库中的修订内容。 FSFS 格式版本 7 中引入了逻辑寻址(Subversion 1.9 中的新功能)。逻辑寻址为未来 Subversion 版本中要实现的功能添加了一个额外的转换层。

您可以在文章 KB135: Understanding the Subversion repository types and formats 中找到有关 Subversion 存储库的属性和选项的更多信息。

你可以默默地做,但我希望你有足够的磁盘 space 来转换。简单地说,您可以创建新的存储库,然后应用新的配置。这可以存储在原始存储库旁边。然后配置从原始存储库到新存储库的镜像,然后调用 svnmirror 二进制文件。建议进行压缩。它会减慢操作速度,但在我的实践中,用户看不到它。然后你可以压缩存储库,然后备份会容易得多,通过 svnadmin pack 。之后,您可以详细测试新存储库,然后......在很短的时间内关闭存储库,交换新存储库并切换。请记住,在切换过程中,您应该将 repo UID 从旧的复制到新的。与复制钩子一起做。如果一切正常,你可以将旧的 repo 移到别处,最后销毁。您可以逐步对所有存储库执行此操作,并且不可用时间很短。

关于逻辑寻址的一些事情。我觉得和bahrep一样,逻辑寻址很新鲜。会更好的,它会被别人测试,而不是我们:)

我在 fsfs 中用我的 repos 定义了一些选项,比如 repo sharing as true(减少重复)、目录 deltification(相同)以及 props 和压缩。我测试了提交、签出、更新和合并,时间开销对我来说是不可见的。幸运的是我节省了很多磁盘space。