{"thread":{"id":"24392","subject":"[BUG] git-svn returning \"Incomplete data: Delta source ended unexpectedly\"","startedAt":"2010-07-14T13:05:29Z","lastAt":"2010-08-25T18:31:07Z","messageCount":4,"participants":["Ævar Arnfjörð Bjarmason","Eric Wong","Nicolas Noble"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"145535","messageId":"AANLkTiljzOuaEToKscBxlc4qGilyNRiUtjoBxW1lJZlp@mail.gmail.com","threadId":"24392","inReplyTo":null,"subject":"[BUG] git-svn returning \"Incomplete data: Delta source ended unexpectedly\"","fromName":"Ævar Arnfjörð Bjarmason","fromEmail":"avarab@gmail.com","sentAt":"2010-07-14T13:05:29Z","receivedAt":"2010-07-14T13:05:29Z","isPatch":false,"sender":{"key":"avarab@gmail.com","avatar":"https://avatars.githubusercontent.com/u/45301?v=4"},"body":"I run a SVN -> Git mirror which fetches & rebases with git-svn and\npushes the result to GitHub:\n\n    http://github.com/avar/openstreetmap-mirror/blob/master/josm-mirror.sh\n\nSomething about what that script is doing corrupted the git-svn\nrepository, likely due to a git-svn bug. Now when I do git svn fetch\non 1.7.1:\n\n    $ git svn fetch\n    Incomplete data: Delta source ended unexpectedly at\n/usr/lib/git-core/git-svn line 5061\n\nI re-cloned the repository and started running my mirror again from\nthat. But it would be nice if we could track this bug down.\n\nHere's a copy of the repository:\n\n    http://v.nix.is/~avar/josm.old.tar.gz\n\nUnpacking it and running git svn fetch will yield the same error on\nanother box I have with 1.7.1.\n"},{"id":"145583","messageId":"20100714210940.GA7803@dcvr.yhbt.net","threadId":"24392","inReplyTo":"AANLkTiljzOuaEToKscBxlc4qGilyNRiUtjoBxW1lJZlp@mail.gmail.com","subject":"Re: [BUG] git-svn returning \"Incomplete data: Delta source ended unexpectedly\"","fromName":"Eric Wong","fromEmail":"normalperson@yhbt.net","sentAt":"2010-07-14T21:09:40Z","receivedAt":"2010-07-14T21:09:40Z","isPatch":false,"sender":{"key":"e@80x24.org","avatar":null},"body":"Ævar Arnfjörð Bjarmason <avarab@gmail.com> wrote:\n> I run a SVN -> Git mirror which fetches & rebases with git-svn and\n> pushes the result to GitHub:\n> \n>     http://github.com/avar/openstreetmap-mirror/blob/master/josm-mirror.sh\n> \n> Something about what that script is doing corrupted the git-svn\n> repository, likely due to a git-svn bug. Now when I do git svn fetch\n> on 1.7.1:\n> \n>     $ git svn fetch\n>     Incomplete data: Delta source ended unexpectedly at\n> /usr/lib/git-core/git-svn line 5061\n\nThe geticons.pl file on the git side doesn't match what SVN expects\nwhen doing a delta.\n\n> I re-cloned the repository and started running my mirror again from\n> that. But it would be nice if we could track this bug down.\n> \n> Here's a copy of the repository:\n> \n>     http://v.nix.is/~avar/josm.old.tar.gz\n> \n> Unpacking it and running git svn fetch will yield the same error on\n> another box I have with 1.7.1.\n\nSomething went wrong with your mirror script (the way you're doing\nexternals is probably screwing it up, badly).\n\nCompare the \"git svn log\" output of your in-progress repository\nwith the \"svn log http://josm.openstreetmap.de/svn/trunk\"\n\nThe revision numbers/commit messages don't sync up at all.\n\n-- \nEric Wong\n"},{"id":"145587","messageId":"AANLkTil-QOQHNYIRvqDzfwicjo9SLXJPwgby-Z0b9rlT@mail.gmail.com","threadId":"24392","inReplyTo":"20100714210940.GA7803@dcvr.yhbt.net","subject":"Re: [BUG] git-svn returning \"Incomplete data: Delta source ended unexpectedly\"","fromName":"Ævar Arnfjörð Bjarmason","fromEmail":"avarab@gmail.com","sentAt":"2010-07-14T22:16:51Z","receivedAt":"2010-07-14T22:16:51Z","isPatch":false,"sender":{"key":"avarab@gmail.com","avatar":"https://avatars.githubusercontent.com/u/45301?v=4"},"body":"On Wed, Jul 14, 2010 at 21:09, Eric Wong <normalperson@yhbt.net> wrote:\n\n> Something went wrong with your mirror script (the way you're doing\n> externals is probably screwing it up, badly).\n>\n> Compare the \"git svn log\" output of your in-progress repository\n> with the \"svn log http://josm.openstreetmap.de/svn/trunk\"\n>\n> The revision numbers/commit messages don't sync up at all.\n\nSorry for the false alarm, I didn't check that. Thanks for looking at\nit, and sorry for wasting your time.\n"},{"id":"148982","messageId":"AANLkTi=QUiwUOAZtq_-c=D3S+AuFdZb9PEohVmYW+suW@mail.gmail.com","threadId":"24392","inReplyTo":"AANLkTil-QOQHNYIRvqDzfwicjo9SLXJPwgby-Z0b9rlT@mail.gmail.com","subject":"Re: [BUG] git-svn returning \"Incomplete data: Delta source ended unexpectedly\"","fromName":"Nicolas Noble","fromEmail":"pixel.nobis@gmail.com","sentAt":"2010-08-25T18:31:07Z","receivedAt":"2010-08-25T18:31:07Z","isPatch":false,"sender":{"key":"pixel.nobis@gmail.com","avatar":null},"body":"Hello,\n\n  I'm bumping this thread, as our git-svn mirror at work broke down\nwith the same exact problem. Now, rebuilding it wasn't exactly an\noption, and I rather went the \"restore backup\" way, but my management\nfeels a bit nervous about git now since this issue hit us, and I\nwasn't able to fix it in any way.\n\n  Basically, at our company, we're having subversion to track our\nsoftware codebase, but I'm trying hard to make people move to git. My\nbiggest (quite successful) attempt so far is to have a git-svn\n\"gateway\" machine that people can clone in order to work on their own.\nThey don't have the right to push back, as it would obviously break\nwith the way git-svn works, but I take care of rebasing their commits\nif they need to, in order to push them back onto the subversion. So we\nhave two sets of developers: one working with git, and one still with\nsvn. I'm having a crontab job that's using git-svn fetch every 2\nminutes in order to get the gateway in sync at all times; the git-svn\nrebase part doesn't really apply, as the point is to create local\nbranches from the subversion snapshots.\n\n  Now, yesterday, that exact issue described below hit us. But unlike\nwhat's described below, both the git and svn history match perfectly.\n\n  Unfortunately, I can't upload the git repository anywhere, but as\nfar as I could see, there's indeed some blobs that don't match. But\nfor the life of me, I have absolutely no idea how to fix this without\ngoing the backup way. I've tried to roll-back the remote branch to the\ncommit before, by hand-editing .git/refs/remotes/trunk,\n.git/packed-refs, .git/info/refs and .git/svn/.metadata, running git\ngc --prune in order to make sure I get rid of the corrupted blobs, and\nre-running git svn fetch, but that didn't help. Probably because the\ncorruption happened even before, but then, I have no idea how to find\nand fix this. I tried going back several days before, but no luck. And\nthe worst part is that I tried to skip over that commit, just to see,\nusing git-svn fetch --revision=xxxx and pointing at some revisions\nafter that, but ALL of the revisions I tried did the same thing, which\nwould tend to indicate that... everything is corrupted ? There's\nsomething fundamentally wrong here, where I'm actually trusting\ngit-svn fetch to do the job properly and work at all time, yet it's\nnot.\n\n  Again, I can still restore backups, but my management would feel\nmuch better if this issue was fixable instead. And the bad part is\nthat by backup, I mean I was running another git-svn mirror in\nparallel on another machine, but for some reason, they diverged in\nhistory. There's one commit message long time ago that didn't get\nfetch from the subversion repository the same way, and from it, the\ntwo history diverged. The delta of that commit itself is fine, but the\ncommit message got truncated. Which is of course going to have me\nbreaking any branches people created, and I'll have a very fun time\nrebasing everything now :-)\n\n  I don't know exactly what kind of information I could provide in\norder to troubleshoot, without disclosing our sourcecode, but if you'd\nlike to investigate this, I'd be happy to help and provide as much as\nI can, as long as you describe what you'd need me to do.\n\n  Thanks!\n\n  -- Nicolas Noble\n\nOn Wed, Jul 14, 2010 at 3:16 PM, Ævar Arnfjörð Bjarmason\n<avarab@gmail.com> wrote:\n> On Wed, Jul 14, 2010 at 21:09, Eric Wong <normalperson@yhbt.net> wrote:\n>\n>> Something went wrong with your mirror script (the way you're doing\n>> externals is probably screwing it up, badly).\n>>\n>> Compare the \"git svn log\" output of your in-progress repository\n>> with the \"svn log http://josm.openstreetmap.de/svn/trunk\"\n>>\n>> The revision numbers/commit messages don't sync up at all.\n>\n> Sorry for the false alarm, I didn't check that. Thanks for looking at\n> it, and sorry for wasting your time.\n> --\n> To unsubscribe from this list: send the line \"unsubscribe git\" in\n> the body of a message to majordomo@vger.kernel.org\n> More majordomo info at  http://vger.kernel.org/majordomo-info.html\n>\n"}]}