Gentoo Archives: gentoo-user

From: Rich Freeman <rich0@g.o>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Missing digest for *** Tree looks messed up.
Date: Mon, 10 Aug 2015 01:05:21
Message-Id: CAGfcS_m+aBZ=PBfrf8zgmNzPdZ3Q60t8EshGcTGqASa9Q2otEw@mail.gmail.com
In Reply to: [gentoo-user] Missing digest for *** Tree looks messed up. by Dale
1 On Sun, Aug 9, 2015 at 8:15 PM, Dale <rdalek1967@×××××.com> wrote:
2 >
3 > I'm sure I'm not alone on monitoring -dev to see upcoming changes. I
4 > noticed they switched to git or something and it seems to have caused a
5 > bit of trouble.
6
7 There are a few issues they're working through, but nothing really
8 serious. There were bound to be a few bumps with the change, and most
9 of the -dev posts are around trying to re-establish conventions,
10 especially around things like commit comments. The desire is to make
11 the history easy to read, parse, etc, but it isn't really stopping
12 work from getting done and nobody is going to care if their history
13 looks a little different.
14
15 > At least I think it may have. I did my usual 'eix-sync
16 > && emerge -uvaDN world'. The sync took MUCH longer than usual. I'm
17 > talking a WHOLE LOT longer than usual. My first thought, one time thing
18 > because of the changes, maybe. Then I got a screen full of this sort of
19 > stuff.
20
21 Interesting. As I understand it rsync generation should be turned
22 off, but maybe some changes did make their way out. I don't believe
23 commits are getting to the rsync servers right now, so you might see a
24 delay in package updates for a day or so.
25
26 Whether you've already seen it or will see it in the future, I would
27 expect the first rsync to be much longer. The git migration probably
28 touched virtually every file in the tree in some way, which means that
29 rsync is going to be modifying just about everything.
30
31 I think it actually remains to be seen whether rsync is still the
32 fastest way to sync the new tree. If you sync from anonymous git
33 (which is supported by repos.conf) that would probably be pretty
34 efficient, since by design git keeps track of what did and didn't
35 change and it doesn't need to read every inode in /usr/portage to
36 figure it out, unlike rsync. I made a validator that finds what
37 changed between git revisions and you can do it VERY efficiently by
38 comparing the tree one directory level at a time (you can tell whether
39 anything in app-backup changed in a commit without having to read any
40 of the files, and if something changed you can repeat that one level
41 at a time until you read the actual files that changed - it is a O(log
42 base <dir-size>) tree search times the number of commits (O(n))).
43 Now, for enough time passing (many months most likely) rsync might be
44 more efficient since at some point you end up reading almost all the
45 files anyway and rsync doesn't care if a file changed three times or
46 if it changed once.
47
48 TL;DR - don't worry about it too much, but don't be surprised if
49 emerge --sync doesn't give you anything new for a day or two. You can
50 of course clone any of the URLs under
51 https://gitweb.gentoo.org/repo/gentoo.git/ to get the latest changes
52 now straight from git. We're up to 210 commits in git already today.
53
54 I'm sure the transition could have been less bumpy, but I'm glad we're
55 finally seeing it happen. This has been in the works for a very long
56 time and sometimes you just have to pull the trigger. If rsync is
57 down for a day it isn't the end of the world.
58
59 Oh, and a historical repo is posted at:
60 https://github.com/gentoo/gentoo-gitmig-20150809-draft
61 (that isn't official - I'm sure the official one will be
62 gentoo-hosted, but robbat has his hands plenty full already)
63
64 --
65 Rich

Replies

Subject Author
Re: [gentoo-user] Missing digest for *** Tree looks messed up. "Jc García" <jyo.garcia@×××××.com>
Re: [gentoo-user] Missing digest for *** Tree looks messed up. Peter Humphrey <peter@××××××××××××.uk>
Re: [gentoo-user] Missing digest for *** Tree looks messed up. Dale <rdalek1967@×××××.com>