Bug 1089001 - DNF installs (seemingly?) unnecessary i686 packages on x86_64 system
Summary: DNF installs (seemingly?) unnecessary i686 packages on x86_64 system
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: dnf
Version: 20
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Packaging Maintenance Team
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-04-17 15:53 UTC by Petr Spacek
Modified: 2014-04-18 07:52 UTC (History)
5 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2014-04-18 07:52:54 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
rpm -qa output (26.11 KB, application/x-xz)
2014-04-17 15:56 UTC, Petr Spacek
no flags Details

Description Petr Spacek 2014-04-17 15:53:53 UTC
Version-Release number of selected component (if applicable):
dnf-0.4.20-1.fc20.noarch

How reproducible:
100 %

Steps to Reproduce:
0. Get a F20 system with following packages installed:
clang llvm llvm-libs mesa-dri-drivers mesa-libxatracker

E.g.
$ rpm -q clang llvm llvm-libs mesa-dri-drivers mesa-libxatracker
clang-3.3-4.fc20.x86_64
llvm-3.3-4.fc20.x86_64
llvm-libs-3.3-4.fc20.x86_64
mesa-dri-drivers-10.0.4-1.20140312.fc20.x86_64
mesa-libxatracker-10.0.4-1.20140312.fc20.x86_64

1. Download a newer version of those packages from koji:
$ koji download-build llvm-3.4-6.fc20 --arch=x86_64
$ koji download-build mesa-10.1-6.20140305.fc20 --arch=x86_64

2. Try to upgrade existing packages with downloaded RPM files:
$ sudo dnf --debugsolver upgrade clang-3.4-6.fc20.x86_64.rpm llvm-3.4-6.fc20.x86_64.rpm llvm-libs-3.4-6.fc20.x86_64.rpm mesa-dri-drivers-10.1-6.20140305.fc20.x86_64.rpm mesa-libxatracker-10.1-6.20140305.fc20.x86_64.rpm


Actual results:
Resolving dependencies
--> Starting dependency resolution
---> Package clang.i686 3.3-4.fc20 will be installed
---> Package libffi.i686 3.0.13-5.fc20 will be installed
---> Package zlib.i686 1.2.8-3.fc20 will be installed
---> Package llvm.i686 3.3-4.fc20 will be installed
---> Package llvm-libs.i686 3.3-4.fc20 will be installed
---> Package glibc.i686 2.18-12.fc20 will be installed
---> Package libgcc.i686 4.8.2-7.fc20 will be installed
---> Package libstdc++.i686 4.8.2-7.fc20 will be installed
---> Package nss-softokn-freebl.i686 3.16.0-1.fc20 will be installed
---> Package clang.x86_64 3.3-4.fc20 will be upgraded
---> Package clang.x86_64 3.4-6.fc20 will be an upgrade
---> Package llvm.x86_64 3.3-4.fc20 will be upgraded
---> Package llvm.x86_64 3.4-6.fc20 will be an upgrade
---> Package llvm-libs.x86_64 3.3-4.fc20 will be upgraded
---> Package llvm-libs.x86_64 3.4-6.fc20 will be an upgrade
---> Package mesa-dri-drivers.x86_64 10.0.4-1.20140312.fc20 will be upgraded
---> Package mesa-dri-drivers.x86_64 10.1-6.20140305.fc20 will be an upgrade
---> Package mesa-libxatracker.x86_64 10.0.4-1.20140312.fc20 will be upgraded
---> Package mesa-libxatracker.x86_64 10.1-6.20140305.fc20 will be an upgrade
--> Finished dependency resolution
Dependencies resolved.

=============================================================================================================================================================================
 Package                                      Arch                             Version                                          Repository                              Size
=============================================================================================================================================================================
Installing:
 clang                                        i686                             3.3-4.fc20                                       updates                                  0  
 libffi                                       i686                             3.0.13-5.fc20                                    fedora                                   0  
 zlib                                         i686                             1.2.8-3.fc20                                     fedora                                   0  
 llvm                                         i686                             3.3-4.fc20                                       updates                                  0  
 llvm-libs                                    i686                             3.3-4.fc20                                       updates                                  0  
 glibc                                        i686                             2.18-12.fc20                                     updates                                  0  
 libgcc                                       i686                             4.8.2-7.fc20                                     updates                                  0  
 libstdc++                                    i686                             4.8.2-7.fc20                                     updates                                  0  
 nss-softokn-freebl                           i686                             3.16.0-1.fc20                                    updates                                  0  
Upgrading:
 clang                                        x86_64                           3.4-6.fc20                                       @commandline                             0  
 llvm                                         x86_64                           3.4-6.fc20                                       @commandline                             0  
 llvm-libs                                    x86_64                           3.4-6.fc20                                       @commandline                             0  
 mesa-dri-drivers                             x86_64                           10.1-6.20140305.fc20                             @commandline                             0  
 mesa-libxatracker                            x86_64                           10.1-6.20140305.fc20                             @commandline                             0  

Transaction Summary
=============================================================================================================================================================================
Install  9 Packages
Upgrade  5 Packages


-> DNF wants to install i686 packages without apparent reason. I'm not able to find a reason for it.

Note that this system doesn't have any i686 packages installed:
$ rpm -qa | grep i686 | wc -l
0


Expected results:
DNF does not install any i686 packages when unnecessary.


Additional info:
I'm sorry if I overlooked some apparent reason for this!

Comment 2 Petr Spacek 2014-04-17 15:56:23 UTC
Created attachment 887211 [details]
rpm -qa output

Comment 3 Petr Spacek 2014-04-17 16:07:20 UTC
I was brave enough to say 'y' to the question above and DNF exited with a backtrace:
Downloading Packages:
Traceback (most recent call last):
  File "/bin/dnf", line 35, in <module>
    main.user_main(sys.argv[1:], exit_code=True)
  File "/usr/lib/python2.7/site-packages/dnf/cli/main.py", line 242, in user_main
    errcode = main(args)
  File "/usr/lib/python2.7/site-packages/dnf/cli/main.py", line 75, in main
    return _main(base, args)
  File "/usr/lib/python2.7/site-packages/dnf/cli/main.py", line 156, in _main
    return_code, resultmsgs = base.do_transaction()
  File "/usr/lib/python2.7/site-packages/dnf/cli/cli.py", line 214, in do_transaction
    self.download_packages(downloadpkgs, self.output.progress, total_cb)
  File "/usr/lib/python2.7/site-packages/dnf/base.py", line 909, in download_packages
    errors = dnf.repo.download_payloads(payloads, drpm)
  File "/usr/lib/python2.7/site-packages/dnf/repo.py", line 97, in download_payloads
    targets = [pload.librepo_target() for pload in payloads]
  File "/usr/lib/python2.7/site-packages/dnf/repo.py", line 278, in librepo_target
    target_dct.update(self._target_params())
  File "/usr/lib/python2.7/site-packages/dnf/repo.py", line 289, in _target_params
    ctype, csum = pkg.returnIdSum()
  File "/usr/lib/python2.7/site-packages/dnf/package.py", line 174, in returnIdSum
    (chksum_type, chksum) = self.chksum
  File "/usr/lib/python2.7/site-packages/dnf/package.py", line 52, in chksum
    return super(Package, self).chksum
AttributeError: No such checksum.

This happens even if I run "dnf clean all" before the attempt. Adding --noplugins doesn't change anything.

Comment 4 Petr Spacek 2014-04-17 16:14:24 UTC
Hmm, maybe I have found what it is trying to install old clang package from repos:
$ rpm -q clang-analyzer
clang-analyzer-3.3-4.fc20.noarch

$ rpm -q -R clang-analyzer
/usr/bin/env
clang = 3.3-4.fc20
perl(Cwd)
perl(Digest::MD5)
perl(File::Basename)
perl(File::Find)
perl(File::Path)
perl(File::Temp)
perl(FindBin)
perl(Sys::Hostname)
perl(Term::ANSIColor)
perl(Text::ParseWords)
perl(lib)
perl(strict)
perl(warnings)
python
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1


Unfortunatelly, this is not apparent from log messages printed by DNF. Some information why is a package planed for installation would be handy...

Comment 5 Radek Holy 2014-04-18 07:52:54 UTC
Hello, thank you for the report. You are right. Then it isn't a bug, is it?

As for:
(In reply to Petr Spacek from comment #3)
> AttributeError: No such checksum.
please see bug 1086073.

As for:
(In reply to Petr Spacek from comment #4)
> Unfortunatelly, this is not apparent from log messages printed by DNF. Some
> information why is a package planed for installation would be handy...
please see the second paragraph of https://bugzilla.redhat.com/show_bug.cgi?id=1044999#c1.


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