Bug 1121793

Summary: dnf failed to install a package, whereas yum installed it without problems
Product: [Fedora] Fedora Reporter: jd1008
Component: dnfAssignee: Ales Kozumplik <akozumpl>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 20CC: akozumpl, jzeleny, mls, pnemade, rholy, tim.lauridsen
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-07-23 06:03:40 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
gzipped tar of debugdata directory (which is created by dnf). none

Description jd1008 2014-07-21 21:42:07 UTC
Description of problem: dnf failed to install a package, whereas yum installed it without problems


Version-Release number of selected component (if applicable): dnf-0.5.3-1.fc20.noarch


How reproducible: if you do not have amd and it's dependencies installed, the install it using dnf.


Steps to Reproduce:
1. dnf -y --debugsolver install amd  
2.
3.

Actual results:
Dependencies resolved
                                                   ============================================================================================================
 Package                 Arch                  Version                         Repository              Size
============================================================================================================
Installing:
 am-utils                i686                  5:6.1.5-30.fc20                 updates                834 k
 hesiod                  i686                  3.2.1-2.fc20                    fedora                  30 k
 am-utils                x86_64                5:6.1.5-30.fc20                 updates                836 k
 libidn                  i686                  1.28-2.fc20                     fedora                 209 k
 hesiod                  x86_64                3.2.1-2.fc20                    fedora                  29 k

Transaction Summary
============================================================================================================
Install  5 Packages

Total download size: 1.9 M
Installed size: 5.0 M

Total download size: 1.9 M
Installed size: 5.0 M
Downloading Packages:
(1/5): hesiod-3.2.1-2.fc20.i686.rpm                                          46 kB/s |  30 kB     00:00    
(2/5): am-utils-6.1.5-30.fc20.i686.rpm                                      684 kB/s | 834 kB     00:01    
(3/5): libidn-1.28-2.fc20.i686.rpm                                          223 kB/s | 209 kB     00:00    
(4/5): hesiod-3.2.1-2.fc20.x86_64.rpm                                        54 kB/s |  29 kB     00:00    
(5/5): am-utils-6.1.5-30.fc20.x86_64.rpm                                    412 kB/s | 836 kB     00:02    
------------------------------------------------------------------------------------------------------------
Total                                                                       493 kB/s | 1.9 MB     00:03     
Running transaction check
Transaction check succeeded.
Running transaction test
Error: Transaction check error:
  file /usr/bin/pawd conflicts between attempted installs of am-utils-5:6.1.5-30.fc20.i686 and am-utils-5:6.1.5-30.fc20.x86_64
  file /usr/sbin/amd conflicts between attempted installs of am-utils-5:6.1.5-30.fc20.i686 and am-utils-5:6.1.5-30.fc20.x86_64
  file /usr/sbin/amq conflicts between attempted installs of am-utils-5:6.1.5-30.fc20.i686 and am-utils-5:6.1.5-30.fc20.x86_64
  file /usr/sbin/fixmount conflicts between attempted installs of am-utils-5:6.1.5-30.fc20.i686 and am-utils-5:6.1.5-30.fc20.x86_64
  file /usr/sbin/fsinfo conflicts between attempted installs of am-utils-5:6.1.5-30.fc20.i686 and am-utils-5:6.1.5-30.fc20.x86_64
  file /usr/sbin/hlfsd conflicts between attempted installs of am-utils-5:6.1.5-30.fc20.i686 and am-utils-5:6.1.5-30.fc20.x86_64
  file /usr/sbin/mk-amd-map conflicts between attempted installs of am-utils-5:6.1.5-30.fc20.i686 and am-utils-5:6.1.5-30.fc20.x86_64
  file /usr/sbin/wire-test conflicts between attempted installs of am-utils-5:6.1.5-30.fc20.i686 and am-utils-5:6.1.5-30.fc20.x86_64

Error Summary
-------------


Expected results:


Additional info:

Comment 1 jd1008 2014-07-21 21:57:04 UTC
Created attachment 919773 [details]
gzipped tar of debugdata directory (which is created by dnf).

I tarred and compressed the debugdata directory, but it is still too big
to be attached. So, I am providing a url to which I uploaded it:

https://www.sendspace.com/file/137ry5

Comment 2 Ales Kozumplik 2014-07-22 08:13:20 UTC
Thanks for the report, I'm looking into the issue.

Comment 3 Ales Kozumplik 2014-07-22 11:32:38 UTC
In libsolv, this seems to be boiling down to:

repo system 0 testtags <inline>
#>=Ver: 2.0
repo available 0 testtags <inline>
#>=Pkg: a 1 1 x86_64
#>=Pkg: a 1 1 i686
#>=Prv: b

system x86_64 rpm system
poolflags implicitobsoleteusescolors

job install provides b
result transaction,problems <inline>
#>install a-1-1.i686@available
#>install a-1-1.x86_64@available

Michael, is this expected? Note that only the .i686 is pulled in when we remove the implicitbosoleteusescolors flag.

(The fact that only am-utils.i686 provides 'amd' (am-utils.x86_64 provides 'amd()(64bit)') and that it possibly has a packaging problem is a separate issue.)

Comment 4 Michael Schröder 2014-07-22 11:51:03 UTC
Yes, that's the expected result. i686 is considered a "inferior" arch and thus auto-lockstepped with the x86_64 package of the same name.

Comment 5 Ales Kozumplik 2014-07-23 06:03:40 UTC
Thanks Michael.

Reporter, what you see is the expected outcome---you asked DNF to install 'amd' and only the i686 package acutally provides 'amd'. The depsolver knows it is of inferior arch (your system being x86_64) and so has to install the x86_64 version too. But the package itself is not made in a way that allows it to be installed at both versions---hence the error. I checked the rawhide version of am-utils and there's been some changes to this so possibly the problem is gone there.