[Yum-devel] yum on an olpc machine (slooooooooooow)

seth vidal skvidal at linux.duke.edu
Sat Dec 16 15:29:18 UTC 2006


On Sat, 2006-12-16 at 09:50 +0000, Paul Nasrat wrote:
> On Fri, 2006-12-15 at 23:07 -0500, seth vidal wrote:
> 
> > -bash-3.1# time rpm -qa  >> /dev/null
> > 
> > real    0m14.632s
> > user    0m14.060s
> > sys     0m0.220s
> > 
> > -bash-3.1# time yum list installed >>/dev/null
> > 
> > real    0m9.797s
> > user    0m8.910s
> > sys     0m0.630s
> 
> Did you clear /var/lib/rpm/__db* between these, otherwise the numbers
> are misleading as bdb has cached.

These numbers aren't important, either. Neither one of those times are
ones I'd worry about. Accessing the rpmdb in the above example is not
the crippling slow down on the olpc box.

> > The only way I can think of would be a different format so we don't have
> > to parse the xml or pre-parsing the metadata into a sqlite db. This
> > would make downloads of the metadata larger but maybe it would be faster
> > for operations.
> > 
> > For example - fedora extras:
> > -rw-r--r--  1 root root 1.6M Dec 16 03:06 primary.xml.gz
> > -rw-r--r--  1 root root 2.2M Dec 16 03:09 primary.xml.sqlite.bz2
> > 
> > bzipped the primary xml sqlite db is 2.2M vs 1.6M for the xml itself.
> 
> The reason I didn't go this route for  FC5 anaconda is that it's just
> the same problem as having hdlist, etc.  Multiple versions of the same
> metadata, the problem we were trying to avoid by moving to repodata.
> I'd strongly argue this is the wrong approach.

Except that we were maintaining multiple copies of the same data created
at different times from different sources and containing subtly
different content when we had rpmdb-redhat + hdlist + repodata. This
would be an optional optimization that doesn't change the content, only
lets systems download what they would end up creating on their own
system anyway.

It's like downloading a binary rpm instead of a srpm. You can take the
srpm and make it into an rpm that will be (more or less) the same
content as the binary rpm available on the mirror, but someone else has
just taken the time to do it for you so you don't have to.

Or maybe I'm being crazy, but I don't see it as another copy of the
metadata. I see it as the same copy, just removing the extra processing
of it from every person's machine and having the processing only occur
once.

-sv





More information about the Yum-devel mailing list