升级一个非常老的SVN仓库

8
我们目前拥有一个SVN服务器,使用VisualSVN Server作为我们的前端服务器,大多数客户端都运行了VisualSVN Visual Studio扩展和TortoiseSVN。
我们现有的仓库是很久以前创建的,据我估算是在2006年左右,并且格式文件显示它是Version 1...这似乎是一个1.5版本之前的仓库...
我们正在搬移服务器,并且升级SVN。上次我们进行升级时,我们只是对仓库文件夹进行了svnadmin hotcopy,然后在新机器上安装了VisualSVN服务器新版,复制文件并将其指向正确的方向,好吧,一切都正常了...
在这个新的升级中,我想知道有什么方法可以为仓库注入新活力?加快速度、占用更少的空间(整个仓库目前约为13GB),以及更好的性能。我知道我重复了两次提到性能/速度,但考虑到我们从升级前的32位P4机器中升级,该机器有约4GB RAM(3.6GB可用),而新机器是四核Xeon,拥有32GB RAM,我们的速度与最初相同,所以希望从升级中表现出速度上的提升...
有任何想法吗?

1
我已经为服务于成千上万开发人员的Subversion服务器进行了相当数量的硬件升级,性能总是有很大提高。负载情况如何?新服务器的CPU和内存使用情况如何?基准测试结果如何? - vinnyjames
1
负载相当低...大部分时间不超过5-10%...新的盒子可以完全访问四核心Xeon和32GB的内存。它最终将在虚拟机上运行。旧盒子已经被处理掉了,所以我无法在旧盒子和新盒子之间运行测试...我能想到的唯一区别是旧盒子是RAID 1(2个500GB 7200RPM硬盘),但新盒子是RAID5(4个250GB 7200RPM硬盘)。测试盒子的存储在RAID 10上,但完全是虚拟的,有4GB的真实内存和最大8GB(HyperV)。尽管如此,还没有对其进行性能测试...只是测试仓库... - TiernanO
1
是的,听起来像一个不错的规格,我认为它应该比旧的32位P4表现要好得多。如果没有直接比较结帐时间或其他指标,很难定义性能应该如何。此外,检查执行测试的客户端的规格也很重要。对于Windows客户端,请确保它们使用最新的1.6版本或任何1.7版本。 - vinnyjames
1个回答

3
请参考Subversion 1.6版本的发布说明,网址为:http://subversion.apache.org/docs/release-notes/1.6.html#repos-upgrades。Apache Subversion 1.7使用与Subversion 1.6相同的存储库格式,因此该条目也适用于SVN 1.7。

有两种升级存储库格式的选项:

  • 您可以在存储库上执行“转储/加载循环”操作:dump / load cycle。这可能会导致更小的存储库大小和更好的性能。

  • 您可以使用命令行升级存储库格式:svnadmin upgrade <path-to-repository>。将存储库升级到当前格式可能会导致更小的存储库大小。


尝试在存储库上运行svnadmin upgrade <repo>,但它很快就完成了,似乎没有任何变化...格式文件已更新为4,但存储库的大小没有改变...还应该发生什么?此外,“升级”是在测试机器上“离线”进行的,因此还没有用户访问它... - TiernanO
1
@TiernanO 这是预期的行为:Subversion只会提高格式号,有时会创建索引/文件。但如果您转储/加载存储库,则可能会获得更好的性能。 - Ivan Zhakov
很酷。谢谢提醒。我会尝试一下,看看会发生什么。 - TiernanO
2
所以,我们一直在移动代码库,并将其中一个项目移到了全新的 SVN 服务器上,速度非常快!非常棒!再次感谢关于转储/加载循环提示!像魔法般奏效! - TiernanO

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接