Defect #5439
closedRedmine cannot connect to remote SVN repository
0%
Description
I'm getting this exception when redmine try to connect to a "Visual SVN" repo.
Processing RepositoriesController#show (for ourIPaddress at 2010-05-04 11:35:13) [GET]
Parameters: {"action"=>"show", "id"=>"tprefactor", "controller"=>"repositories"}
SystemExit (exit):
app/models/repository/subversion.rb:66:in `fetch_changesets'
app/models/repository/subversion.rb:65:in `each'
app/models/repository/subversion.rb:65:in `fetch_changesets'
app/models/repository/subversion.rb:58:in `fetch_changesets'
app/models/repository/subversion.rb:57:in `reverse_each'
app/models/repository/subversion.rb:57:in `fetch_changesets'
app/controllers/repositories_controller.rb:70:in `show'
public/dispatch.fcgi:24
Rendering /var/www/redmine/public/500.html (500 Internal Server Error)
More info:
repo URL: http://svn.somedomain.com:8888/repo
Over ubuntu server, Apache2.
ruby 1.8.6 (2007-09-24 patchlevel 111) [i486-linux]
Rails 2.3.5
MySQL 5
It doesn't fail using other repositories.
Updated by Felix Schäfer over 14 years ago
Can you svn ls http://therepo
as the user running the web server?
Updated by Hernan Dominguez over 14 years ago
Yes, I can, btw... I've configured redmine to login with credentials to that repo.
Updated by Felix Schäfer over 14 years ago
If it works with svn ls --username xx --password yy http://some.path
without the need to do any other kind of input, it should work. The error from the log is not very helpful unfortunately.
Updated by Hernan Dominguez over 14 years ago
I did it, it works, I don't know why redmine cannot get access... maybe because I'm putting a different port in the URL? I don't know how redmine is parsing the URL.
Updated by Felix Schäfer over 14 years ago
Please see if the redmine log contains any useful output (redmine_dir/logs/production.log
) and try the above command again as the user running redmine (the port shouldn't make a difference). Do you already have other svn repositories working?
Updated by Hernan Dominguez over 14 years ago
- Status changed from New to Resolved
Hi, it wasn't a redmine issue at all, I've solved it increasing the Time Out time of mod_fcgid.
How I found it?, I've put redmine in debug level. I found the repo was huge and redmine was making A LOT of querys to the DB. I found the repo was so huge that redmine was blowing due a time out of the apache module I'm using to running to.
Error:
[Tue Jun 29 20:21:25 2010] [warn] mod_fcgid: read data timeout in 360 seconds
[Tue Jun 29 20:21:25 2010] [error] [client 192.168.10.1] Premature end of script headers: dispatch.fcgi, referer: http://redmine:8080/projects/blabla/issues
even increasing from 40sec (mod_fcgid default) to 360sec it was failing, but after a few tries, it downloaded all the info from the repository and worked like a charm.
As I'm running many virtualhosts in this apache, I've added the following to the redmine's virtualhost:
<IfModule mod_fcgid.c>
IdleTimeout 300
MaxProcessCount 200
DefaultMinClassProcessCount 1
DefaultMaxClassProcessCount 25
IPCConnectTimeout 20
IPCCommTimeout 360
IdleScanInterval 120
ProcessLifeTime 900
BusyTimeout 300
BusyScanInterval 120
ErrorScanInterval 3
ZombieScanInterval 3
</IfModule>
Updated by Felix Schäfer over 14 years ago
- Status changed from Resolved to Closed
For whomever's sake what size is that repo that it takes so long? I mean the DB may get a lot of requests, but shouldn't be the bottleneck here if it sits of the same machine as the redmine installation, at least not in the range of 360 seconds (that's 1 friggin' hour!).
Or is it maybe that you hadn't imported that repository yet and it took time for redmine to sift through all revisions and the whole repository tree? If so you should head over to the FAQ and read up the alternative fetch changesets methods (cron, post-commit) to work around that problem in the future.