Bug 593349

Summary: yum-3.2.22-26.el5 install obsoleted pkg. makes the install be of the wrong arch
Product: Red Hat Enterprise Linux 5 Reporter: arth <art-rh>
Component: yumAssignee: James Antill <james.antill>
Status: CLOSED ERRATA QA Contact: BaseOS QE Security Team <qe-baseos-security>
Severity: low Docs Contact:
Priority: low    
Version: 5.5CC: ksrot, theo_nra
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: yum-3.2.22-29.el5 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 593522 (view as bug list) Environment:
Last Closed: 2011-01-13 17:12:29 EST Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 593522    

Description arth 2010-05-18 11:17:29 EDT
Description of problem:

# yum install libgfortran43.x86_64
Loaded plugins: changelog, rhnplugin, security
Setting up Install Process
Package libgfortran43 is obsoleted by libgfortran44, trying to install libgfortran44-4.4.0-6.el5.i386 instead
Resolving Dependencies
--> Running transaction check
---> Package libgfortran44.i386 0:4.4.0-6.el5 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package            Arch      Version           Repository                 Size
================================================================================
Installing:
 libgfortran44      i386      4.4.0-6.el5       rhel-x86_64-server-5      247 k

Transaction Summary
================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)


The result is that instead of getting the newer version for .x86_64, you get the newer version for i386.  Yum should have selected libgfortran44.x86_64 here, not only because the user explicitly specified .x86_64, but because the system is native x86_64.
Comment 1 seth vidal 2010-05-18 11:20:15 EDT
can you run:

yum list libgfortran\*

and paste the output.
Comment 2 arth 2010-05-18 13:17:36 EDT
The system in question has already got the problem fixed by explicitly installing libgfortran44.x86_64, so "yum list" won't be representative.
But from a different system where nothing has been done yet, it's replicable:

# yum list 'libgfortran*'
Installed Packages
libgfortran.x86_64                4.1.2-48.el5              installed           
Available Packages
libgfortran.i386                  4.1.2-48.el5              rhel-x86_64-server-5
libgfortran43.i386                4.3.2-7.el5               rhel-x86_64-server-5
libgfortran43.x86_64              4.3.2-7.el5               rhel-x86_64-server-5
libgfortran44.i386                4.4.0-6.el5               rhel-x86_64-server-5
libgfortran44.x86_64              4.4.0-6.el5               rhel-x86_64-server-5
# yum install libgfortran43.x86_64
Loaded plugins: changelog, rhnplugin, security
Setting up Install Process
Package libgfortran43 is obsoleted by libgfortran44, trying to install libgfortran44-4.4.0-6.el5.i386 instead
Resolving Dependencies
--> Running transaction check
---> Package libgfortran44.i386 0:4.4.0-6.el5 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package            Arch      Version           Repository                 Size
================================================================================
Installing:
 libgfortran44      i386      4.4.0-6.el5       rhel-x86_64-server-5      247 k

Transaction Summary
================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)

Total download size: 247 k
Is this ok [y/N]: n
Exiting on user Command
Complete!
Comment 3 seth vidal 2010-05-18 13:21:11 EDT
Can you run the following command:

repoquery -q --obsoletes libgfortran44.x86_64
repoquery -q --obsoletes libgfortran44.i386
Comment 4 arth 2010-05-18 13:43:17 EDT
[root@gvrsimeng01 sbin]# repoquery -q --obsoletes libgfortran44.x86_64
[root@gvrsimeng01 sbin]# repoquery -q --obsoletes libgfortran44.i386  
[root@gvrsimeng01 sbin]# repoquery -q --obsoletes libgfortran43.x86_64
[root@gvrsimeng01 sbin]# repoquery -q --obsoletes libgfortran43.i386  
[root@gvrsimeng01 sbin]#
Comment 5 seth vidal 2010-05-18 13:59:03 EDT
right -sorry run:

repoquery --plugins -q --obsoletes libgfortran.x86_64
Comment 6 arth 2010-05-18 15:12:53 EDT
[root@gvrsimeng01 sbin]# repoquery --plugins -q --obsoletes libgfortran.x86_64
libf2c

But presuming  you meant libgfortran44.x86_64:
[root@gvrsimeng01 sbin]# repoquery --plugins -q --obsoletes libgfortran44.x86_64 

libgfortran43
Comment 7 James Antill 2010-05-18 15:38:02 EDT
Ok, I have an upstream testcase for this.
Comment 8 James Antill 2010-05-18 17:32:27 EDT
We have upstream fixes now, both for this case and for if libgfortran33 was noarch.

I've marked this BZ to be considered for 5.6.
Comment 9 James Antill 2010-05-18 23:36:46 EDT
 Now pushed, two commits are the testcases the other two the fixes:

commit 9a2fa66d899c8c2cd0a91d7dfc61a26cd01bc382
Author: James Antill <james@and.org>
Date:   Tue May 18 16:54:32 2010 -0400

    Fix obsoleting pkgs. from <install norach> to multilib. using archdistance

commit 594a58bb622bc171782e9d0ec2943070507a6c79
Author: James Antill <james@and.org>
Date:   Tue May 18 16:54:08 2010 -0400

    Now do the same testcase for noarch => multilib

commit 0408550d397b266840eb84e1c856ed8830586952
Author: James Antill <james@and.org>
Date:   Tue May 18 16:17:18 2010 -0400

    Fix for obsoleting pkgs. we are trying to install

commit bbddbbfc24156b17f263c4efea8ffece5595b1a6
Author: James Antill <james@and.org>
Date:   Tue May 18 15:19:54 2010 -0400

    Add testcase for obsoletes of to be installed pkgs. -- 593349
Comment 11 Fedora Update System 2010-08-05 19:45:33 EDT
yum-3.2.28-1.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 20 errata-xmlrpc 2011-01-13 17:12:29 EST
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2011-0136.html