在svn上提交大文件时出现超时错误
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在svn上提交大文件时出现超时错误相关的知识,希望对你有一定的参考价值。
我们正在使用SVN和ubuntu 14.04以及eclipse subversion和apache。当我们提交小文件时,它工作正常。但是当我们尝试提交大文件时,会出现以下错误。 eclipse错误:某些选定的资源未提交。部分选定资源未提交。 svn:E175002:提交失败(详情如下):svn:E175002:提交失败(详情如下):svn:E175002:无法读取HTTP状态行svn:E175002:PUT请求失败'/ svn / test /!svn / wrk /953b88fa-5601-0010-8146-c3b0661fb4b6/trunk/*/TokenManagerImpl.java”
apache error.log
[Mon Sep 05 19:12:18.533736 2016] [dav:error] [pid 26083:tid 140002512074496] (70007)The timeout specified has expired: [client 182.75.153.50:56725] Timeout reading the body (URI: /svn/test/!svn/wrk/953b88fa-5601-0010-8146-c3b0661fb4b6/trunk/*/TokenManagerImpl.java) [408, #0]
[Mon Sep 05 19:12:18.533851 2016] [dav:error] [pid 26083:tid 140002512074496] [client 182.75.153.50:56725] mod_dav_svn close_stream: error closing write stream [500, #185004]
[Mon Sep 05 19:12:18.533876 2016] [dav:error] [pid 26083:tid 140002512074496] [client 182.75.153.50:56725] Unexpected end of svndiff input [500, #185004]
Below is apche timeout configuration (apache.conf)
Timeout 300
KeepAlive On
MaxKeepAliveRequests 250
KeepAliveTimeout 20
LimitRequestBody 0
Below is reqtimeout.conf
<IfModule reqtimeout_module>
RequestReadTimeout header=200-400,minrate=5000
RequestReadTimeout body=1000,minrate=5000
</IfModule>
似乎无效的RequestReadTimeout
配置是根本原因。你不应该为body
设置一个特殊的超时。
Apache Subversion将提交数据作为请求体传输,其大小取决于提交的大小。因此,使用您当前具有的配置,所有超过约1000秒的提交操作都将失败。
以防其他人在这里结束:
svn通过http提交
大二进制文件~80MB。
传输文件数据。
svn:E185004:提交失败(详情如下):
svn:E185004:svndiff输入的意外结束
同时更改标头的apache2 reqtimeout.conf文件。
(症状是svn提交会在40秒后嘶哑...)
RequestReadTimeout header=200-400,minrate=500
为我修好了。 “你的旅费可能会改变...”
以上是关于在svn上提交大文件时出现超时错误的主要内容,如果未能解决你的问题,请参考以下文章
在片段java类中使用“this”和getLastSignedInAccount时出现错误[重复]