Gentoo Archives: gentoo-dev

From: Ciaran McCreesh <ciaran.mccreesh@××××××××××.com>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Issues regarding glep-55 (Was: [gentoo-council] Re: Preliminary Meeting-Topics for 12 February 2009)
Date: Tue, 24 Feb 2009 18:24:27
Message-Id: 20090224182416.3db4f60f@snowcone
In Reply to: Re: [gentoo-dev] Issues regarding glep-55 (Was: [gentoo-council] Re: Preliminary Meeting-Topics for 12 February 2009) by Luca Barbato
1 On Tue, 24 Feb 2009 18:16:54 +0100
2 Luca Barbato <lu_zero@g.o> wrote:
3 > > You're doubling the number of files that have to be read for an
4 > > operation that's almost purely i/o bound. On top of that, you're
5 > > introducing a whole bunch of disk seeks in what's otherwise a nice
6 > > linear operation.
7 >
8 > I see words, not numbers.
9
10 Number: double. That's a '2 times'.
11
12 > >>> That is not how metadata checks work.
13 > >> Explain how they work, regen works that way...
14 > >
15 > > If metadata is valid, ebuilds aren't opened at all. An optimal
16 > > implementation can slurp up the entire directory in one go and then
17 > > start pulling out cache entries as it needs them, not having to go
18 > > back to the ebuild directory or read its contents at all. Then it
19 > > can open and read cache files in a carefully selected order to
20 > > avoid having to do any more opens than necessary.
21 >
22 > So? if the cache is valid then you don't have to source them at all.
23 > If you have to regen it, well you have to read everything.
24
25 You don't know whether the cache is valid until you know the EAPI. It
26 only works currently because EAPIs don't change inherit behaviour.
27
28 > >>> By parsing the ebuilds you're talking doubling the number of file
29 > >>> reads required to get the job done, and massively increasing the
30 > >>> number of seeks required.
31 > >> Apparently it doesn't impact anything.
32 > >
33 > > Please show the patch you created (for Paludis, since Portage
34 > > doesn't yet do a lot of the optimisations it could here) that
35 > > demonstrates this.
36 >
37 > Paludis isn't portage.
38
39 So you have patches for Portage? Please show them.
40
41 > >>> But that isn't even the main issue. The main issue is that even if
42 > >>> you retroactively pretend that all ebuilds are in a format they're
43 > >>> not, and ignore the breakage, and then wait for a year for package
44 > >>> managers to try to parse your new format, you *still* can't change
45 > >>> name or versioning rules.
46 > >> why? when portage would breanch if I put an ebuild with a wacky
47 > >> version AND there is a valid cache for that telling its eapi 99 ?
48 > >
49 > > Because it has to parse that version. Also, the package manager
50 > > can't tell whether or not a cache entry is valid if it doesn't
51 > > recognise the EAPI in the cache entry.
52 >
53 > unknown isn't unsupported?
54
55 Huh? Please explain what you mean.
56
57 > >>> Again, these are all things that have been discussed at length
58 > >>> previously. Please either come up with a legitimate technical
59 > >>> objection, or admit that you've seen the light.
60 > >> the glep doesn't show any of those nor reference to it, as I said
61 > >> before, do your homework and probably more people will be happier
62 > >> with your proposals.
63 > >
64 > > Why should it? The C++ standard doesn't explain why you should use
65 > > it instead of Java...
66 >
67 > In fact many people do wonderful things with java and many more just
68 > do over engineered mess with C++?
69
70 Your trolling is going rapidly downhill.
71
72 --
73 Ciaran McCreesh

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies