Bug 21827 - dnf tries to replace qtsoap-2.7-9.mga6.x86_64 with both lib64qtsoap2-2.7-10.mga7.x86_64 and libqtsoap2-2.7-10.mga7.i586
Summary: dnf tries to replace qtsoap-2.7-9.mga6.x86_64 with both lib64qtsoap2-2.7-10.m...
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 6
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: Neal Gompa
QA Contact:
URL: https://github.com/openSUSE/libsolv/c...
Whiteboard:
Keywords: UPSTREAM
Depends on: 21943
Blocks:
  Show dependency treegraph
 
Reported: 2017-10-10 10:15 CEST by Marja Van Waes
Modified: 2017-11-02 23:06 CET (History)
2 users (show)

See Also:
Source RPM: libsolv-0.6.29-1.mga7.src.rpm
CVE:
Status comment:


Attachments

Description Marja Van Waes 2017-10-10 10:15:19 CEST
When updating my system, DNF tries this:

Installing dependencies:
 lib64qtsoap2       x86_64       2.7-10.mga7        cauldron-x86_64        74 k
     replacing  qtsoap.x86_64 2.7-9.mga6
 libqtsoap2         i586         2.7-10.mga7        cauldron-i586          77 k
     replacing  qtsoap.x86_64 2.7-9.mga6

and fails

It would be nice if dnf would handle this like urpmi does:

[root@localhost marja]# LC_ALL=C urpmi --auto-update --test
medium "Core Release (RedHD21)" is up-to-date
medium "Nonfree Release (RedHD211)" is up-to-date
medium "Core 32bit Release (RedHD231)" is up-to-date
medium "Nonfree 32bit Release (RedHD236)" is up-to-date
To satisfy dependencies, the following package is going to be installed:
(test only, installation will not be actually done)
  Package                        Version      Release       Arch
(medium "Core Release (RedHD21)")
  lib64qtsoap2                   2.7          10.mga7       x86_64
3.9KB of disk space will be freed.
73KB of packages will be retrieved.
Proceed with the installation of one package? (Y/n) y


installing lib64qtsoap2-2.7-10.mga7.x86_64.rpm from /RedHD2/mageia/distrib/cauldron/x86_64/media/core/release
Preparing...                     #############################################################################################################
Installation is possible
[root@localhost marja]#

dnf debugdata can be found, here:

https://waesvanm.home.xs4all.nl/DNF/debugdata.tar.xz

<only for Neal>retrying with "XZ_OPT=-e9 tar cJf debugdata.tar.xz debugdata" after first gunzipping the files, gave a much better result: 6.7M instead of 12M ... pity that's still to large for our Bugzilla</only for Neal>
Marja Van Waes 2017-10-10 10:20:00 CEST

CC: mageiatools => rpmstack

Comment 1 Igor Gnatenko 2017-10-10 10:56:29 CEST
...
=Pkg: libqtsoap2 2.7 10.mga7 i586
...
+Obs:
qtsoap < 2.7-10
-Obs:

---

...
=Pkg: lib64qtsoap2 2.7 10.mga7 x86_64
...
+Obs:
qtsoap < 2.7-10
-Obs:

---

Two packages obsolete qtsoap but named differently. In that case, libsolv tries to install all of them. I would report this bug to https://github.com/openSUSE/libsolv and try to get some hint from @mls.
Comment 2 Neal Gompa 2017-10-10 11:34:12 CEST
@Igor, my suspicion is that this has to do with the fact that libsolv and DNF don't recognize this as multiarch versions of the same package, since they are differently named.

Unlike Fedora, where it's libfoo.arch, Mageia does %{_lib}foo.arch, which means the package name differs between 32-bit and 64-bit architectures.
Comment 3 Neal Gompa 2017-10-25 06:38:00 CEST
This is a libsolv issue, not a dnf one.

Source RPM: dnf-2.6.3-1.mga7 => libsolv-0.6.29-1.mga7.src.rpm

Neal Gompa 2017-10-25 15:00:37 CEST

Whiteboard: (none) => MGA6TOO

Comment 4 Neal Gompa 2017-10-25 15:05:35 CEST
After asking Michael Schroeder to look at this bug, he made a fix in libsolv for it: https://github.com/openSUSE/libsolv/commit/804a86ca950f7b7600db58f6ccf3fae4e374a9e3

testsolv indicates that the behavior is fixed, so libsolv-0.6.30 with the patch backported has been submitted to Cauldron.

This issue also afflicts Mageia 6, so if this is determined to be good, I'll backport libsolv-0.6.30 with fixes to Mageia 6 along with updated DNF stack.
Neal Gompa 2017-10-25 15:23:31 CEST

Keywords: (none) => UPSTREAM
URL: (none) => https://github.com/openSUSE/libsolv/commit/804a86ca950f7b7600db58f6ccf3fae4e374a9e3

Comment 5 Igor Gnatenko 2017-10-25 15:54:23 CEST
It is actually https://github.com/openSUSE/libsolv/commit/a7101c56ef86175b153404f56af0664246555c97 which fixed bug...
Comment 6 Neal Gompa 2017-10-25 15:55:54 CEST
Bah, you're right. I pasted the wrong link. :)

URL: https://github.com/openSUSE/libsolv/commit/804a86ca950f7b7600db58f6ccf3fae4e374a9e3 => https://github.com/openSUSE/libsolv/commit/a7101c56ef86175b153404f56af0664246555c97

Comment 7 Igor Gnatenko 2017-10-25 16:11:22 CEST
(In reply to Neal Gompa from comment #6)
> Bah, you're right. I pasted the wrong link. :)

Did you backport right patch then? ;)
Comment 8 Neal Gompa 2017-10-25 16:13:37 CEST
I think so!

http://svnweb.mageia.org/packages?view=revision&revision=1173640
Comment 9 Marja Van Waes 2017-10-25 23:28:19 CEST
Confirming it's fixed in Cauldron:

================================================================================
 Package            Arch         Version            Repository             Size
================================================================================
Installing dependencies:
 lib64qtsoap2       x86_64       2.7-10.mga7        cauldron-x86_64        74 k
     replacing  qtsoap.x86_64 2.7-9.mga6

Transaction Summary
================================================================================
Install  1 Package


Thanks Michael, Neal and Igor  :-)

Whiteboard: MGA6TOO => (none)
Version: Cauldron => 6

Neal Gompa 2017-10-26 19:19:16 CEST

Depends on: (none) => 21943

Comment 10 Neal Gompa 2017-11-02 23:06:34 CET
This is now rolled out to Mageia 6 as an update.

Resolution: (none) => FIXED
Status: NEW => RESOLVED


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