Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1192182

Summary: Tracker: issues caused by poor ambiguous provides resolution
Product: [Fedora] Fedora Reporter: Adam Williamson <awilliam>
Component: dnfAssignee: Packaging Maintenance Team <packaging-team-maint>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 23CC: akozumpl, jsilhan, jzeleny, mluscon, muhammad.saad, packaging-team-maint, pnemade, redhat-bugzilla, tim.lauridsen
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-01-06 20:24:15 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:
Bug Depends On: 1183835, 1192189, 1197135, 1349743    
Bug Blocks:    

Description Adam Williamson 2015-02-12 19:11:36 UTC
As we've now hit at least a couple of different significant/interesting issues caused by DNF's handling of ambiguous provides: situations, I'm filing a tracker bug.

For clarity, by 'ambiguous provides' I mean this sort of case:

dog requires ball
greenball provides ball
redball provides ball

The package manager has to decide whether to install greenball or redball when the user asks for dog; how does it decide which to go with?

yum has a relatively sophisticated heuristic for handling these cases - YumBase._compare_providers() - while DNF has nothing comparable and tends to handle such cases in a way that can reasonably be described as 'worse'.

Comment 1 Honza Silhan 2015-03-24 14:42:29 UTC
Hi Adam, can you reevaluate the provide selection bugs with libsolv-0.6.8-3 and eventually close them, please?

Comment 2 Adam Williamson 2015-03-26 01:17:14 UTC
I'll try and find some time to re-test, yup. Thanks for the build.

Comment 3 Jan Kurik 2015-07-15 14:33:31 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 23 development cycle.
Changing version to '23'.

(As we did not run this process for some time, it could affect also pre-Fedora 23 development
cycle bugs. We are very sorry. It will help us with cleanup during Fedora 23 End Of Life. Thank you.)

More information and reason for this action is here:
https://fedoraproject.org/wiki/BugZappers/HouseKeeping/Fedora23

Comment 4 Honza Silhan 2016-01-06 20:24:15 UTC
The algorithm of libsolv has been improved in version 0.6.14 by trying to find the smallest set of dependencies available along with other heuristics. Moreover there is a guideline [1] where you can prefer one package over another. I am closing this, feel free to reopen and report other issues you encounter.

[1] https://fedoraproject.org/w/index.php?title=PackagingDrafts/ProvidesPreferences