远程位置的SVN,大型结账有时会通过Jenkins失败

时间:2013-03-28 10:58:44

标签: svn jenkins

我在本地计算机上运行Jenkins但我们的SVN存储库位于其他位置。网络流量通过VPN隧道。有时,当Jenkins必须进行全面检查时,可能需要长达一个小时(这是正常的)。但是很多时候,由于结帐时出错而导致构建失败,并且Jenkins收到此错误消息:

org.tmatesoft.svn.core.SVNException: svn: E210004: Malformed network data

当我在同一网络中检查我的本地计算机时,我还没有收到错误,所以我怀疑它与Jenkins有关。我使用Jenkins v.1.467,Jenkins Subversion Workspace v.1.4和SVN server v.6.6.11

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,在redhat下。

  • Jenkins无法执行svn切换,但完整的结帐确实有效。
  • 命令行下的Svn完全按预期工作。

我怀疑SVNKit是原因,但很难找到这个bug的资源,所以我会在这个问题上加上我的两分钱。

我们有两个共同点:

  1. 网络流量通过VPN隧道。
  2. SVN确实有效,但Jenkins没有。
  3. 由于它经常发生在VPN隧道中,问题可能来自最大段大小(MMS),导致SVN命令永远不会到达主机,从而导致格式错误的网络数据异常。

    尝试将与svn服务器讨论的接口的MTU降低到600,例如,看看会发生什么。为此,请键入以下命令:

    ip link set dev eth0 mtu 600
    

    重启网络并使用Jenkins触发svn开关。