Bug 920758
| Summary: | yum-3.2.29-40.el6 causes strange mash failures with el5 packages | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Kevin Fenzi <kevin> |
| Component: | yum | Assignee: | Valentina Mukhamedzhanova <vmukhame> |
| Status: | CLOSED ERRATA | QA Contact: | Karel Srot <ksrot> |
| Severity: | high | Docs Contact: | |
| Priority: | high | ||
| Version: | 6.4 | CC: | dan, dennis, dgregor, dhorak, flanagan, james.antill, jzeleny, ksrot, tcallawa, vmukhame |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | yum-3.2.29-47.el6 | Doc Type: | Bug Fix |
| Doc Text: |
NO DOCS NEEDED
|
Story Points: | --- |
| Clone Of: | Environment: | ||
| Last Closed: | 2014-10-14 04:36:22 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
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
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
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. 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 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 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". 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. and I got hit by this bug again when mashing f19 updates on s390 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 Upstream fix to be backported - http://yum.baseurl.org/gitweb?p=yum.git;a=commitdiff;h=fe5cedf2ce54407b4f11a2505aa38c53db6c2857 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 |
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.