Bug 920758 - yum-3.2.29-40.el6 causes strange mash failures with el5 packages
Summary: yum-3.2.29-40.el6 causes strange mash failures with el5 packages
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: yum
Version: 6.4
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: rc
: ---
Assignee: Valentina Mukhamedzhanova
QA Contact: Karel Srot
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-03-12 16:40 UTC by Kevin Fenzi
Modified: 2014-10-14 04:36 UTC (History)
10 users (show)

Fixed In Version: yum-3.2.29-47.el6
Doc Type: Bug Fix
Doc Text:
NO DOCS NEEDED
Clone Of:
Environment:
Last Closed: 2014-10-14 04:36:22 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2014:1410 normal SHIPPED_LIVE yum bug fix update 2014-10-14 00:54:51 UTC

Description Kevin Fenzi 2013-03-12 16:40:25 UTC
RHEL 6.4 install. 

mash-0.5.28-1.el6.noarch
createrepo-0.9.9-17.el6.noarch

Trying to mash a el5 collection of packages. 

With yum-3.2.29-30.el6.noarch installed, everything works fine. 
With yum-3.2.29-40.el6.noarch installed, we get strange failures:

2013-03-08 18:00:15 mash: Depsolve and createrepo finished.
mash failed in /mnt/koji/mash/updates/el5-epel-130308.1746/el5-epel


stderr:

Traceback (most recent call last):
  File "/usr/bin/mash", line 100, in <module>
    main()
  File "/usr/bin/mash", line 86, in main
    rc = themash.doMultilib()
  File "/usr/lib/python2.6/site-packages/mash/__init__.py", line 592, in doMultilib
    pid = self.doDepSolveAndMultilib(arch, repocache)
  File "/usr/lib/python2.6/site-packages/mash/__init__.py", line 562, in doDepSolveAndMultilib
    (rc, errors) = yumbase.resolveDeps()
  File "/usr/lib/python2.6/site-packages/yum/depsolve.py", line 771, in resolveDeps
    for po, dep in self._checkFileRequires():
  File "/usr/lib/python2.6/site-packages/yum/depsolve.py", line 1138, in _checkFileRequires
    po = self.getInstalledPackageObject(pkgtup)
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 3073, in getInstalledPackageObject
    raise Errors.RpmDBError, _('Package tuple %s could not be found in rpmdb') % str(pkgtup)
yum.Errors.RpmDBError: Package tuple ('perl-Verilog', 'ppc', '0', '3.212', '1.el5') could not be found in rpmdb
Traceback (most recent call last):
  File "/usr/bin/mash", line 100, in <module>
    main()
  File "/usr/bin/mash", line 86, in main
    rc = themash.doMultilib()
  File "/usr/lib/python2.6/site-packages/mash/__init__.py", line 592, in doMultilib
    pid = self.doDepSolveAndMultilib(arch, repocache)
  File "/usr/lib/python2.6/site-packages/mash/__init__.py", line 562, in doDepSolveAndMultilib
    (rc, errors) = yumbase.resolveDeps()
  File "/usr/lib/python2.6/site-packages/yum/depsolve.py", line 771, in resolveDeps
    for po, dep in self._checkFileRequires():
  File "/usr/lib/python2.6/site-packages/yum/depsolve.py", line 1138, in _checkFileRequires
    po = self.getInstalledPackageObject(pkgtup)
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 3073, in getInstalledPackageObject
    raise Errors.RpmDBError, _('Package tuple %s could not be found in rpmdb') % str(pkgtup)
yum.Errors.RpmDBError: Package tuple ('perl-Verilog', 'x86_64', '0', '3.212', '1.el5') could not be found in rpmdb

The packages vary from run to run, but it's the same error. 

Happy to provide more info.

Comment 1 Dennis Gilmore 2013-03-19 21:13:28 UTC
2013-03-19 19:20:06 mash: Resolving depenencies for arch s390x
Traceback (most recent call last):
  File "/usr/bin/mash", line 100, in <module>
    main()
  File "/usr/bin/mash", line 86, in main
    rc = themash.doMultilib()
  File "/usr/lib/python2.7/site-packages/mash/__init__.py", line 592, in doMultilib
    pid = self.doDepSolveAndMultilib(arch, repocache)
  File "/usr/lib/python2.7/site-packages/mash/__init__.py", line 562, in doDepSolveAndMultilib
    (rc, errors) = yumbase.resolveDeps()
  File "/usr/lib/python2.7/site-packages/yum/depsolve.py", line 882, in resolveDeps
    for po, dep in self._checkFileRequires():
  File "/usr/lib/python2.7/site-packages/yum/depsolve.py", line 1284, in _checkFileRequires
    po = self.getInstalledPackageObject(pkgtup)
  File "/usr/lib/python2.7/site-packages/yum/__init__.py", line 3942, in getInstalledPackageObject
    raise Errors.RpmDBError, _('Package tuple %s could not be found in rpmdb') % str(pkgtup)
yum.Errors.RpmDBError: Package tuple ('english-typing-booster', 'noarch', '0', '0.0.2', '2.fc18') could not be found in rpmdb
2013-03-19 19:22:39 mash: Depsolve and createrepo finished.
mash failed in /mnt/koji/mash/rawhide-20130319/rawhide-s390

just got this mashing up rawhide for s390.  the host is el6, however mash was run from a rawhide chroot on a x86_64 box

Comment 2 David Aquilina 2013-03-27 20:38:57 UTC
Also seen with: 

yum-3.4.3-51.fc18.noarch
rpm-4.10.3.1-1.fc18.ppc64

Mashing f18-updates-testing on ppc64. f18 chroot, el6 host. Same chroot & host though can mash f18-updates just fine.  

2013-03-07 19:17:28 mash: Resolving depenencies for arch ppc64
Traceback (most recent call last):
  File "/usr/bin/mash", line 100, in <module>
    main()
  File "/usr/bin/mash", line 86, in main
    rc = themash.doMultilib()
  File "/usr/lib/python2.7/site-packages/mash/__init__.py", line 592, in doMultilib
    pid = self.doDepSolveAndMultilib(arch, repocache)
  File "/usr/lib/python2.7/site-packages/mash/__init__.py", line 562, in doDepSolveAndMultilib
    (rc, errors) = yumbase.resolveDeps()
  File "/usr/lib/python2.7/site-packages/yum/depsolve.py", line 882, in resolveDeps
    for po, dep in self._checkFileRequires():
  File "/usr/lib/python2.7/site-packages/yum/depsolve.py", line 1249, in _checkFileRequires
    po = self.getInstalledPackageObject(pkgtup)
  File "/usr/lib/python2.7/site-packages/yum/__init__.py", line 3875, in getInstalledPackageObject
    raise Errors.RpmDBError, _('Package tuple %s could not be found in rpmdb') % str(pkgtup)
yum.Errors.RpmDBError: Package tuple ('qxmpp-dev-devel', 'ppc', '0', '0.6.3.1', '1.fc18') could not be found in rpmdb

Comment 3 Dan Horák 2013-03-27 20:52:24 UTC
Same crash (with different package = qxmpp-dev-devel) seen when mashing f17-updates on s390, f18-updates-testing on ppc, etc. I consider it a serious issue blocking cooperation with IBM on secondary arches.

Comment 4 Dan Horák 2013-03-28 14:10:23 UTC
And the problem is when you have both qxmpp-0.7.5-1.fc18 and qxmpp-dev-0.6.3.1-1.fc18 in a tag

Comment 5 Zdeněk Pavlas 2013-03-29 10:37:14 UTC
This is a depsolver bug, also present in HEAD.  A simple 2-liner has fixed this particular case.
http://lists.baseurl.org/pipermail/yum-devel/2013-March/010022.html

Comment 7 Zdeněk Pavlas 2013-05-13 15:50:34 UTC
Both I and James have tried to write a unit test, but didn't make it.  It's a bug in handling complex obsoletes, I've debugged it on a remote machine, and the fix is AFAICT "obvious".

Comment 8 RHEL Product and Program Management 2013-10-13 23:49:23 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unable to address this
request at this time.

Red Hat invites you to ask your support representative to
propose this request, if appropriate, in the next release of
Red Hat Enterprise Linux.

Comment 9 Dan Horák 2014-01-07 18:49:16 UTC
and I got hit by this bug again when mashing f19 updates on s390

Comment 10 Dan Horák 2014-01-07 18:52:57 UTC
I have downgraded the 6.5 yum to an older test build provided by Zdenek

--> Running transaction check
---> Package yum.noarch 0:3.2.29-40.el6_4.BZ920758 will be a downgrade
---> Package yum.noarch 0:3.2.29-43.el6_5 will be erased
--> Finished Dependency Resolution

Comment 14 Valentina Mukhamedzhanova 2014-02-24 14:06:48 UTC
Upstream fix to be backported - http://yum.baseurl.org/gitweb?p=yum.git;a=commitdiff;h=fe5cedf2ce54407b4f11a2505aa38c53db6c2857

Comment 22 errata-xmlrpc 2014-10-14 04:36:22 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2014-1410.html


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