Bug 1017278 - dnf does not notice file conflicts
dnf does not notice file conflicts
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: dnf (Show other bugs)
20
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Ales Kozumplik
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-10-09 10:37 EDT by Michal Schmidt
Modified: 2014-09-30 19:41 EDT (History)
4 users (show)

See Also:
Fixed In Version: dnf-0.4.4-1.fc20
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-11-10 01:59:26 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Michal Schmidt 2013-10-09 10:37:33 EDT
Description of problem:
dnf does not notice a file conflict and proceeds with rpm installation, overwriting the conflicting file.

Version-Release number of selected component (if applicable):
dnf-0.4.3-2.fc20.noarch
hawkey-0.4.2-1.git4c51f65.fc20.x86_64
librepo-1.2.1-1.fc20.x86_64
rpm-4.11.1-7.fc20.x86_64

How reproducible:
always

Steps to Reproduce:
1. dnf install libgudev1-devel-208-2.fc20.i686 libgudev1-devel-208-2.fc20.x86_64
2.
3.

Actual results:
Installation succeeds even though the two RPMs have a file conflict (reported in bug 1016834).
Afterwards, "rpm -V libgudev1-devel" reports:
..5......  d /usr/share/gtk-doc/html/gudev/annotation-glossary.html
..5......  d /usr/share/gtk-doc/html/gudev/index.sgml

Expected results:
The transaction check should detect the file conflict and not proceed with the installation.

Additional info:
yum detects the conflict like this:

Running transaction check
Running transaction test


Transaction check error:
  file /usr/share/gtk-doc/html/gudev/annotation-glossary.html conflicts between attempted installs of libgudev1-devel-208-2.fc20.x86_64 and libgudev1-devel-208-2.fc20.i686
  file /usr/share/gtk-doc/html/gudev/index.sgml conflicts between attempted installs of libgudev1-devel-208-2.fc20.x86_64 and libgudev1-devel-208-2.fc20.i686
Comment 1 Ales Kozumplik 2013-10-10 05:16:40 EDT
Hello, thanks for the report. It's odd, will take a look.
Comment 2 Ales Kozumplik 2013-10-10 08:22:38 EDT
Fixed by fa2c5cf, will be included in dnf-0.4.4.
Comment 3 Michal Schmidt 2013-10-10 08:32:04 EDT
I applied the one-liner from
  https://github.com/akozumpl/dnf/commit/fa2c5cfe3a4c98a6a0f3cbf9909058d52332c505
manually to:
  /usr/lib/python2.7/site-packages/dnf/yum/base.py 

I confirm it fixes the bug for me. dnf now says:

Running transaction check
Transaction check succeeded.
Running transaction test
Transaction check error:
  file /usr/share/gtk-doc/html/gudev/annotation-glossary.html conflicts between attempted installs of libgudev1-devel-208-2.fc20.i686 and libgudev1-devel-208-2.fc20.x86_64
  file /usr/share/gtk-doc/html/gudev/index.sgml conflicts between attempted installs of libgudev1-devel-208-2.fc20.i686 and libgudev1-devel-208-2.fc20.x86_64


I am amazed at how quickly the dnf/librepo bugs I report are getting fixed. Keep up the good work!
Comment 4 Fedora Update System 2013-10-14 12:27:01 EDT
dnf-0.4.4-1.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/dnf-0.4.4-1.fc20
Comment 5 Fedora Update System 2013-10-14 15:19:01 EDT
Package dnf-0.4.4-1.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing dnf-0.4.4-1.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-19064/dnf-0.4.4-1.fc20
then log in and leave karma (feedback).
Comment 6 Fedora Update System 2013-11-10 01:59:26 EST
dnf-0.4.4-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

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