List:Internals« Previous MessageNext Message »
From:MARK CALLAGHAN Date:June 18 2010 10:59pm
Subject:Re: questions about merging the facebook patch to tag:mysql-5.1.47
View as plain text  
For an easy reproduction case of something that should have been a trivial merge

bzr branch -r tag:mysql-5.1.47 <path to 5.1 branch> 5147local
bzr branch -r 3365 5147local repro
cd repro
vi storage/innodb_plugin/data/data0data.c --> add one line of text,
storage/innodb_plugin/data0data.c was deleted & added by r3366
bzr commit
bzr merge -v -r 3366 ../5147 >& /tmp/r3366 &

interesting lines from the output of 'bzr merge'

+N  storage/innodb_plugin/data/data0data.c
RM  storage/innodb_plugin/data/data0data.c =>
storage/innodb_plugin.moved/data/data0data.c.THIS

Conflict: can't delete storage/innodb_plugin.moved because it is not
empty.  Not deleting.
Conflict adding file storage/innodb_plugin.  Moved existing file to
storage/innodb_plugin.moved.
Conflict because storage/innodb_plugin.moved is not versioned, but has
versioned children.  Versioned directory.
Conflict: can't delete storage/innodb_plugin.moved/data because it is
not empty.  Not deleting.
Conflict because storage/innodb_plugin.moved/data is not versioned,
but has versioned children.  Versioned directory.
Contents conflict in storage/innodb_plugin.moved/data/data0data.c


On Fri, Jun 18, 2010 at 1:25 PM, MARK CALLAGHAN <mdcallag@stripped> wrote:
> I publish changes from a local MySQL branch at
> http://launchpad.net/mysqlatfacebook/51
>
>
> I need to merge changes from mysql 5.1.47 and use a command like:
> bzr merge -v -r tag:mysql-5.1.47 /s/bzr/mysql/5.1
>
> In this case /s/bzr/mysql/5.1 has
> bzr+ssh://bazaar.launchpad.net/~mysql/mysql-server/mysql-5.1
>
>
>
> I have merged without problems to r3365
> bzr merge -v -r 3365 /s/bzr/mysql/5147
>
> In this case /s/bzr/mysql/5147 has bzr branch -r tag:mysql-5.1.47
> /s/bzr/mysql/5.1 5147
>
> Things go bad at r3366
> bzr merge -v -r 3365 /s/bzr/mysql/5147
>
> I get lots of conflicts like this:
> Text conflict in sql/slave.cc
> Conflict: can't delete storage/innodb_plugin.moved because it is not
> empty.  Not deleting.
> Conflict adding file storage/innodb_plugin.  Moved existing file to
> storage/innodb_plugin.moved.
> Conflict because storage/innodb_plugin.moved is not versioned, but has
> versioned children.  Versioned directory.
> Conflict: can't delete storage/innodb_plugin.moved/btr because it is
> not empty.  Not deleting.
> Conflict because storage/innodb_plugin.moved/btr is not versioned, but
> has versioned children.  Versioned directory.
> Contents conflict in storage/innodb_plugin.moved/btr/btr0btr.c
> Contents conflict in storage/innodb_plugin.moved/btr/btr0cur.c
> Contents conflict in storage/innodb_plugin.moved/btr/btr0pcur.c
> Contents conflict in storage/innodb_plugin.moved/btr/btr0sea.c
>
> And I can see things like this from the command output. I don't
> understand why a directory would have a change -- but I am not skilled
> with bzr
> +N  mysql-test/suite/innodb_plugin/
>
> The contents of r3366 might be interesting. It looks like
> storage/innodb_plugin was recursively deleted and then added by this
> change.
> Why was that done?
> Does that mean that people like me who maintain our own trees and want
> to merge now have a lot more work to do?
>
> I merged to 5.1.46 a few months back without any problems like this.
>
> ------------------------------------------------------------
> revno: 3366 [merge]
> committer: Kristofer Pettersson <kristofer.pettersson@stripped>
> branch nick: mysql-5.1-bugteam
> timestamp: Mon 2010-05-03 19:21:09 +0200
> message:
>  Automerge
> removed:
> ...
>  storage/innodb_plugin/
>  storage/innodb_plugin/CMakeLists.txt
>  storage/innodb_plugin/COPYING
>  storage/innodb_plugin/COPYING.Google
>  storage/innodb_plugin/COPYING.Percona
>  storage/innodb_plugin/COPYING.Sun_Microsystems
> added:
> ...
>  storage/innodb_plugin/
>  storage/innodb_plugin/CMakeLists.txt
>  storage/innodb_plugin/COPYING
>  storage/innodb_plugin/COPYING.Google
>  storage/innodb_plugin/COPYING.Percona
>  storage/innodb_plugin/COPYING.Sun_Microsystems
>  storage/innodb_plugin/ChangeLog
>  storage/innodb_plugin/Doxyfile
>
>
>
> --
> Mark Callaghan
> mdcallag@stripped
>



-- 
Mark Callaghan
mdcallag@stripped
Thread
questions about merging the facebook patch to tag:mysql-5.1.47MARK CALLAGHAN18 Jun
  • Re: questions about merging the facebook patch to tag:mysql-5.1.47MARK CALLAGHAN19 Jun
  • Re: questions about merging the facebook patch to tag:mysql-5.1.47Sergei Golubchik19 Jun
    • Re: questions about merging the facebook patch to tag:mysql-5.1.47Konstantin Osipov19 Jun
      • Re: questions about merging the facebook patch to tag:mysql-5.1.47Sergei Golubchik19 Jun
        • Re: questions about merging the facebook patch to tag:mysql-5.1.47Konstantin Osipov19 Jun
          • Re: questions about merging the facebook patch to tag:mysql-5.1.47Sergei Golubchik19 Jun
            • Re: questions about merging the facebook patch to tag:mysql-5.1.47Konstantin Osipov19 Jun
    • Re: questions about merging the facebook patch to tag:mysql-5.1.47MARK CALLAGHAN19 Jun
    • Re: questions about merging the facebook patch to tag:mysql-5.1.47Stewart Smith21 Jun
      • Re: questions about merging the facebook patch to tag:mysql-5.1.47Vasil Dimov21 Jun
        • Re: questions about merging the facebook patch to tag:mysql-5.1.47Stewart Smith22 Jun
  • Re: questions about merging the facebook patch to tag:mysql-5.1.47Konstantin Osipov19 Jun
    • Re: questions about merging the facebook patch to tag:mysql-5.1.47MARK CALLAGHAN19 Jun
      • Re: questions about merging the facebook patch to tag:mysql-5.1.47Konstantin Osipov19 Jun
  • Re: questions about merging the facebook patch to tag:mysql-5.1.47Davi Arnaut19 Jun
    • Re: questions about merging the facebook patch to tag:mysql-5.1.47MARK CALLAGHAN19 Jun
      • Re: questions about merging the facebook patch to tag:mysql-5.1.47Davi Arnaut19 Jun
  • Re: questions about merging the facebook patch to tag:mysql-5.1.47Vasil Dimov21 Jun