[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: trunk 'svn merge' takes a very long time to respond.

From: Julian Foad <julianfoad_at_btopenworld.com>
Date: Tue, 4 Dec 2012 13:53:21 +0000 (GMT)

Hyrum K Wright wrote:

> 'svn merge' appears to hang when running a simple merge:
>
> [[[
> $ svnd merge ^/subversion/trunk/
> ^Csubversion/svn/util.c:913: (apr_err=4)
> subversion/svn/merge-cmd.c:163: (apr_err=4)
> subversion/libsvn_client/merge.c:11856: (apr_err=4)
> subversion/libsvn_client/merge.c:11829: (apr_err=4)
> subversion/libsvn_client/merge.c:9295: (apr_err=4)
> subversion/libsvn_client/merge.c:9001: (apr_err=4)
> subversion/libsvn_client/merge.c:8762: (apr_err=4)
> subversion/libsvn_client/merge.c:8599: (apr_err=4)
> subversion/libsvn_client/merge.c:6388: (apr_err=4)
> subversion/libsvn_ra_serf/log.c:607: (apr_err=4)
> subversion/libsvn_ra_serf/util.c:819: (apr_err=4)
> subversion/libsvn_ra_serf/util.c:786: (apr_err=4)
> svn: E000004: Error running context: Interrupted system call
> ]]]
>
> This is using a trunk client build at r1416744 on Mac OS X.  I also
> see the same problem using a Linux client, same vintage.  It was
> unresponsive for something on the order of 5 minutes before I finally
> killed the process with the above output.

Hi Hyrum.  I don't know if you're seeing a network/server problem or a client inefficiency or a bit of both.  I have been thinking two things about the client merge code though:

* It would be good to insert some feedback about what it's doing in the time before it starts making local changes, to give the user a more pleasant experience during a large merge.

* I know there is room for optimization: at the moment, for example, I believe it calculates the youngest common ancestor of the two branches more than once (contacting the repository each time).

I'll see if I can reproduce a "large" merge scenario where the start-up time is significant, and work out where the main bottleneck is.

For your particular case, can you tell me what branch at what revision your merge target was?

> I don't know enough about what's going on under the hood, but it
> appears the serf is lost.  None of my CPUs are pegged, though, so it
> looks like it's just waiting on network?  Hard to believe, as I've
> got a 15/5 fiber connection.

It could easily be the server (or the network at the server end) that's responding slowly.

- Julian

> Running it again, I start to get a response after 7 minutes.
> Something strange going on here...
Received on 2012-12-04 14:53:59 CET

This is an archived mail posted to the Subversion Dev mailing list.