"hg up" hangs on a simple test case

Matt Mackall mpm at selenic.com
Mon Apr 16 12:05:25 CDT 2007


On Mon, Apr 16, 2007 at 11:58:29AM -0500, TK Soh wrote:
> On 4/16/07, Sergey Dolgov <solkaa at gmail.com> wrote:
> > Hi,
> >
> > I'm playing with mercurial and observing the following:
> >
> > $ hg clone http://selenic.com/repo/hg             # could be any repo
> > $ cd hg
> > $ hg up 1000
> > $ hg up
> >
> > The last command then never returns, eating 100% CPU time. However,
> 
> I confirmed this 'hangup' with crew repo:
> 
>     % hg up --debug
>     resolving manifests
>      overwrite False partial False
>      ancestor 3362b410c219 local 3362b410c219+ remote 35ad84669ca5
>     ^Cinterrupted!

Turns out it is actually doing something here, just incredibly slowly.
There's an algorithm in the copy-finding code that should be linear
time, but turns out to be quadratic or worse.

Testing a fix right now.

-- 
Mathematics is the supreme nostalgia of our time.


More information about the Mercurial mailing list