Bug 433555 - Mash multilib problems with yum 3.0.x / EL5
Mash multilib problems with yum 3.0.x / EL5
Product: Fedora
Classification: Fedora
Component: mash (Show other bugs)
x86_64 Linux
low Severity low
: ---
: ---
Assigned To: Bill Nottingham
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2008-02-19 18:42 EST by Peter Pramberger
Modified: 2014-03-16 23:12 EDT (History)
2 users (show)

See Also:
Fixed In Version: mash-0.5.20-1.el5
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2008-04-29 16:49:24 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Fix (519 bytes, patch)
2008-02-19 18:42 EST, Peter Pramberger
no flags Details | Diff

  None (edit)
Description Peter Pramberger 2008-02-19 18:42:32 EST
Description of problem:

Using mash for a multilib-relevant arch (eg. x86_64) produces a stacktrace,
regardless what builds are included:

Traceback (most recent call last):
  File "/usr/bin/mash", line 82, in ?
  File "/usr/bin/mash", line 70, in main
    rc = themash.doMultilib()
  File "/usr/lib/python2.4/site-packages/mash/__init__.py", line 417, in doMultilib
    pid = self.doDepSolveAndMultilib(arch, cachedir)
  File "/usr/lib/python2.4/site-packages/mash/__init__.py", line 367, in
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 434, in
    if 'filelists' in repo.sack.added[repo]:
KeyError: <yum.yumRepo.YumRepository object at 0x19590790>
mash failed in /data/mash/buildsys-el5

Version-Release number of selected component (if applicable):

Tested with 0.2.10 and yum 3.0.5 on RHEL5.

How reproducible:

Always; Run mash on EL5 (yum 3.0.x) with arch x86_64 included.

Actual results:

See above stacktrace.

Additional info:

After some debugging it seems that this problem is related to the yum-API. See
below for some debug output:

yconfig = 


doSackSetup: archlist = ('amd64', 'ia32e', 'x86_64', 'noarch'), thisrepo =
findRepos: pattern = buildsys-el5
findRepos: item = buildsys-el5
findRepos: name = buildsys-el5-x86_64
findRepos: repos = {'buildsys-el5-x86_64': <yum.yumRepo.YumRepository object at
findRepos: result = []
Setting up Package Sacks
populateSack: which = [], with = metadata, myrepos = []
filelist = []
mash done in /data/mash/buildsys-el5

As you can see, is findRepos() from yum/repos.py never matching the repository
from the generated yum config and therefore returning nothing. For some reason
is the repository name not taken from the "name" attribute, but from the config

Has this been found anywhere else or is this specific to this yum version?
Comment 1 Peter Pramberger 2008-02-19 18:42:32 EST
Created attachment 295356 [details]
Comment 2 Bill Nottingham 2008-02-20 15:20:00 EST
Added in git for upstream, will probably make its way into EPEL soon.
Comment 3 Peter Pramberger 2008-02-21 05:41:54 EST
Well, to be honest I've to correct my above description.

The yum-API is not causing the problem. I've just done the same test with 3.2.7,
and findRepos() there behaves identical. The only difference is, that this
version seems to somewhere later populates the repo list itself so it doesn't
propagate to mash.

And "name" is not the repo name, but a human readable string describing the
Comment 4 Bill Nottingham 2008-02-21 13:27:38 EST
Well, it's only an API problem in that mash was using it wrong. :)
Comment 5 Bill Nottingham 2008-04-11 10:03:17 EDT
Fixed in 0.2.10-2. Sorry about the delay.
Comment 6 Fedora Update System 2008-04-11 10:18:35 EDT
mash-0.2.10-2.fc8 has been submitted as an update for Fedora 8
Comment 7 Fedora Update System 2008-04-29 16:49:17 EDT
mash-0.2.10-3.fc8 has been pushed to the Fedora 8 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 8 Fedora Update System 2010-05-07 13:53:55 EDT
mash-0.5.16-1.el5 has been submitted as an update for Fedora EPEL 5.
Comment 9 Fedora Update System 2010-09-28 12:18:56 EDT
mash-0.5.20-1.el5 has been submitted as an update for Fedora EPEL 5.
Comment 10 Fedora Update System 2010-10-13 01:57:17 EDT
mash-0.5.20-1.el5 has been pushed to the Fedora EPEL 5 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.