3

我使用svnadmin hotcopy --incremental命令创建备份。颠覆 1.9.5。发现此命令在目录 db/revs/ 中重新创建大小超过例如 120kb 的已备份修订文件。备份日志(第一次备份到空文件夹,下一个备份到同一文件夹):

    C:\Users\Администратор.WIN-DBM2OE9OJ54>svnadmin hotcopy D:\Repositories\Sandbox D:\Test --incremental
* Copied revision 0.
* Copied revision 1.
* Copied revision 2.
* Copied revision 3.
* Copied revision 4.
* Copied revision 5.
* Copied revision 6.
* Copied revision 7.
* Copied revision 8.
* Copied revision 9.
* Copied revision 10.
* Copied revision 11.
* Copied revision 12.
* Copied revision 13.
* Copied revision 14.
* Copied revision 15.
* Copied revision 16.
* Copied revision 17.
* Copied revision 18.
* Copied revision 19.
* Copied revision 20.
* Copied revision 21.
* Copied revision 22.
* Copied revision 23.
* Copied revision 24.
* Copied revision 25.
* Copied revision 26.
* Copied revision 27.
* Copied revision 28.
* Copied revision 29.
* Copied revision 30.
* Copied revision 31.
* Copied revision 32.
* Copied revision 33.
* Copied revision 34.
* Copied revision 35.
* Copied revision 36.
* Copied revision 37.
* Copied revision 38.
* Copied revision 39.
* Copied revision 40.
* Copied revision 41.
* Copied revision 42.
* Copied revision 43.
* Copied revision 44.
* Copied revision 45.
* Copied revision 46.
* Copied revision 47.
* Copied revision 48.
* Copied revision 49.
* Copied revision 50.
* Copied revision 51.
* Copied revision 52.
* Copied revision 53.
* Copied revision 54.
* Copied revision 55.

C:\Users\Администратор.WIN-DBM2OE9OJ54>svnadmin hotcopy D:\Repositories\Sandbox D:\Test --incremental
* Copied revision 14.
* Copied revision 21.
* Copied revision 22.

C:\Users\Администратор.WIN-DBM2OE9OJ54>svnadmin hotcopy D:\Repositories\Sandbox D:\Test --incremental
* Copied revision 14.
* Copied revision 21.
* Copied revision 22.

依此类推,每个下一个svnadmin hotcopy --incremental命令。原始存储库和备份的二进制比较修订版 14、21、22 文件给出相同的结果。这种奇怪行为的原因是什么?

4

2 回答 2

0

问题出在 Windows Server 重复数据删除服务中。Subversion 开发人员告诉 apr 库有这样的错误。禁用存储库文件夹的重复数据删除可以解决问题。

于 2018-06-20T05:41:18.993 回答
0

仅 FSFS 存储库支持增量备份。

从输出svnadmin hotcopy --help

如果传递了 --incremental,则不会再次复制目标中已经存在的数据。FSFS 存储库实现了增量模式。

快速搜索后发现以下 SO 帖子: 如何确定 Subversion 存储库是使用 BDB 还是 fsfs 后端创建的?

从该帖子的接受答案:

repository\db\fs-type使用文本编辑器打开文件。它包含bdbfsfs指示它使用的后端。

如果svnadmin hotcopy --incremental总是复制文件,那么fs-type上面文件的内容很可能是bdb.

如果您有动力,您可以将 BDB 存储库转换为 FSFS 存储库。

来自http://linuxwisdom.blogspot.com/2007/08/convert-subversion-repository-from-bdb.html

创建 FSFS 存储库。

svnadmin create --fs-type fsfs repo2

转储第一个存储库。

svnadmin dump repo1 > repo2.dumpfile

将转储文件加载到新的 FSFS 存储库中。

svnadmin load repo2 < repo2.dumpfile
于 2018-01-02T20:29:33.277 回答