monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-devel] Re: tid 539 clobbered tid 482


From: Peter Simons
Subject: [Monotone-devel] Re: tid 539 clobbered tid 482
Date: 23 Jun 2005 15:00:17 +0200

Nathaniel Smith writes:

 >>> monotone: trying 3-way merge
 >>> monotone: misuse: tid 539 (blast) clobbered tid 482 (blast)
 >>
 >> http://www.loglibrary.com/show_page/view/106?Multiplier=3600&Interval=6&StartTime=1117952588

 > As far as we can tell without looking at your database,
 > you seem to have managed to put two distinct files, that
 > existed in the same revision, on top of each other, and
 > then try to merge that with yet another version.

I _suspect_ the problem is this: the branch contains a
directory hierarchy like this one:

  blast / foo.cc
        / bar.cc
        / ...

In a different branch (from which I propagate into the first
one), however, it looks like this:

  blast / src / blast / foo.cc
                      / bar.cc
                      / ...

                other / ...

I essentially created branch One by dropping everything but
the contents of "blast/src/blast", and then I executed:

  monotone rename blast/src/blast blast

That used to work just fine for the longest time. I don't
know what I could have done to trigger the collision I'm
apparently seeing now.

Would the debug output from a (failed) propagate attempt
maybe help clear this up?


 > Anyway, if that analysis is correct, your tree really is
 > in a strange state, and it just didn't get noticed until
 > now. This makes workarounds a bit tricky. One option is
 > to just comment out the call to ensure_no_rename_clobbers
 > in change_set.cc; I doubt doing so will break things any
 > worse than they already are.

Is there any chance of fixing the tree somehow? Although
being able to propagate again would be nice, I'm somewhat
worried about the data being messed up because of
inconsistencies. I'd much rather bite the bullet and
manually reorganize the database now, instead of waiting
until things go wrong and _force me_ to rebuild the
database.


 > For instance, you could rename the file/directory that's
 > causing the problem away on one side, do the merge, and
 > then fix things up by hand.

I tried that. I renamed my current "blast" directory to
"blast-src". But when I try to propagate the changes, I get
this error message now:

  $ monotone propagate org.example.src.vendor org.example.cxx
  monotone: propagating org.example.src.vendor -> org.example.cxx
  monotone: [source] 070048c653c0df0efe467d469fe5accb24443a70
  monotone: [target] 2d4fee622514a529d5e120f566cb7e14368a7e04
  monotone: common ancestor a16be684f16a59b397dfc9854ad4087e291aee54 found
  monotone: trying 3-way merge
  monotone: misuse: unable to resolve dir conflict 'lib/blast' -> 
'blast/src/cpp' vs. 'blast-src'

Any ideas what to do now?

In any case, thanks a lot to both you and Graydon for trying
to help me with this. I really appreciate your efforts.

Peter





reply via email to

[Prev in Thread] Current Thread [Next in Thread]