[Yum-devel] Reducing yum startup times and memory usage

Gijs Hollestelle g.hollestelle at gmail.com
Mon Jan 10 08:18:04 UTC 2005


On Mon, 10 Jan 2005 01:35:24 -0500, seth vidal <skvidal at phy.duke.edu> wrote:
> >   - All changelogs, buildtimes, summaries etc are loaded into memory
> > and converted between different formats, even when these are hardly
> > ever required (are they required for anything besides yum info?)
> 
> This data is never read in unless it is required. Take a look at the
> difference between a yum list available and a yum makecache.
> 
> makecache reads in ALL the metadata, yum list available only reads in
> primary.xml.gz
Hi Seth,

Sorry that I didnt make clear that I was only talking about
primary.xml.gz. You're right about the changelogs they are not in
primary.xml.gz but the other things that I've mentioned (ie
build-time, summary, list of requirements, etc) are.

I understand that primary.xml.gz contains the stuff that is enough for
90% of all actions and that is a good thing, I'm not suggesting to
replace the contents of any of the xml files I think they are a very
good framework for the meta-data.

I'm just proposing to do something different at startup, i.e. not to
load a snapshot of the entire parsed primary.xml.gz as it most likely
contains information that is not needed. For example there is no need
to load all prco information into memory for a simple list updates.

Another question, is the requires information in primary.xml.gz ever
used in the current yum implementation? As I understand it yum uses
only the provides and files information from primary.xml and takes the
requires from the actual downloaded rpm header for the rest, is this
correct? Does the same hold for conflicts?

Regards,
  Gijs



More information about the Yum-devel mailing list