[darcs-users] darcs, lost in space

David Roundy droundy at abridgegame.org
Fri Feb 18 12:59:13 UTC 2005


On Thu, Feb 17, 2005 at 01:59:22AM -0500, Michael Conrad wrote:
> On Wed, Feb 16, 2005 at 11:18:53AM -0600, Andrew Wagner wrote:
> >
> > On Feb 16, 2005, at 8:57 AM, Vigor van Ort wrote:
> <snip>
> > >Until today.  I just made another patch, and when I do 'darcs push',
> > >it goes away and never comes back.  The darcs process has racked up 15
> > >minutes of CPU time as of this writing on the remote server, and is
> > >going strong.  The patch is less then 3k and touches only a couple
> > >files.   I tried aborting the push and doing 'darcs check' and 'darcs
> > >optimize' on the server, but both return immediately saying there is
> > >nothing to do.
> > >
> > >Now, I don't want to shit on your program, but I have to wonder what
> > >could possibly take so long with such a small patch when there is only
> > >1 developer and no conflicts!?
> > >
> > >On my local side I am running darcs-stable, current as of today.  On
> > >the remote end I was running darcs-1.0.2, but then I tried upgrading
> > >to darcs-stable head, but the behavior is the same.
> > >
> > >Any ideas?
> >
> <snip>
> > As a general rule, it is also
> > best to be using the same version of the executable on both your client 
> > and the server if possible.  (That would rule out any problem related 
> > to different versions of binaries)
> > 
> 
> Well, funny how things work, I think I also just ran into a problem
> that is probably version related, but I think I might have some bad
> news to go along with it.
> 
> I was using 1.0.1rc2 on my laptop (too lazy to recompile it, I guess)
> and 1.0.0 on my server (machine not powerful enough to compile ghc).
> 
> I realize this is bad, but I hadn't had any trouble so far, so I've
> just been letting it slide.
> 
> So, tonight, I pull a repo fresh from the server, hack away for a
> couple hours, and then record into 5 patches and then push them.
> 
> Suprisingly, darcs plays the infinity game with me.
> 
> I ^C and look around, delete the lock file, try again, ^C again, do
> darcs repair, which continues to play the infinity game, ^C again,
> delete patches/pending, delete current, and run darcs repair again,
> and it STILL plays the infinity game.
> 
> So, I let it run while I look through the patches.  Sure enough,
> there's a number of mergers in them, even though I had an exact copy
> of what was on the server.  OK, so the version difference probably
> caused this.  My fault, no big deal.
> 
> BUT
> 
> Meanwhile the repair finishes.  Happily, all my working files are as
> they should be, and darcs whatsnew reports "No Changes".  So that
> looks good.  However, when I run "darcs changes" to see my patch list,
> darcs takes almost 3 minutes to display the list.  I look at my patch
> files again, and the mergers are still there.

You've had a conflict (I can't tell when) and presumably haven't resolved
it.  I could try taking a look at your repositories--often I can guess what
happened better from the repository than from users' descriptions! :)

But basically, my guess is that you had the conflict before you even ran
"get" to grab the fresh copy.  darcs 1.0.2 won't let you run a push that
would cause a conflict, but earlier versions of darcs will merrily do so.
So presumably some time in the past someone (you?) pushed conflicting
patches, which have never been resolved.  When you run "get" conflicts
aren't marked.  If you had run "pull", the conflicts would have been
noticed and announced.

Running a darcs get from the server followed by a darcs resolve (and then
whatsnew) may clarify the situation.

> So here's my question: does darcs have any provision for REMOVING
> mergers from patch files during a repair?  I'm kind of expecting not,
> and that even if I put a latest version of darcs on my server that
> it won't help until I can get those mergers out of the patch files...

No, the mergers are there marking a conflict that happened.  Repairing the
repository doesn't modify the history, it just fixes _darcs/current to make
sure it's consistent with the history.  If you want to eliminate the
merges, you have to unrecord the patches.

> Can anyone confirm or deny?
> 
> And what are my chances of successfully removing those mergers by hand?
> 
> -Mike
> 
> 
> 
> 
> 
> 
> _______________________________________________
> darcs-users mailing list
> darcs-users at darcs.net
> http://www.abridgegame.org/mailman/listinfo/darcs-users

-- 
David Roundy
http://www.darcs.net




More information about the darcs-users mailing list