{"thread":{"id":"21988","subject":"git-svn mergeinfo support performance problem","startedAt":"2009-12-19T01:08:42Z","lastAt":"2009-12-20T00:39:24Z","messageCount":3,"participants":["Andrew Myrick","Johan 't Hart"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"130111","messageId":"6b2f9b1d0912181708g32645b48j3886b74101e77d80@mail.gmail.com","threadId":"21988","inReplyTo":null,"subject":"git-svn mergeinfo support performance problem","fromName":"Andrew Myrick","fromEmail":"amyrick@gmail.com","sentAt":"2009-12-19T01:08:42Z","receivedAt":"2009-12-19T01:08:42Z","isPatch":false,"sender":{"key":"amyrick@gmail.com","avatar":null},"body":"I've been testing git-svn v1.6.6-rc3's mergeinfo support on a large\nsvn repository (60,000+ revisions, 20+ GiB) that uses a very\nbranch-heavy integration model in which every change gets its own\nbranch before being committed to trunk.  As a result of the model,\nthere are currently over 1000 lines in the svn:mergeinfo property on\ntrunk.  Unfortunately, with the current implementation, git svn fetch\ntakes more than a minute per revision pouring through all of those\nmerge tickets; obviously, this is too slow to be usable for my\nrepository.\n\nAre there any ideas on how git svn fetch can be sped up when facing\nhundreds of mergeinfo properties?  Alternatively, would it be possible\nto add an argument that would ignore the merge info?  Or, is there any\nmaintenance I could perform on the svn repository that would help\nreduce the amount of work that git-svn must do?  In the meantime, I'll\nhave to stick with git 1.6.5.*.\n\nRegards,\nAndrew\n\nP.S.  This is my first post to the list.  My apologies if this issue\nhas already been discussed and I did not see it in the archives, or if\nI have missed a more formal mechanism for filing bug reports.\n"},{"id":"130170","messageId":"4B2D6FB0.6080103@gmail.com","threadId":"21988","inReplyTo":"6b2f9b1d0912181708g32645b48j3886b74101e77d80@mail.gmail.com","subject":"Re: git-svn mergeinfo support performance problem","fromName":"Johan 't Hart","fromEmail":"johanthart@gmail.com","sentAt":"2009-12-20T00:28:32Z","receivedAt":"2009-12-20T00:28:32Z","isPatch":false,"sender":{"key":"johanthart@gmail.com","avatar":"https://gravatar.com/avatar/f7bd2928a1a23e971f4ab68a6c7b35d7ff0efb1c225c570430badf90e404e50b?d=mp&s=160"},"body":"Andrew Myrick schreef:\n> I've been testing git-svn v1.6.6-rc3's mergeinfo support on a large\n> svn repository (60,000+ revisions, 20+ GiB) that uses a very\n> branch-heavy integration model in which every change gets its own\n> branch before being committed to trunk.  As a result of the model,\n> there are currently over 1000 lines in the svn:mergeinfo property on\n> trunk.\n\nJust wondering: Isnt this workflow stalling svn itself alot too?\n\nAnd also:\nDo you delete the branches after you reintegrated them? If so, I think \nits safe for you to cleanup the svn mergeinfo once in a while. That \nshould not affect 'svn log -g' because the mergeinfo is still there in \nolder revisions. I think svn benefits from this too...\n"},{"id":"130172","messageId":"6b2f9b1d0912191639m3c4feeaaw72a52adb674ad744@mail.gmail.com","threadId":"21988","inReplyTo":"4B2D6FB0.6080103@gmail.com","subject":"Re: git-svn mergeinfo support performance problem","fromName":"Andrew Myrick","fromEmail":"amyrick@gmail.com","sentAt":"2009-12-20T00:39:24Z","receivedAt":"2009-12-20T00:39:24Z","isPatch":false,"sender":{"key":"amyrick@gmail.com","avatar":null},"body":"On Sat, Dec 19, 2009 at 4:28 PM, Johan 't Hart <johanthart@gmail.com> wrote:\n> Andrew Myrick schreef:\n>>\n>> I've been testing git-svn v1.6.6-rc3's mergeinfo support on a large\n>> svn repository (60,000+ revisions, 20+ GiB) that uses a very\n>> branch-heavy integration model in which every change gets its own\n>> branch before being committed to trunk.  As a result of the model,\n>> there are currently over 1000 lines in the svn:mergeinfo property on\n>> trunk.\n>\n> Just wondering: Isnt this workflow stalling svn itself alot too?\n\nNope, svn seems to handle it fine.\n\n> And also:\n> Do you delete the branches after you reintegrated them? If so, I think its\n> safe for you to cleanup the svn mergeinfo once in a while. That should not\n> affect 'svn log -g' because the mergeinfo is still there in older revisions.\n> I think svn benefits from this too...\n\nWe do not delete branches after they've been reintegrated.  Bug fix\nand feature branches can get reintegrated into multiple release\nbranches, so it's not obvious when a branch can be deleted.  There's\nalready enough process overhead that it's simpler just to leave all of\nthe branches around.  Since this doesn't seem to affect svn's\nperformance, we haven't really worried about it.\n\n-Andrew\n"}]}