Yum: the dreaded metadata disease

Claude Jones cjones at levitjames.com
Tue Dec 18 14:38:58 UTC 2007


Timothy Murphy wrote:
> My laptop seems to have contracted the yum disease:
>
> [Errno -1] Metadata file does not match checksum
>
> I googled for this, and it is apparent that this is
> a world-wide disease.
>
> IMHO, this error message is VERY BAD.
> It may make the yum developer happy,
> but it is completely useless to the yum user.
>
> First of all, the term "Metadata file" is incomprehensible to me,
> and I suspect to most Fedora users.
> Assuming that yum is talking about a specific file,
> it would be must simpler if he/she just told me the name of the file,
> and its precise location.
>
> [This is a fairly widespread Fedora - probably Linux - failure.
> If a program finds something wrong with a file,
> it must know where the file is,
> and should tell the user in any error message.]
>
> Secondly, if "the checksum" does not match
> then it must be comparing the "Metadata file"
> with some other file somewhere in the universe.
> Why not let us into the secret of where exactly this second file lives?
>
> Thirdly, an error message like this, if it is to be of the slightest use,
> should suggest some line of action that the user might take.
> Otherwise it is like a doctor telling you
> "Your centimenta level is dangerously high".
>
> Fourthly, it seems to me that yum has become subject
> to far more of these kinds of problem
> than it used to be.
> Yum is one of the central features of Fedora,
> and it is vital that it should work as reliably as possible.
>
> My strong impression is that the yum developers
> have become much too clever,
> and are adding far too many nice but not strictly necessary features.
> There is a lot to be said for leaving a program that works ok alone.
> "If it ain't broke don't improve it."
>
>
>
>   
I think you're over-reacting. Repos keep an active list of files with 
certain information about each file in the repo. As I understand it, 
this is the metadata that's being referred to. When a new package is 
uploaded to a repository, that list must be updated. All these actions 
occur in time. On occasion, it is possible to get a list that's not been 
fully updated after a new package has been uploaded. You've arrived at 
the repository at an in-between time between when the new package has 
been uploaded, and when the file list has been updated to reflect that 
change. Occasionally, other issues occur akin to this, or simple 
mistakes get made. In any event, usually, waiting a decent interval will 
usually clear up the problem. When yum goes out to a repo to check for 
updates, it's downloading that list of files - that's the metadata 
package-list file. Yum doesn't download packages when it's checking for 
updates, just that package list. Things get out of sync temporarily - 
it's not a big deal. If you reflect for a moment on the update system, 
it's truly a marvel. A new package gets created by someone; it gets 
uploaded to the main Redhat repo; that sets in motion a chain of events 
which results in that package being in turn uploaded to many, many, 
servers across the planet, the mirrors. On machines across the planet, a 
chain of events occurs which result in your being able to update your 
machine - just keep in mind that it occurs over time.




More information about the fedora-list mailing list