Bug 425937

Summary: Yum fails to notice architectural difference between some packages when resolving dependencies.
Product: [Fedora] Fedora Reporter: Levente Peres <levente.peres>
Component: yumAssignee: Seth Vidal <skvidal>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 7CC: djg, ffesti, james.antill, katzj, pmatilai, tim.lauridsen, triage
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-06-17 02:56:16 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Levente Peres 2007-12-17 10:29:00 UTC
Description of problem:

Yum sometimes seem to confuse/miss architectural differences between packages
for i586/686 (/386?) when resolving dependecies upon upgrade/install.

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

yum, current

How reproducible:

Easiest by installing a package which is kernel arch. dependent, for example a
kernel module on a non-upgraded base system and then try to upgrade.

Steps to Reproduce:
1. Install base Fedora 7
2. Add repository:
[atrpms]
name=Fedora Core $releasever - $basearch - ATrpms
baseurl=http://dl.atrpms.net/f$releasever-$basearch/atrpms/stable
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms
gpgcheck=0
3. DO NOT UPDATE (YET)!!!
4. As root, do: yum install openafs-client openafs-server openafs
5. Reboot, check if openafs is working properly (some default, public net cells
should be accessible right after install and reboot)
6. If you got it working, upgrade the system by: yum upgrade
7. During the upgrade yum will upgrade kernel to the latest version. After this
(at least in my case) the openafs kernel module will not load into the kernel
anymore. On the test machine, there's discrepancy which explains why:

[root@estdtagwy01 ~]# rpm -qa --qf '%{name}.%{arch}\n' \*kmdl\* kernel\*
kernel-devel.i686
kernel.i586
openafs-kmdl-2.6.23.8-34.fc7.i686
kernel-devel.i686
kernel.i586
kernel-headers.i386

As you can see, after upgrade yum installed the wrong arch. for openafs-kmdl
(i686 instead of the actual running kernel which is i586)

Actual results:

After this, the only way to fix the system seems to be reinstalling openafs by:

# yum remove openafs-kmdl-2.6.23.8-34.fc7
**** SUCCESS
# yum install openafs-client openafs-kmdl-2.6.23.8-34.fc7.i586
**** SUCCESS
**** REBOOT

After this, the system rejoins the afs cell and works as expected after a reboot.

However, this is just a temporary solution at best, because the biggest problem
is that if I were NOT to specify .i586 in the above yum install command when
resinstalling openafs after the screwed up upgrade, yum will continue to
incorrectly install .i686 version instead of .i586, so repeating the whole mess
over again.

In order to get around this you need to specify for yum exactly the .i586 part
or else it will just simply fail again.

Additional info:

For history of the discovery of the bug, please see:

http://bugzilla.atrpms.net/show_bug.cgi?id=1337

Comment 1 David Gesswein 2007-12-27 14:32:14 UTC
This looks like the same problem I had. 
Previously I had done a yum update which picked up a new kernel and the correct
nvidia kmdl (from atrpms). 
Dec  9 13:43:11 quoth yum: Installed:
nvidia-graphics100.14.19-kmdl-2.6.23.8-34.fc7 - 1:100.14.19-92.fc7.i686

On the 12 yum was updated
Dec 12 07:26:47 quoth yum: Updated: yum - 3.2.8-2.fc7.noarch

Recently I did a yum update and it picked the i586 nvidia kmdl version
Using yum-3.2.8-2.fc7
yum: Installed: nvidia-graphics169.07-kmdl-2.6.23.8-34.fc7 - 1:169.07-94.fc7.i586
I also deleted everything and reinstalled nvidia-graphics and it still picked
the i586 kmdl.

I had to manually install the correct kmdl.
yum: Installed: nvidia-graphics169.07-kmdl-2.6.23.8-34.fc7 - 1:169.07-94.fc7.i686


Comment 2 Levente Peres 2007-12-27 15:05:50 UTC
Addendum to my post:

I forgot to mention in this report that I'm talking about Quad-core Xeon based
servers. This means that not i586 but i686 should be used at all points.

This concludes that not only did yum screw up the kmdl arch. matching to the
running kernel, but before doing that, it also updated the kernel to the wrong
arch. (i586 instead of the i686). So simply put, first it removes the old kernel
and replaces it with i586 arch. update - which is wrong. Then it tries to
install the correct actual arch. from the kmdl (i686 as indicated by my list
above), however it disregards or fails to see the fact that the kernel that is
actually installed is i586...

So, two mistakes instead of one.

Comment 3 Seth Vidal 2008-03-12 16:06:51 UTC
Can either of you replicate these issues under yum 3.2.12 from rawhide? We've
solved a lot of dep resolution bugs since december.

thanks


Comment 4 David Gesswein 2008-03-16 16:58:48 UTC
I wasn't sure how to get yum from rawhide so I downloaded
yum-3.2.12-4.fc9.noarch.rpm yum-updatesd-0.9-1.fc8.noarch.rpm from koji and
installed with yum upgrade yum-3.2.12-4.fc9.noarch.rpm
yum-updatesd-0.9-1.fc8.noarch.rpm.

After this yum install nvidia-graphics still pulls the i586 version
...
---> Package nvidia-graphics169.12.i386 1:169.12-96.fc7 set to be updated
--> Processing Dependency: nvidia-graphics169.12-kmdl-1:169.12-96.fc7 for
package: nvidia-graphics169.12
--> Running transaction check
---> Package nvidia-graphics169.12-kmdl-2.6.23.15-80.fc7.i586 1:169.12-96.fc7
set to be updated
...

 uname -a
Linux quoth.pdp8online.com 2.6.23.15-80.fc7 #1 SMP Sun Feb 10 17:29:10 EST 2008
i686 athlon i386 GNU/Linux

Comment 5 Bug Zapper 2008-05-14 15:10:25 UTC
This message is a reminder that Fedora 7 is nearing the end of life. Approximately 30 (thirty) days from now Fedora will stop maintaining and issuing updates for Fedora 7. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as WONTFIX if it remains open with a Fedora 'version' of '7'.

Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version prior to Fedora 7's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that we may not be able to fix it before Fedora 7 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora please change the 'version' of this bug. If you are unable to change the version, please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. If possible, it is recommended that you try the newest available Fedora distribution to see if your bug still exists.

Please read the Release Notes for the newest Fedora distribution to make sure it will meet your needs:
http://docs.fedoraproject.org/release-notes/

The process we are following is described here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 6 Seth Vidal 2008-05-30 15:51:06 UTC
something we may not have covered before - do you have an /etc/rpm/platform
file? and if so what's in it?


Comment 7 David Gesswein 2008-05-30 16:59:57 UTC
Yes I do.  Its contents are 
athlon-redhat-linux




Comment 8 Bug Zapper 2008-06-17 02:56:14 UTC
Fedora 7 changed to end-of-life (EOL) status on June 13, 2008. 
Fedora 7 is no longer maintained, which means that it will not 
receive any further security or bug fix updates. As a result we 
are closing this bug. 

If you can reproduce this bug against a currently maintained version 
of Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.