Gentoo Archives: gentoo-portage-dev

From: Brian Harring <ferringb@g.o>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] Cache rewrite backport
Date: Wed, 12 Oct 2005 20:23:02
Message-Id: 20051012202157.GG8851@nightcrawler
In Reply to: Re: [gentoo-portage-dev] Cache rewrite backport by Bastian Balthazar Bux
1 On Wed, Oct 12, 2005 at 02:56:38PM +0200, Bastian Balthazar Bux wrote:
2 > Brian Harring ha scritto:
3 > > Rather then keep posting large patches here, just going to post them
4 > > to dev.gentoo.org/~ferringb/portage/2.0 ... for example,
5 > > http://dev.gentoo.org/~ferringb/portage/2.0/3.0-cache-backport-experimental-4.patch
6 > >
7 > > should be pulled rather then previous patch.
8 > >
9 > > Helluva lot easier for me since I can correct dumb ass mistakes like
10 > > an import pdb for testing sliding into a patch :)
11 > >
12 > > Think that's probably a sign it's time for some sleep...
13 > > ~harring
14 >
15 > premessa:
16 > emerge metadata does not recreate the cache after a
17 > "rm -rf $PORTDIR/metadata/cache/*" .
18 > The first thing that came in mind is that I'm missing something obvious.
19 Can't trigger that myself... so would be curious.
20
21 > Today working on a different box, slower cpu, faster disk (ratio 2:1)
22 >
23 > sys-apps/portage-2.0.53_rc5 patched version
24 > time emerge --metadata three times, first time with error trace
25 > real 3m43.162s 0m14.986s 0m14.124s
26 > user 0m13.580s 0m10.790s 0m11.150s
27 > sys 0m7.990s 0m3.280s 0m2.960s
28 >
29 > sys-apps/portage-2.0.53_rc5 vanilla
30 > time emerge --metadata three times
31 > real 0m47.913s 0m52.677s 0m37.448s
32 > user 0m32.900s 0m31.720s 0m31.870s
33 > sys 0m7.020s 0m6.440s 0m5.530s
34 >
35 > sys-apps/portage-2.0.53_rc5 patched version again
36 > time emerge --metadata three times, first time with error trace
37 > real 0m17.386s 0m14.029s 0m13.873s
38 > user 0m12.110s 0m10.980s 0m10.820s
39 > sys 0m3.950s 0m3.020s 0m3.040s
40 >
41 > =================== cache file example
42 > cat $PORTDIR/metadata/cache/sys-apps/portage-2.0.53_rc5
43 > >=dev-lang/python-2.2.1
44 > !build? ( >=sys-apps/sed-4.0.5 dev-python/python-fchksum
45 > >=dev-lang/python-2.2.1 userland_GNU? ( sys-apps/debianutils )
46 > >=app-shells/bash-2.05a ) !userland_Darwin? ( sys-apps/sandbox )
47 > selinux? ( >=dev-python/python-selinux-2.15 )
48 > 0
49 > mirror://gentoo/portage-2.0.53_rc5.tar.bz2
50 > http://dev.gentoo.org/~jstubbs/releases/portage-2.0.53_rc5.tar.bz2
51 >
52 > http://www.gentoo.org/
53 > GPL-2
54 > The Portage Package Management System. The primary package management
55 > and distribution system for Gentoo.
56 > ~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc-macos ~ppc64 ~s390
57 > ~sh ~sparc ~x86
58 > multilib toolchain-funcs
59 > build selinux
60
61 ^^^ that's a flat_list entry, if/when this faster code is deployed a
62 wipe of the cache probably would occur since flat_list and flat_hash
63 use the same location (need to change that someday imo).
64
65 Explains the traceback that followed. :)
66
67 _Still_ need to modify the damn thing to cover another angle for
68 PORTDIR being wholesale moved, but posted an experimental-6 that will
69 be a bit slower, but is a bit more correct about handling the cases
70 above, and dealing with eclass staleness checks.
71 ~harring