{"thread":{"id":"5916","subject":"git-svn and u-boot broken.","startedAt":"2006-10-13T19:19:34Z","lastAt":"2006-10-14T23:54:04Z","messageCount":9,"participants":["Joakim Tjernlund","Randal L. Schwartz","Eric Wong"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"28738","messageId":"00ad01c6eefc$84298280$1267a8c0@Jocke","threadId":"5916","inReplyTo":null,"subject":"git-svn and u-boot broken.","fromName":"Joakim Tjernlund","fromEmail":"joakim.tjernlund@transmode.se","sentAt":"2006-10-13T19:19:34Z","receivedAt":"2006-10-13T19:19:34Z","isPatch":false,"sender":{"key":"joakim.tjernlund@transmode.se","avatar":null},"body":"I am trying to create a SVN tree using git-svn from the u-boot git tree and it doesn't work.\nFirst, I had to change this (from memory) in git-svn:\n  my $got = SVN::TxDelta::send_stream($fh, @$atd, $self->{pool});\nto\n  my $got;\n  if ( $got ) {\n    $got = SVN::TxDelta::send_stream($fh, @$atd, $self->{pool});\n  } else {\n    $got = $exp\n  }\nI am no perl programmer so please change as you se fit.\n\nSecondly I ran out of open file descriptors which I \"fixed\" with ulimit -n 10000, maybe there is a leak\nin git-svn?\n\nThen it still failed, but this I could not fix. Don't have the error msg atm as I am home now, but\nit should be easy enough to reproduce, just clone current u-boot tree and try :)\n\nWhat I really would like to do is merge all u-boot commits up to a point into one commit\nand then commit that single git commit to a clean SVN repo. Then I want merge the\nremaining git commits(my own stuff).\nTried to import a tar tree into the SVN repo with svn import and then merge\nthe remain commits on top of that using git-svn but that didn't work, lots of conflicts.\n\n Jocke\n"},{"id":"28739","messageId":"86slhsgg3f.fsf@blue.stonehenge.com","threadId":"5916","inReplyTo":"00ad01c6eefc$84298280$1267a8c0@Jocke","subject":"Re: git-svn and u-boot broken.","fromName":"Randal L. Schwartz","fromEmail":"merlyn@stonehenge.com","sentAt":"2006-10-13T19:39:48Z","receivedAt":"2006-10-13T19:39:48Z","isPatch":false,"sender":{"key":"merlyn@stonehenge.com","avatar":"https://gravatar.com/avatar/dc528d210743ff0333e6213f9ee7b33b23f1b7bc1f3c5a8c2d819074ecd7ab19?d=mp&s=160"},"body":">>>>> \"Joakim\" == Joakim Tjernlund <joakim.tjernlund@transmode.se> writes:\n\nJoakim> First, I had to change this (from memory) in git-svn:\nJoakim>   my $got = SVN::TxDelta::send_stream($fh, @$atd, $self->{pool});\nJoakim> to\nJoakim>   my $got;\nJoakim>   if ( $got ) {\nJoakim>     $got = SVN::TxDelta::send_stream($fh, @$atd, $self->{pool});\nJoakim>   } else {\nJoakim>     $got = $exp\nJoakim>   }\nJoakim> I am no perl programmer so please change as you se fit.\n\nThat doesn't make any sense.  You'll never run the if-true branch there.\nThe value of $got immediately following \"my $got;\" is always undef.\n\n-- \nRandal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095\n<merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/>\nPerl/Unix/security consulting, Technical writing, Comedy, etc. etc.\nSee PerlTraining.Stonehenge.com for onsite and open-enrollment Perl training!\n"},{"id":"28740","messageId":"00ae01c6eeff$d6c454e0$1267a8c0@Jocke","threadId":"5916","inReplyTo":"86slhsgg3f.fsf@blue.stonehenge.com","subject":"RE: git-svn and u-boot broken.","fromName":"Joakim Tjernlund","fromEmail":"joakim.tjernlund@transmode.se","sentAt":"2006-10-13T19:43:21Z","receivedAt":"2006-10-13T19:43:21Z","isPatch":false,"sender":{"key":"joakim.tjernlund@transmode.se","avatar":null},"body":" > \n> >>>>> \"Joakim\" == Joakim Tjernlund \n> <joakim.tjernlund@transmode.se> writes:\n> \n> Joakim> First, I had to change this (from memory) in git-svn:\n> Joakim>   my $got = SVN::TxDelta::send_stream($fh, @$atd, \n> $self->{pool});\n> Joakim> to\n> Joakim>   my $got;\n> Joakim>   if ( $got ) {\n> Joakim>     $got = SVN::TxDelta::send_stream($fh, @$atd, \n> $self->{pool});\n> Joakim>   } else {\n> Joakim>     $got = $exp\n> Joakim>   }\n> Joakim> I am no perl programmer so please change as you se fit.\n> \n> That doesn't make any sense.  You'll never run the if-true \n> branch there.\n> The value of $got immediately following \"my $got;\" is always undef.\n\nTypo, should be 'if( $atd )', sorry\n"},{"id":"28752","messageId":"00e301c6ef2f$16993ac0$1267a8c0@Jocke","threadId":"5916","inReplyTo":"86slhsgg3f.fsf@blue.stonehenge.com","subject":"RE: git-svn and u-boot broken.","fromName":"Joakim Tjernlund","fromEmail":"joakim.tjernlund@transmode.se","sentAt":"2006-10-14T01:21:34Z","receivedAt":"2006-10-14T01:21:34Z","isPatch":false,"sender":{"key":"joakim.tjernlund@transmode.se","avatar":null},"body":" \n\n> -----Original Message-----\n> From: Randal L. Schwartz [mailto:merlyn@stonehenge.com] \n> Sent: den 13 oktober 2006 21:40\n> To: Joakim Tjernlund\n> Cc: git@vger.kernel.org\n> Subject: Re: git-svn and u-boot broken.\n> \n> >>>>> \"Joakim\" == Joakim Tjernlund \n> <joakim.tjernlund@transmode.se> writes:\n> \n> Joakim> First, I had to change this (from memory) in git-svn:\n> Joakim>   my $got = SVN::TxDelta::send_stream($fh, @$atd, \n> $self->{pool});\n> Joakim> to\n> Joakim>   my $got;\n> Joakim>   if ( $got ) {\n> Joakim>     $got = SVN::TxDelta::send_stream($fh, @$atd, \n> $self->{pool});\n> Joakim>   } else {\n> Joakim>     $got = $exp\n> Joakim>   }\n> Joakim> I am no perl programmer so please change as you se fit.\n> \n> That doesn't make any sense.  You'll never run the if-true \n> branch there.\n> The value of $got immediately following \"my $got;\" is always undef.\n\ngit-pull --squash seems to do what I want but know I get this when\ncommitting to svn: \ngit-svn commit remotes/git-svn..svn-branch\n...\n        A       cpu/mpc824x/drivers/i2c_export.h\n        A       cpu/mpc824x/drivers/i2o.h\n        A       cpu/mpc824x/drivers/i2o/Makefile\n        A       cpu/mpc824x/drivers/i2o/Makefile_pc\nCannot allocate memory at /usr/bin/git-svn line 1462\n3072 at /usr/bin/git-svn line 547\n        main::commit_lib('2ff9bcb7908d2752f643695ab3a28f9ababfafab') called at /usr/bin/git-svn line 457\n        main::commit('remotes/git-svn..svn-branch') called at /usr/bin/git-svn line 149\n\n Jocke\n"},{"id":"28753","messageId":"20061014062812.GC29149@localdomain","threadId":"5916","inReplyTo":"00e301c6ef2f$16993ac0$1267a8c0@Jocke","subject":"Re: git-svn and u-boot broken.","fromName":"Eric Wong","fromEmail":"normalperson@yhbt.net","sentAt":"2006-10-14T06:28:12Z","receivedAt":"2006-10-14T06:28:12Z","isPatch":false,"sender":{"key":"e@80x24.org","avatar":null},"body":"Joakim Tjernlund <joakim.tjernlund@transmode.se> wrote:\n>  \n> \n> > -----Original Message-----\n> > From: Randal L. Schwartz [mailto:merlyn@stonehenge.com] \n> > Sent: den 13 oktober 2006 21:40\n> > To: Joakim Tjernlund\n> > Cc: git@vger.kernel.org\n> > Subject: Re: git-svn and u-boot broken.\n> > \n> > >>>>> \"Joakim\" == Joakim Tjernlund \n> > <joakim.tjernlund@transmode.se> writes:\n> > \n> > Joakim> First, I had to change this (from memory) in git-svn:\n> > Joakim>   my $got = SVN::TxDelta::send_stream($fh, @$atd, \n> > $self->{pool});\n> > Joakim> to\n> > Joakim>   my $got;\n> > Joakim>   if ( $got ) {\n> > Joakim>     $got = SVN::TxDelta::send_stream($fh, @$atd, \n> > $self->{pool});\n> > Joakim>   } else {\n> > Joakim>     $got = $exp\n> > Joakim>   }\n> > Joakim> I am no perl programmer so please change as you se fit.\n\nWith your correction following merlyn's comments, it could work[1].  I'm\ncurious as to what change git-svn printed right before hitting an error\nhere, and would like to see the files (before and after) that were\nprinted by git-svn.\n\nI'm not sure what change would show up in git but cause apply_textdelta\nto return undef...\n\n[1] - I am tempted to apply a change based on yours, but this could just\nbe working around another bug somewhere else (either in git-svn or\nsubversion).\n\n> > That doesn't make any sense.  You'll never run the if-true \n> > branch there.\n> > The value of $got immediately following \"my $got;\" is always undef.\n> \n> git-pull --squash seems to do what I want but know I get this when\n> committing to svn: \n> git-svn commit remotes/git-svn..svn-branch\n> ...\n>         A       cpu/mpc824x/drivers/i2c_export.h\n>         A       cpu/mpc824x/drivers/i2o.h\n>         A       cpu/mpc824x/drivers/i2o/Makefile\n>         A       cpu/mpc824x/drivers/i2o/Makefile_pc\n> Cannot allocate memory at /usr/bin/git-svn line 1462\n> 3072 at /usr/bin/git-svn line 547\n>         main::commit_lib('2ff9bcb7908d2752f643695ab3a28f9ababfafab') called at /usr/bin/git-svn line 457\n>         main::commit('remotes/git-svn..svn-branch') called at /usr/bin/git-svn line 149\n\nHow large is the changeset you're committing?\n(git show --stat 2ff9bcb7908d2752f643695ab3a28f9ababfafab)\n\nI actually have a fair amount of fork() hacks in git-svn to workaround\nleaks in the SVN:: libraries (hard to avoid otherwise in Perl).\nI haven't noticed (or looked for) file-descriptor leakage very heard,\nthough.\n\nAlso, which version of git-svn are you running?  Also, which version of\nSubversion (client library, and server (if possible) are you running?\n\nThere seems to be a lot of new bugreports to git-svn lately and very\nlittle has changed in git-svn the past few months...\n\n-- \nEric Wong\n"},{"id":"28755","messageId":"00f301c6ef76$62172060$1267a8c0@Jocke","threadId":"5916","inReplyTo":"20061014062812.GC29149@localdomain","subject":"RE: git-svn and u-boot broken.","fromName":"Joakim Tjernlund","fromEmail":"joakim.tjernlund@transmode.se","sentAt":"2006-10-14T09:51:55Z","receivedAt":"2006-10-14T09:51:55Z","isPatch":false,"sender":{"key":"joakim.tjernlund@transmode.se","avatar":null},"body":" \n\n> -----Original Message-----\n> From: Eric Wong [mailto:normalperson@yhbt.net] \n> Sent: den 14 oktober 2006 08:28\n> To: Joakim Tjernlund\n> Cc: 'Randal L. Schwartz'; git@vger.kernel.org\n> Subject: Re: git-svn and u-boot broken.\n> \n> Joakim Tjernlund <joakim.tjernlund@transmode.se> wrote:\n> >  \n> > \n> > > -----Original Message-----\n> > > From: Randal L. Schwartz [mailto:merlyn@stonehenge.com] \n> > > Sent: den 13 oktober 2006 21:40\n> > > To: Joakim Tjernlund\n> > > Cc: git@vger.kernel.org\n> > > Subject: Re: git-svn and u-boot broken.\n> > > \n> > > >>>>> \"Joakim\" == Joakim Tjernlund \n> > > <joakim.tjernlund@transmode.se> writes:\n> > > \n> > > Joakim> First, I had to change this (from memory) in git-svn:\n> > > Joakim>   my $got = SVN::TxDelta::send_stream($fh, @$atd, \n> > > $self->{pool});\n> > > Joakim> to\n> > > Joakim>   my $got;\n> > > Joakim>   if ( $got ) {\n> > > Joakim>     $got = SVN::TxDelta::send_stream($fh, @$atd, \n> > > $self->{pool});\n> > > Joakim>   } else {\n> > > Joakim>     $got = $exp\n> > > Joakim>   }\n> > > Joakim> I am no perl programmer so please change as you se fit.\n> \n> With your correction following merlyn's comments, it could \n> work[1].  I'm\n> curious as to what change git-svn printed right before \n> hitting an error\n\nfrom memory:\nUsage: svn_txdelta_send_stream(x,y,z,m)\n\n> here, and would like to see the files (before and after) that were\n> printed by git-svn.\n\nSorry, don't have that hande ATM\n\n> \n> I'm not sure what change would show up in git but cause \n> apply_textdelta\n> to return undef...\n> \n> [1] - I am tempted to apply a change based on yours, but this \n> could just\n> be working around another bug somewhere else (either in git-svn or\n> subversion).\n> \n> > > That doesn't make any sense.  You'll never run the if-true \n> > > branch there.\n> > > The value of $got immediately following \"my $got;\" is \n> always undef.\n> > \n> > git-pull --squash seems to do what I want but know I get this when\n> > committing to svn: \n> > git-svn commit remotes/git-svn..svn-branch\n> > ...\n> >         A       cpu/mpc824x/drivers/i2c_export.h\n> >         A       cpu/mpc824x/drivers/i2o.h\n> >         A       cpu/mpc824x/drivers/i2o/Makefile\n> >         A       cpu/mpc824x/drivers/i2o/Makefile_pc\n> > Cannot allocate memory at /usr/bin/git-svn line 1462\n> > 3072 at /usr/bin/git-svn line 547\n> >         \n> main::commit_lib('2ff9bcb7908d2752f643695ab3a28f9ababfafab') \n> called at /usr/bin/git-svn line 457\n> >         main::commit('remotes/git-svn..svn-branch') called \n> at /usr/bin/git-svn line 149\n> \n> How large is the changeset you're committing?\n> (git show --stat 2ff9bcb7908d2752f643695ab3a28f9ababfafab)\n\nThat gives me a huge listing that ends in:\n 4306 files changed, 1194819 insertions(+), 0 deletions(-)\n\ngot some entries that look like this:\n board/MAI/bios_emulator/scitech/makedefs/qnxnto.mk |  157\n .../bios_emulator/scitech/makedefs/rules/bc16.mk   |   69\n .../bios_emulator/scitech/makedefs/rules/bc3.mk \n\nwhats the ... for?\n> \n> I actually have a fair amount of fork() hacks in git-svn to workaround\n> leaks in the SVN:: libraries (hard to avoid otherwise in Perl).\n> I haven't noticed (or looked for) file-descriptor leakage very heard,\n> though.\n> \n> Also, which version of git-svn are you running?  Also, which \n> version of\n> Subversion (client library, and server (if possible) are you running?\n\ngit 1.4.2.3\nsubversion 1.3.2-r1\n\nI will try upgrading to newer subverison.\n\ndistribution: Gentoo\n"},{"id":"28775","messageId":"20061014224636.GA12565@soma","threadId":"5916","inReplyTo":"00f301c6ef76$62172060$1267a8c0@Jocke","subject":"Re: git-svn and u-boot broken.","fromName":"Eric Wong","fromEmail":"normalperson@yhbt.net","sentAt":"2006-10-14T22:46:36Z","receivedAt":"2006-10-14T22:46:36Z","isPatch":false,"sender":{"key":"e@80x24.org","avatar":null},"body":"Joakim Tjernlund <joakim.tjernlund@transmode.se> wrote:\n> \n> > -----Original Message-----\n> > From: Eric Wong [mailto:normalperson@yhbt.net] \n> > Sent: den 14 oktober 2006 08:28\n> > To: Joakim Tjernlund\n> > Cc: 'Randal L. Schwartz'; git@vger.kernel.org\n> > Subject: Re: git-svn and u-boot broken.\n> > \n> > Joakim Tjernlund <joakim.tjernlund@transmode.se> wrote:\n> > >  \n> > > \n> > > > -----Original Message-----\n> > > > From: Randal L. Schwartz [mailto:merlyn@stonehenge.com] \n> > > > Sent: den 13 oktober 2006 21:40\n> > > > To: Joakim Tjernlund\n> > > > Cc: git@vger.kernel.org\n> > > > Subject: Re: git-svn and u-boot broken.\n> > > > \n> > > > >>>>> \"Joakim\" == Joakim Tjernlund \n> > > > <joakim.tjernlund@transmode.se> writes:\n> > > > \n> > > > Joakim> First, I had to change this (from memory) in git-svn:\n> > > > Joakim>   my $got = SVN::TxDelta::send_stream($fh, @$atd, \n> > > > $self->{pool});\n> > > > Joakim> to\n> > > > Joakim>   my $got;\n> > > > Joakim>   if ( $got ) {\n> > > > Joakim>     $got = SVN::TxDelta::send_stream($fh, @$atd, \n> > > > $self->{pool});\n> > > > Joakim>   } else {\n> > > > Joakim>     $got = $exp\n> > > > Joakim>   }\n> > > > Joakim> I am no perl programmer so please change as you se fit.\n> > \n> > With your correction following merlyn's comments, it could \n> > work[1].  I'm\n> > curious as to what change git-svn printed right before \n> > hitting an error\n> \n> from memory:\n> Usage: svn_txdelta_send_stream(x,y,z,m)\n \n> > here, and would like to see the files (before and after) that were\n> > printed by git-svn.\n> \n> Sorry, don't have that hande ATM\n\nCould you publish your git repository for u-boot and also the\nexact commands (if you have them) you used to attempt the import\ninto SVN?  Thanks.\n\n> > I'm not sure what change would show up in git but cause \n> > apply_textdelta\n> > to return undef...\n> > \n> > [1] - I am tempted to apply a change based on yours, but this \n> > could just\n> > be working around another bug somewhere else (either in git-svn or\n> > subversion).\n> > \n> > > > That doesn't make any sense.  You'll never run the if-true \n> > > > branch there.\n> > > > The value of $got immediately following \"my $got;\" is \n> > always undef.\n> > > \n> > > git-pull --squash seems to do what I want but know I get this when\n> > > committing to svn: \n> > > git-svn commit remotes/git-svn..svn-branch\n> > > ...\n> > >         A       cpu/mpc824x/drivers/i2c_export.h\n> > >         A       cpu/mpc824x/drivers/i2o.h\n> > >         A       cpu/mpc824x/drivers/i2o/Makefile\n> > >         A       cpu/mpc824x/drivers/i2o/Makefile_pc\n> > > Cannot allocate memory at /usr/bin/git-svn line 1462\n> > > 3072 at /usr/bin/git-svn line 547\n> > >         \n> > main::commit_lib('2ff9bcb7908d2752f643695ab3a28f9ababfafab') \n> > called at /usr/bin/git-svn line 457\n> > >         main::commit('remotes/git-svn..svn-branch') called \n> > at /usr/bin/git-svn line 149\n> > \n> > How large is the changeset you're committing?\n> > (git show --stat 2ff9bcb7908d2752f643695ab3a28f9ababfafab)\n> \n> That gives me a huge listing that ends in:\n>  4306 files changed, 1194819 insertions(+), 0 deletions(-)\n\nYikes, that's a huge commit.  git-svn memory usage was bounded\nfor the size of each changeset, so yes, this could get nasty.\nPatch coming in a reply to this message.\n\n> got some entries that look like this:\n>  board/MAI/bios_emulator/scitech/makedefs/qnxnto.mk |  157\n>  .../bios_emulator/scitech/makedefs/rules/bc16.mk   |   69\n>  .../bios_emulator/scitech/makedefs/rules/bc3.mk \n> \n> whats the ... for?\n\nLong filename that couldn't fit on the (80 char width?) diffstat prints\nout.\n\n-- \nEric Wong\n"},{"id":"28776","messageId":"20061014224834.GB12565@soma","threadId":"5916","inReplyTo":"20061014224636.GA12565@soma","subject":"[PATCH] git-svn: reduce memory usage for large commits","fromName":"Eric Wong","fromEmail":"normalperson@yhbt.net","sentAt":"2006-10-14T22:48:35Z","receivedAt":"2006-10-14T22:48:35Z","isPatch":true,"sender":{"key":"e@80x24.org","avatar":null},"body":"apply_textdelta and send_stream can use a separate pool from the\nrest of the editor interface, so we'll use a separate SVN::Pool\nfor them and clear the pool after each file is sent to SVN.\n\nThis drastically reduces memory usage per-changeset committed,\nand makes large commits (and initial imports) of several\nthousand files possible.\n\nSigned-off-by: Eric Wong <normalperson@yhbt.net>\n---\n git-svn.perl |    6 ++++--\n 1 files changed, 4 insertions(+), 2 deletions(-)\n\ndiff --git a/git-svn.perl b/git-svn.perl\nindex 0f968c8..54d2356 100755\n--- a/git-svn.perl\n+++ b/git-svn.perl\n@@ -3354,9 +3354,11 @@ sub chg_file {\n \tseek $fh, 0, 0 or croak $!;\n \n \tmy $exp = $md5->hexdigest;\n-\tmy $atd = $self->apply_textdelta($fbat, undef, $self->{pool});\n-\tmy $got = SVN::TxDelta::send_stream($fh, @$atd, $self->{pool});\n+\tmy $pool = SVN::Pool->new;\n+\tmy $atd = $self->apply_textdelta($fbat, undef, $pool);\n+\tmy $got = SVN::TxDelta::send_stream($fh, @$atd, $pool);\n \tdie \"Checksum mismatch\\nexpected: $exp\\ngot: $got\\n\" if ($got ne $exp);\n+\t$pool->clear;\n \n \tclose $fh or croak $!;\n }\n-- \n1.4.3.rc2.ge931\n"},{"id":"28780","messageId":"00f901c6efec$07fdc630$1267a8c0@Jocke","threadId":"5916","inReplyTo":"20061014224636.GA12565@soma","subject":"RE: git-svn and u-boot broken.","fromName":"Joakim Tjernlund","fromEmail":"joakim.tjernlund@transmode.se","sentAt":"2006-10-14T23:54:04Z","receivedAt":"2006-10-14T23:54:04Z","isPatch":false,"sender":{"key":"joakim.tjernlund@transmode.se","avatar":null},"body":"> Joakim Tjernlund <joakim.tjernlund@transmode.se> wrote:\n> > \n> > > -----Original Message-----\n> > > From: Eric Wong [mailto:normalperson@yhbt.net] \n> > > Sent: den 14 oktober 2006 08:28\n> > > To: Joakim Tjernlund\n> > > Cc: 'Randal L. Schwartz'; git@vger.kernel.org\n> > > Subject: Re: git-svn and u-boot broken.\n> > > \n> > > Joakim Tjernlund <joakim.tjernlund@transmode.se> wrote:\n> > > >  \n> > > > \n> > > > > -----Original Message-----\n> > > > > From: Randal L. Schwartz [mailto:merlyn@stonehenge.com] \n> > > > > Sent: den 13 oktober 2006 21:40\n> > > > > To: Joakim Tjernlund\n> > > > > Cc: git@vger.kernel.org\n> > > > > Subject: Re: git-svn and u-boot broken.\n> > > > > \n> > > > > >>>>> \"Joakim\" == Joakim Tjernlund \n> > > > > <joakim.tjernlund@transmode.se> writes:\n> > > > > \n> > > > > Joakim> First, I had to change this (from memory) in git-svn:\n> > > > > Joakim>   my $got = SVN::TxDelta::send_stream($fh, @$atd, \n> > > > > $self->{pool});\n> > > > > Joakim> to\n> > > > > Joakim>   my $got;\n> > > > > Joakim>   if ( $got ) {\n> > > > > Joakim>     $got = SVN::TxDelta::send_stream($fh, @$atd, \n> > > > > $self->{pool});\n> > > > > Joakim>   } else {\n> > > > > Joakim>     $got = $exp\n> > > > > Joakim>   }\n> > > > > Joakim> I am no perl programmer so please change as \n> you se fit.\n> > > \n> > > With your correction following merlyn's comments, it could \n> > > work[1].  I'm\n> > > curious as to what change git-svn printed right before \n> > > hitting an error\n> > \n> > from memory:\n> > Usage: svn_txdelta_send_stream(x,y,z,m)\n>  \n> > > here, and would like to see the files (before and after) that were\n> > > printed by git-svn.\n> > \n> > Sorry, don't have that hande ATM\n> \n> Could you publish your git repository for u-boot and also the\n> exact commands (if you have them) you used to attempt the import\n> into SVN?  Thanks.\n\nThe git repo is a bit complicated as I don't have have anywhere\nto put it. However I don't think you need it, just clone DENX u-boot repo\nat git://www.denx.de/git/u-boot.git, it bails out before it gets to my\nchanges.\n\nHere is the script I use to test with\n\nREPO=\"file:///tmp/SVNuboot\"\nREPO_PATH=\"/tmp/SVNuboot\"\nGIT_REPO=\"/tmp/mygituboot\"\nORG_REPO=\"/usr/local/src/u-boot\"\nrm -rf \"$REPO_PATH\"\nrm -rf \"$GIT_REPO\"\nsvnadmin create \"$REPO_PATH\"\nsvn mkdir -m \"initial repo layout\" \"$REPO\"/trunk \"$REPO\"/branches \"$REPO\"/tags\nmkdir -p \"$GIT_REPO\"\ncd \"$GIT_REPO\"\ngit-svn init \"$REPO\"/trunk\necho  [user] >> .git/config\necho  name=\"jocke\" >> .git/config\necho  email=\"Joakim.Tjernlund@transmode.se\" >> .git/config\ngit-svn fetch\ngit checkout -b svn-branch remotes/git-svn\ngit-fetch \"$ORG_REPO\" tmcu2:tmcu\ngit-branch initial-uboot f5e0d03970409feb3c77ab0107d5dece6b7d45c9\ngit pull . initial-uboot\n# --squash makes one large commit.\n#git pull --squash . initial-uboot\n#cg-commit -m \"merge up to f5e0d03970409feb3c77ab0107d5dece6b7d45c9\"\n\n\n# without --squash one gets a SVN repo with lots of small commits(2)\ngit pull . initial-uboot\ngit-svn commit -q remotes/git-svn..svn-branch\n\n\n(2)\n This fails currently with \n git-svn commit -q remotes/git-svn..svn-branch\ndiff-tree 9030f4be0b324cb312cfecd86d4a7da04ffa99ee 8e9655f863246db60c51140153186acc2afdc855\nInappropriate ioctl for device at /usr/bin/git-svn line 1462\n6400 at /usr/bin/git-svn line 1462\n6400 at /usr/bin/git-svn line 547\n        main::commit_lib('8e9655f863246db60c51140153186acc2afdc855', 'ef04a0aa2676738847bd69914cadac0b96d6e731',\n'4d03a21f2329bb13a9661a23742ac0b77a7a76d5', 'f190c11b1f22ff766e046588e5a7bb55f28ae305', '182e10691f378987b53c64ee0347d542e4924ef6',\n'527b5a511c804074eebfc08c9ae7860b6717da85', 'ea339205a94706d8b9170bbd89e8c1373df9a92f', '3ada834e30a0742991209140049035c626ccea85',\n'feaedfcf84c92599c0b805f66cc8a628d82411f0', ...) called at /usr/bin/git-svn line 457\n        main::commit('remotes/git-svn..svn-branch') called at /usr/bin/git-svn line 149\n> \n> > > I'm not sure what change would show up in git but cause \n> > > apply_textdelta\n> > > to return undef...\n> > > \n> > > [1] - I am tempted to apply a change based on yours, but this \n> > > could just\n> > > be working around another bug somewhere else (either in git-svn or\n> > > subversion).\n> > > \n> > > > > That doesn't make any sense.  You'll never run the if-true \n> > > > > branch there.\n> > > > > The value of $got immediately following \"my $got;\" is \n> > > always undef.\n> > > > \n> > > > git-pull --squash seems to do what I want but know I \n> get this when\n> > > > committing to svn: \n> > > > git-svn commit remotes/git-svn..svn-branch\n> > > > ...\n> > > >         A       cpu/mpc824x/drivers/i2c_export.h\n> > > >         A       cpu/mpc824x/drivers/i2o.h\n> > > >         A       cpu/mpc824x/drivers/i2o/Makefile\n> > > >         A       cpu/mpc824x/drivers/i2o/Makefile_pc\n> > > > Cannot allocate memory at /usr/bin/git-svn line 1462\n> > > > 3072 at /usr/bin/git-svn line 547\n> > > >         \n> > > main::commit_lib('2ff9bcb7908d2752f643695ab3a28f9ababfafab') \n> > > called at /usr/bin/git-svn line 457\n> > > >         main::commit('remotes/git-svn..svn-branch') called \n> > > at /usr/bin/git-svn line 149\n> > > \n> > > How large is the changeset you're committing?\n> > > (git show --stat 2ff9bcb7908d2752f643695ab3a28f9ababfafab)\n> > \n> > That gives me a huge listing that ends in:\n> >  4306 files changed, 1194819 insertions(+), 0 deletions(-)\n> \n> Yikes, that's a huge commit.  git-svn memory usage was bounded\n> for the size of each changeset, so yes, this could get nasty.\n> Patch coming in a reply to this message.\n\nThanks, will try that patch next.\n\n  Jocke\n"}]}