svn diff 在约 25 分钟后返回 E175009

svn diff 在约 25 分钟后返回 E175009

我正在尝试将 SVN 存储库映射到 Fisheye/Crucible 中,以便使用代码审查功能。我在使用 Fisheye 运行的某个命令时遇到了问题,但问题的根源似乎在于 SVN 服务器。正在使用 64 位 VisualSVN Server 3.6.1。

svn diff --summarize -r 6427:6428 http://file2/svn/REPO/@6428

我在 SVN 服务器上本地测试了相同的命令,但大约 25 分钟后,文本流被中断

svn: E175009: The XML response contains invalid XML
svn: E130003: Malformed XML: no element found

我发现的这种错误的例子似乎表明命令中的 URL 输入不正确,但这似乎并不适用于我的情况,因为最初大约有 110MB 的数据下降。

在命令运行时监控事件查看器会产生 3 个错误,但不会导致命令停止执行。后续重新运行每次都会导致相同的 3 个错误。

Provider encountered an error while streaming a REPORT response.  [500, #0]
A failure occurred while driving the update report editor  [500, #106]
Unknown error  [500, #106]

SVN 验证 repo 没有报告任何问题。

作为一种解决方法,我可以将 Fisheye 设置为在问题修订后开始索引,但这会导致在该修订之前最后修改的文件在审查中缺少差异数据,所以这并不理想。

更新 1 有问题的修订似乎与存储库布局的重新设计有关,我了解到这在使用第三方工具时可能会导致问题。我还注意到 SVN 1.9.5 之前的版本中有一个错误,允许 xml 中无效的字符,因此我正在尝试降级一些版本,看看是否有帮助。

更新 2 这些似乎是由执行上述 repo 布局重新设计时创建的特定分支引起的。进一步的研究表明我可以使用 svndumpfilter 删除不需要的项目。我没有找到有关如何删除分支的任何信息,只有特定文件。我还尝试将 repo 导出并导入到新安装中,但这并没有解决问题。

总体来说,SVN 的管理相当简单,但我不知道如何解决这个问题。任何建议都将不胜感激。谢谢!

答案1

我能够通过 svn:// 协议配置存储库访问来避免此错误。虽然 VisualSVN 不直接支持此功能,但所需的 svnserve.exe 存在并配置为指向存储库副本的新服务。

sc create svncustom binpath= "\"C:\Program Files (x86)\VisualSVN Server\bin\svnserve.exe\" --service -r F:\RepositoriesCopy" displayname= "Subversion Workaround Server" depend= Tcpip start= auto

这似乎不是一个安全的解决方案,但它消除了我遇到的硬阻塞错误。

相关内容