首页 > 解决方案 > SVN 在初始提交时超时

问题描述

我一直在尝试让 SVN 在连接了 NAS 的 Raspberry Pi 3B+ 上工作。我已经让它大部分工作(我能够提交小项目/测试)。但是,我正在尝试提交一个大小约为 2.4GB 的项目(运行导入大约需要 2.5 小时)。

在初始提交/导入时,Tortoise 成功浏览了所有文件,然后说“提交事务...”大约 10 分钟,然后以错误结束。我查看了权限,我已经删除/删除了 NAS 上的存储库,并使用权限重新创建了项目,并多次使用略有不同的设置重试......我已经编辑了几个超时设置(如下所示) . 我很困惑为什么这一直失败。(仅供参考 - 我的大部分编辑来自我在网上发现的类似(但不相同)问题的其他帖子)。

以下是有关此问题的错误、配置和系统信息。有人可以帮我解决这个问题吗?提前感谢你的帮助。

Tortoise SVN 提交错误:

Connection timed out
Additional errors:
Unexpected server error 500 'Internal Server Error' on
 '/svn/LinkedBound/!svn/txn/0-0'

Apache2 错误日志:

[Sun Jul 12 12:38:18.450162 2020] [dav:error] [pid 901:tid 1905226784] [client 192.168.1.92:57605] Could not DELETE /svn/LinkedBound/!svn/txn/0-0.  [500, #0]
[Sun Jul 12 12:38:18.454529 2020] [dav:error] [pid 901:tid 1905226784] [client 192.168.1.92:57605] could not abort transaction.  [500, #2]
[Sun Jul 12 12:38:18.454591 2020] [dav:error] [pid 901:tid 1905226784] [client 192.168.1.92:57605] Transaction '0-0' cleanup failed  [500, #2]
[Sun Jul 12 12:38:18.454629 2020] [dav:error] [pid 901:tid 1905226784] [client 192.168.1.92:57605] Can't remove '/home/pi/myNAS/Projects/GameDev/repos/Unity/LinkedBound/db/transactions/0-0.txn/node._7f.0'  [500, #2]
[Sun Jul 12 12:38:18.454666 2020] [dav:error] [pid 901:tid 1905226784] [client 192.168.1.92:57605] Can't remove file '/home/pi/myNAS/Projects/GameDev/repos/Unity/LinkedBound/db/transactions/0-0.txn/node._7f.0': No such file or directory  [500, #2]
[Sun Jul 12 12:38:18.612336 2020] [dav:error] [pid 903:tid 1894757408] [client 192.168.1.92:51135] Could not MERGE resource "/svn/LinkedBound/!svn/txn/0-0" into "/svn/LinkedBound".  [500, #0]
[Sun Jul 12 12:38:18.612503 2020] [dav:error] [pid 903:tid 1894757408] [client 192.168.1.92:51135] An error occurred while committing the transaction.  [500, #160014]
[Sun Jul 12 12:38:18.612553 2020] [dav:error] [pid 903:tid 1894757408] [client 192.168.1.92:51135] Reference to non-existent node '_fhr.0.t0-0' in filesystem '/home/pi/myNAS/Projects/GameDev/repos/Unity/LinkedBound/db'  [500, #160014]

Tortoise SVN Config (%appdata%\subversion\config) 改动:

http-timeout = 3600000

~/.subversion/servers 改动:

[global]

http-timeout = 3600000

权限集:

sudo chown -R www-data:www-data /home/pi/myNAS/Projects/GameDev/repos/ && sudo chmod a+x /etc/apache2

dav_svn.conf 设置:

KeepAlive On
MaxKeepAliveRequests 0
# Set to 10h.
Timeout 36000

SVNCompressionLevel 5
SVNInMemoryCacheSize 16384
SVNCacheTextDeltas On
SVNCacheFullTexts On
SVNAllowBulkUpdates Prefer

<Location /svn>
  DAV svn
  SVNParentPath /home/pi/myNAS/Projects/GameDev/repos/Unity
  SVNListParentPath On
  AuthType Basic
  AuthName "Subversion Repo"
  AuthUserFile /etc/apache2/dav_svn.passwd
  <LimitExcept GET PROPFIND OPTIONS REPORT>
    Require valid-user
  </LimitExcept>
  # Allow large request
  LimitXMLRequestBody 0
 </Location>

WD My Cloud EX4100 /etc/exports 设置:

"/nfs/Projects" *(rw,no_root_squash,sync,no_wdelay,insecure,no_subtree_check,crossmnt)

NAS 信息:

WD My Cloud EX4100
Firmware: 2.31.204

龟甲SVN版

1.14 (r28864)

SVN 操作系统

Linux 4.19.118-v7+ #1311 SMP Mon Apr 27 14:21:24 BST 2020 armv7l
GNU/Linux Distributor ID: Raspbian 
Description:    Raspbian GNU/Linux 10 (buster) 
Release:        10 
Codename:       buster

我的电脑:

Microsoft Windows [Version 10.0.18363.900]

标签: svn

解决方案


我从 SVN 切换到 GIT。

我无法提交大于 100MB 的文件,我找不到好的文档和/或我找不到任何可以让 SVN 在 RPi 3 B+ 上工作的人。

GIT 似乎在 RPi3B+ 上运行良好。


推荐阅读