Bug 655625 - Anaconda didn't replace libjpeg.i686 with libjpeg-turbo.i686
Summary: Anaconda didn't replace libjpeg.i686 with libjpeg-turbo.i686
Alias: None
Product: Fedora
Classification: Fedora
Component: anaconda
Version: 14
Hardware: x86_64
OS: Unspecified
Target Milestone: ---
Assignee: Anaconda Maintenance Team
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2010-11-22 01:48 UTC by D. Wagner
Modified: 2012-04-11 15:45 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2012-04-11 15:45:08 UTC
Type: ---

Attachments (Terms of Use)

Description D. Wagner 2010-11-22 01:48:56 UTC
Description of problem:

I upgraded from F13 to F14 via the install DVD, then I ran "yum distro-sync".  After this, I still had libjpeg-6b-46.fc12.i686.  "yum check" complains about this.

In particular, I had the following RPMs installed:

# rpm -q libjpeg
# rpm -q libjpeg-turbo
# yum check
libjpeg-6b-46.fc12.i686 is obsoleted by libjpeg-turbo-1.0.1-1.fc14.1.x86_64
# yum upgrade 'libjpeg*'
No Packages marked for Update

There were lots of packages which had a dependency on libjpeg.

It looks like either anaconda or yum should have replaced libjpeg.fc12.i686 with libjpeg-turbo.fc.i686.

I was able to fix the problem by manually running "yum install libjpeg-turbo.i686", which installed libjpeg-turbo.i686 and erased libjpeg.i686.  However, I shouldn't have to do this manually.  Moreover, I shouldn't have to know to run "yum install"; "yum upgrade" should automatically figure out that there is a newer version available and upgrade it for me.

There is nothing in /root/upgrade.log* or /var/log/ that seems to help debug this:

# egrep -i libjpeg /root/upgrade.log* /var/log/anaconda*
/root/upgrade.log:Upgrading libjpeg-turbo-1.0.1-1.fc14.1.x86_64
/root/upgrade.log:Upgrading libjpeg-turbo-devel-1.0.1-1.fc14.1.x86_64

Nothing about libjpeg.i686.

Comment 1 James Laska 2011-01-06 19:55:04 UTC
Interesting bug!  It looks like libjpeg-turbo definitely %obsoletes the libjpeg package.

  # repoquery -q --obsoletes libjpeg-turbo.x86_64
  libjpeg < 6b-47

  # repoquery -q --whatobsoletes libjpeg

So it's non-obvious why you now have both libjpeg.i686 and libjpeg-turbo.x86_64 installed.  Note the different architectures.  Perhaps libjpeg-turbo.x86_64 was pulled in to satisfy some dependency, and there was no libjpeg.x86_64 on the system so there is nothing to %obsolete.  A yum expert might know better here.  Is this a case of cross-architecture %obsoletes?

Seeing the yum.log from the upgrade would be interesting, but you already noted there was no data out of /var/log/anaconda-yum.log.

Comment 2 D. Wagner 2011-01-08 06:22:40 UTC
Thanks for taking a look, I appreciate it!  Don't hesitate to let me know if there's anything I can extract out of "yum history" that would help you diagnose this.  I wasn't able to turn up anything more that seemed obviously useful, but I'm happy to provide any additional information that would help.

(Hmm.  Brainstorming: Is yum able to correctly identify that libjpeg-6b-46 matches "libjpeg < 6b-47"?  Could the non-traditional version numbering scheme be giving yum or anaconda difficulty?  Feel free to ignore this if it doesn't seem like a likely hypothesis.)

Comment 3 Chris Lumens 2012-04-11 15:45:08 UTC
I've not been able to reproduce this anywhere, nor have we gotten any other reports of it.  Sorry.

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