1 |
Broken breakage |
2 |
|
3 |
|
4 |
tl;dr: Stuff is broken, and no one seems to care |
5 |
|
6 |
|
7 |
|
8 |
In August the git "migration" happened, moving our main repository from |
9 |
old stupid cvs to modern shiny git. |
10 |
|
11 |
Well, migration is not the word I'd use, because this was an untested |
12 |
forced migration that is now, months later, still suffering from |
13 |
regressions and failures. But, hey, no more cvs! That's good because, |
14 |
reasons. |
15 |
|
16 |
So at first there was [1] the lack of proper Manifests. Which broke |
17 |
things for all rsync users for a few hours. |
18 |
|
19 |
Once that was 'fixed' there was the fun of [2], which made emerge --sync |
20 |
very expensive because it refetched lots of files. Every time. |
21 |
|
22 |
The 'fix' to the fix of the fix for that is still in progress ... |
23 |
|
24 |
|
25 |
And a few little things like [3] happened. Oopsie. |
26 |
Also there seems to be confusion how git works, leading to hilarity like |
27 |
[4]. |
28 |
|
29 |
Now [5] was reported. Who needs ChangeLogs, this is git! Except for all |
30 |
users, who don't get ChangeLogs. Well, let's add them and [6] not test |
31 |
what happens. Guess what? Stuff breaks more. |
32 |
And they are added backwards so that emerge --changelog fails in a |
33 |
different way. No, I didn't want to read all changlog except the part I |
34 |
cared about. |
35 |
|
36 |
And fixing that introduces [7] some more regressions that broke updating |
37 |
@system for about 3.5 days. |
38 |
|
39 |
The fix to that fix (notice a pattern here?) broke rsync for *all* users |
40 |
[8]. Almost as if no one ever tests things in a test environment ... but |
41 |
hey, we're agile, let's fix stuff in production! |
42 |
|
43 |
And the manifest issues are still [9] making life exciting. |
44 |
|
45 |
So to summarize, in about 5 months there was user-visible breakage: |
46 |
|
47 |
- ~1 day downtime for git migration (no updates) |
48 |
- 8h no Manifests (no updates possible) |
49 |
- a few days of emerge --sync being stupidly slow |
50 |
- a few days of emerge-webrsync not updating |
51 |
- about 3 months of emerge --changelog being broken, just to be broken |
52 |
in a different way |
53 |
- 3.5 days of emerge @system being broken |
54 |
- about a day of emerge --sync needing manual interaction to be able to |
55 |
update again |
56 |
- a few days of grub being uninstallable (iow, making installing |
57 |
impossible for many users) |
58 |
|
59 |
So all in all emerge --sync && emerge -uND @system being down for >10% |
60 |
of the time. |
61 |
|
62 |
Now, I don't know if you use Gentoo, but I do, and I use it at work, so |
63 |
having this level of randomization happen is not really useful. |
64 |
|
65 |
Tell me then, please - what can I/we do so that this kind of breakage |
66 |
stops, and we can actually aim at having a most excellent distro? In the |
67 |
long run I am considering just creating my own clone of all |
68 |
infrastructure bits so I can fix things, but it's an option that is |
69 |
needlessly braindead, wasting effort, and not really useful to users |
70 |
that are not me. |
71 |
|
72 |
|
73 |
[1] https://bugs.gentoo.org/show_bug.cgi?id=557184 |
74 |
[2] https://bugs.gentoo.org/show_bug.cgi?id=557192 |
75 |
[3] https://bugs.gentoo.org/show_bug.cgi?id=557344 |
76 |
[4] https://bugs.gentoo.org/show_bug.cgi?id=557400 |
77 |
[5] https://bugs.gentoo.org/show_bug.cgi?id=557826 |
78 |
[6] https://bugs.gentoo.org/show_bug.cgi?id=565574 |
79 |
[7] https://bugs.gentoo.org/show_bug.cgi?id=565694 |
80 |
[8] https://bugs.gentoo.org/show_bug.cgi?id=567074 |
81 |
[9] https://bugs.gentoo.org/show_bug.cgi?id=567830 |