Gentoo Archives: gentoo-dev

From: Rich Freeman <rich0@g.o>
To: "Michał Górny" <mgorny@g.o>
Cc: gentoo-dev <gentoo-dev@l.g.o>, infra-bugs@g.o, qa@g.o, Gentoo Council <council@g.o>, gentoo-scm@l.g.o
Subject: Re: [gentoo-dev] Re: My masterplan for git migration (+ looking for infra to test it)
Date: Sun, 14 Sep 2014 15:51:57
Message-Id: CAGfcS_nkF1qJWeMFX=z-=Q2sXVyigL8b8v2bFyc2Roggguvh7g@mail.gmail.com
In Reply to: Re: [gentoo-dev] Re: My masterplan for git migration (+ looking for infra to test it) by "Michał Górny"
1 On Sun, Sep 14, 2014 at 10:56 AM, Michał Górny <mgorny@g.o> wrote:
2 > Dnia 2014-09-14, o godz. 10:33:03
3 >
4 > With git, we can finally do stuff like preparing everything and pushing
5 > in one go. Rebasing or merging will be much easier then, since
6 > the effective push rate will be smaller than current commit rate.
7
8 While I agree that the ability to consolidate commits will definitely
9 help with the commit rate, I'm not sure it will make a big difference.
10 It will turn a kde stablereq from 300 commits into 1, and do the same
11 for things like package moves and such. However, I suspect that the
12 vast majority of our commits are things like bumps on individual
13 packages that will always be individual commits. Maybe insofar as one
14 person does a bunch of them they can be pushed at the same time,
15 but...
16
17 Looking at https://github.com/rich0/gentoo-gitmig-2014-02-21 it seems
18 like we get about 150 commits/day on busy days. I suspect that isn't
19 evenly distributed, but you may be right that it will just work out.
20
21 >>
22 >> Actually doing the conversion is basically a solved problem. If this
23 >> were actually the blocker I'd be all for just sticking the history in
24 >> a different repo and starting from scratch with a new one.
25 >
26 > Was the resulting tree actually verified? How long does the conversion
27 > take? Can it be incremental, i.e. convert most of it, lock CVS, convert
28 > the remaining new commits?
29
30 The tree has been verified. The verification approaches so far are
31 neither 100% thorough nor realtime in operation. However, I think we
32 have a working migration process and I don't really see the need to do
33 a double-check at the time of the actual migration.
34
35 ferringb was able to do conversions in about 20min with a decent SSD
36 and a 32-core system. His migration scripts can migrate categories in
37 parallel. I haven't personally tried to run them myself, but I
38 believe robbat2 and patrick have experimented with them. If there is
39 revived interested I can see if I can set them up to run in a chroot
40 with some documentation so that anybody can run it and satisfy
41 themselves that it works, assuming somebody else doesn't have such a
42 chroot ready to go. If finding a host to run it on is a problem I'm
43 sure we could get the Trustees to spring for some time on EC2 or
44 whatever. There is no reason that this couldn't be as simple as
45 extracting a tarball, bind-mounting a cvs repo inside, and firing off
46 the scripts.
47
48 I do not believe it can be made to be incremental. But, the runtime
49 should be in keeping with your hour-or-two of downtime suggestion. I
50 suspect a fair bit of the downtime will taken just to transfer the
51 copy of the cvroot to the migration server, and transfer the resulting
52 git tree to wherever it needs to go and get all the back-end scripts
53 running/etc.
54
55 >
56 > Are you willing to champion that, then? :)
57 >
58
59 Well, I'm in for what it matters. I don't have root on any infra
60 boxes if that is what you're looking for. :)
61
62 --
63 Rich

Replies