Bug 751574

Summary: yum refuses to update grub to grub2
Product: [Fedora] Fedora Reporter: Michal Jaegermann <michal>
Component: rpmAssignee: Fedora Packaging Toolset Team <packaging-team>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: akozumpl, ffesti, james.antill, jnovy, maxamillion, pmatilai, tla, zpavlas
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-05-11 06:40:28 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
record of a failed transaction saved by yum none

Description Michal Jaegermann 2011-11-05 19:59:11 UTC
Description of problem:

On a rawhide installation an attempt to replace grub with grub2 starts like this:

Installing:
 grub2              x86_64          1:1.99-10.fc17           rawhide          1.2 M
     replacing  grub.x86_64 1:0.97-83.fc17
Installing for dependencies:
 os-prober          x86_64          1.48-1.fc16              rawhide           30 k

So far so good, but this transaction (run here with '-d6') ends like that:

Member: grub.x86_64 1:0.97-83.fc17 - od
Member: grub2.x86_64 1:1.99-10.fc17 - u
Adding Package 1:grub2-1.99-10.fc17.x86_64 in mode u
Member: os-prober.x86_64 0:1.48-1.fc16 - u
Adding Package os-prober-1.48-1.fc16.x86_64 in mode u
Running Transaction Check
ERROR with transaction check vs depsolve:
grub2 conflicts with (installed) grub-1:0.97-83.fc17.x86_64

Eh? grub-1:0.97 was supposed to be obsoleted by grub2.

A record of a saved transaction is attached.

Version-Release number of selected component (if applicable):
yum-3.4.3-11.fc17.noarch
rpm-4.9.1.2-3.fc17.x86_64

How reproducible:
always

Additional info:
Maybe this is a bug somewhere else?  Despite that
'rpm -qp --obsoletes grub2-1.99-10.fc17.x86_64.rpm' prints 'grub < 1:0.98' an attempt to run rpm directly with grub2 and os-prober packages also terminates with:

error: Failed dependencies:
        grub2 conflicts with (installed) grub-1:0.97-83.fc17.x86_64

Yes, I am aware that here I can first desintall grub and subsequently install grub2.  That may be not so easy in other situations.  OTOH reproducing the issue should be easy too.

Comment 1 Michal Jaegermann 2011-11-05 20:00:30 UTC
Created attachment 531909 [details]
record of a failed transaction saved by yum

Comment 2 Panu Matilainen 2011-11-16 19:51:06 UTC
Interesting case. The obsoletes doesn't happen because the "colors" dont match: grub-0.97 only contains 32bit ELF files (despite arch being x86_64) making its color 1, but grub2-1.99 contains both 32bit and 64bit ELF making its color 3, and rpm doesn't do "cross-arch" (which is what the color difference in normal circumstances means) obsoletes.

Comment 3 Ales Kozumplik 2011-11-22 15:33:09 UTC
Strange this doesn't happen with grub-0.97-84.fc16.x86_64.rpm and grub2-1.99-12.fc16.x86_64.rpm.

Comment 4 Ales Kozumplik 2011-11-23 12:36:24 UTC
Here's why we might see the different behavior:

$ rpm -qp --conflicts grub-0.97-84.fc16.x86_64.rpm  
$ rpm -qp --conflicts grub-0.97-84.fc17.x86_64.rpm 
grub2  


so the f17 grub in fact conflicts with grub2 (while f16 does not). I will investigate what should happen in this case (A conflicts B and B obsoletes A).

Comment 6 Fedora Admin XMLRPC Client 2012-04-13 23:07:21 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 7 Fedora Admin XMLRPC Client 2012-04-13 23:10:50 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 8 Panu Matilainen 2012-05-11 06:40:28 UTC
Fixed in rawhide (by rpm >= 4.10)