开发者

Subversion Commit hangs indefinitely after first file

I'm logged into our Linux web server via SSH. There are only three modifided files in my SVN repository, and I've typed svn ci -m "message" to commit them. I've been committing files all morning without any trouble, but now svn is hanging trying to send the first file!

My screen currently looks like this:

Sending        path/to/my/file.php



^C



^C





.

This ^C of course is where, after several minutes of waiting, I tried to cancel the operation using Control-C. The blank lines are where I pressed Enter just to make sure my SSH connection was still active.

I logged in again and performed an svn status on the repo, and it shows that everything开发者_如何转开发's locked.

What's going on here?? What can I do to rescue my repo and get it to commit normally again?


I ran into the exact same symptom, and in my case it turned out to be an RPC lock issue. I access my repo using file: locally and over NFS, and via svn+ssh:.

I couldn't commit from any client, but everything else worked fine.

Apparently an NFS client got out of whack and left a lock on the repo. ( Probably my MacBook using WIFI, which has proven to be an unreliable NFS client in general. )

Restarting statd and lockd on the server housing the repo immediately resolved the issue.


At a guess - and this is a complete WAG - you are using a Berkeley DB backed repository and are accessing the repo via file:// or svn+ssh://.

The best practice for using a BDB backed repo is to only access via svnserve (svn://) or the apache dav_svn module (http://) - this helps eliminate several issues around file ownership for the database log files. If you need to run a BDB repo, and you need to access via svn+ssh:// or file://, you should review the Supporting Multiple Repository Access Methods section of the Version Control with Subversion book.

If you aren't particularly tied to a BDB repo, I'd take a look at FSFS repos. They don't have many of the issues that the BDB repos have.

If you are already running an FSFS repo... well, you've got me there. I didn't think it was possible to wedge a FSFS repo.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜