TortoiseSVN checkout failed error svn: E120106: ra_serf: The server sent a truncated HTTP response body

前端 未结 7 1081
情书的邮戳
情书的邮戳 2021-02-07 03:45

TortoiseSVN shows the error svn: E120106: ra_serf: The server sent a truncated HTTP response body during checkout operation. How to solve the problem?

7条回答
  •  萌比男神i
    2021-02-07 04:02

    I experienced the same issue, but in the context of our CI system teamcity. rather than using teamcity itself to checkout, some scripts do perform manual svn checkout and caused this error.

    Internal SVN clean checkout canceled on large repositories for working copy format 1.7 using the svn.exe via script instead of build-in teamcity SVN with the message: "svn: E120106: ra_serf: The server sent a truncated HTTP response body."

    • clean checkout of small repository works regardless of working copy format
    • clean checkout of large repository works using working copy format 1.5
    • using export instead of checkout works
    • using teamcity 8.1.5 internal svn client works (no idea why)
    • using svn client 1.7 instead of 1.8 results in a similar timeout related error: "svn: E175002: REPORT of '/!svn/me': Could not read response body: Secure connection truncated"

    Increasing the SVN timeout value on the server did indeed fix the problem and neither the "ra_serf" nor the "secure connection truncated error" occurred since.

    Aniket Thakur suggestion of reverting the svn client version did have effect on this issue, yet I was unable to find the right version. (if there is one)

    Sanmat Jhanjhari suggestion of decreasing the compression level is not only part of the accepted solution but the reason this might work is that it keeps the response time between SVN server and client steady and compressing large files no longer cause timeouts.

    changing the working copy to 1.5 is a client side only alternative one could take to resolve this issue. the reason this works is most likely related to the way the data is compressed, but I couldn't figure out the exact reasons.

    using export is a dire client side alternative one could take in case you are only interested in the data itself and do not need it to be a repository. export behavior is slightly different though. for example it does not overwrite existing files. I also couldn't figure out why this works compared to normal checkout.

提交回复
热议问题