[Bese-devel] darcs, two branches, conflicts and the nature of exponential problems

Attila Lendvai attila.lendvai at gmail.com
Mon Aug 7 21:09:13 UTC 2006


hi!

so, i've been pulling a patch from _dev to _ajax for the third day
now. the problem is that darcs, when resolves conflicting patches,
operates with an algorithm that is exponential with the conflicts and
patches involved.

this problem surfaces in the real world when there are two branches of
the same project and both are modified simultaneously, which is the
case with UCW.

possible solutions:
 1) only record patches in one of the repos (seems like it's a bit
late for this)
 2) do not care that there's no subset relation between the patches of
the two repos (could this patch be pulled it would conflict and the
three lines of it had to be rewritten by hand, anyway.) but i don't
like this idea that much, and i think if we pulled the patches in
question from _ajax to _dev then the same issue would arise.
 3) there's a tedious process to get rid of problematic patches (in
the ajax branch, basically rerecord some patches and the transitive
closure of their dependencies by hand) but other then being tedious it
also renders all instances of that repo invalid and they all need to
be darcs get again.

ideas? suggestions?

i think we'll (i'll) have to do 3 eventually hoping that it'll actually help.

the problematic patches if there is someone with deeper darcs knowledge here:

20060529080637-dd2a1-af989a5d419670f87af9f3a1f1fd148aa14dad1a.gz: 8
20060607120319-dd2a1-90e3d39e01c9698b750ab8af72486f05836c90f1.gz: 8
20060618201426-74ae0-6fe26e4fc60fbbdb00cea71c33b107099d826a84.gz: 7
20060526192234-dd2a1-c19bb4ea05bef3ec79bc1f6a383bb57bf14ec463.gz: 6
20060709102712-74ae0-b0a9952b10dfb167988862399ed902ba45800b9a.gz: 6
20060709102712-74ae0-dac742e9171b5ad07cf2dfafbeb0f279438e74e6.gz: 6
20060622123735-dd2a1-5998014dc5f6ca157c7441e7b3b07f7517618c12.gz: 5
20060613220202-0fdcb-5ca9176234cfdb4a9256166caee6adaa1beac991.gz: 4
20060621132840-de23e-f27e931cd118908c4ad6e1e0eb9118e50a1bff30.gz: 4
20060630165226-6b9e8-d0197273bf0bef3e9f04094f5cc5a92275ba2c95.gz: 4

-- 
- attila

"- The truth is that I've been too considerate, and so became
unintentionally cruel...
 - I understand.
 - No, you don't understand! We don't speak the same language!"

Ingmar Bergman - Smultronstället (Wild Strawberries)


More information about the bese-devel mailing list