3

我在本地机器上运行 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. 1.6.11

4

1 回答 1

1

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

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

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

我们有两个共同点:

  1. 网络流量通过 VPN 隧道。
  2. SVN 确实有效,但詹金斯没有。

由于它经常发生在 VPN 隧道中,问题可能来自最大分段大小 (MMS),导致 SVN 命令永远无法到达主机,从而导致格式错误的网络数据异常。

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

ip link set dev eth0 mtu 600

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

于 2013-10-24T12:46:48.310 回答