Bug 1832869
| Summary: | 'dnf install' no longer updates packages | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 8 | Reporter: | adam winberg <adam.winberg> |
| Component: | dnf | Assignee: | Lukáš Hrázký <lhrazky> |
| Status: | CLOSED ERRATA | QA Contact: | Eva Mrakova <emrakova> |
| Severity: | unspecified | Docs Contact: | Mariya Pershina <mpershin> |
| Priority: | medium | ||
| Version: | 8.2 | CC: | fedoraproject, james.antill, kwalker, lhrazky, lmanasko, mdomonko, mpershin, pkratoch |
| Target Milestone: | rc | Keywords: | Regression, Triaged |
| Target Release: | 8.0 | Flags: | pm-rhel:
mirror+
|
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Enhancement | |
| Doc Text: |
.The default value for the `best` dnf configuration option has been changed from `True` to `False`
With this update, the value for the `best` dnf configuration option has been set to `True` in the default configuration file to retain the original dnf behavior. As a result, for users that use the default configuration file the behavior remains unchanged.
If you provide your own configuration files, make sure that the `best=True` option is present to retain the original behavior.
|
Story Points: | --- |
| Clone Of: | Environment: | ||
| Last Closed: | 2020-11-04 01:53:12 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: | |||
|
Description
adam winberg
2020-05-07 12:29:21 UTC
Hello Adam, it appears you don't have the "best" option set to true, which is what controls whether the `install` command will update packages to latest versions (as opposed to not upgrading, the way it behaves on Fedora). Can you post the contents of your /etc/dnf/dnf.conf and whether it is a symlink to /etc/yum.conf? Do you know which was the original version of RHEL with which this machine was installed and upgraded from? Thanks! hm, thats weird. We have not changed the default setting for the 'best' option, which according to doc is 'true'. But if I add '--best' to my yum command in 8.2 the install command actually updates the package. And if I explicitly add 'best=True' to our dnf.conf it works as well. Has the default setting for 'best' changed in 8.2 without being documented? /etc/yum.conf is a symlink pointing to /etc/dnf/dnf.conf. The contents are: [main] gpgcheck=1 localpkg_gpgcheck=1 installonly_limit=3 clean_requirements_on_remove=True metadata_expire=0 install_weak_deps=False errorlevel=2 exit_on_lock=True We see this on all machines updated to 8.2, from 8.1. Stumbled upon another change in behaviour which seems to trace back to the same problem. When trying to update a package with bad dependencies, in 8.2 the command behaves as if we have 'best=False'. But in 8.1 it behaves as if 'best=True'. The dnf.conf file is identical on both servers. RHEL 8.1: -------------------------------------------------------------- [root@lxserv1808:~]$ yum update --enablerepo=lx* ... ... Error: Problem: cannot install the best update candidate for package test-20200518-1.el8.x86_64 - nothing provides fjak needed by test-20200526-1.el8.x86_64 (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages) [root@lxserv1808:~]$ echo $? 1 [root@lxserv1808:~]$ -------------------------------------------------------------- RHEL 8.2: -------------------------------------------------------------- [root@lxserv1908:~]$ /usr/bin/yum update ... ... =============================================================================================================================================================================================================================================== Package Architecture Version Repository Size =============================================================================================================================================================================================================================================== Skipping packages with broken dependencies: test x86_64 20200526-1.el8 lxserv1908 8.1 k Transaction Summary =============================================================================================================================================================================================================================================== Skip 1 Package Nothing to do. Complete! [root@lxserv1908:~]$ echo $? 0 [root@lxserv1908:~]$ -------------------------------------------------------------- Yes, the default for the best value has changed from True to False between 8.1 and 8.2. The best=True option setting has been shipped in dnf.conf since RHEL 8.0, but you do need to have it in your config to preserve the functionality. Sorry about the inconvenience. Ok, easy for me to just add 'best=True' in my config. BUT why do you change a default setting in the middle of a RHEL lifecycle? And why is the change not even documented? This is very unexpected from a minor release update. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (yum bug fix and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHEA-2020:4510 |