Bug 1494910 - package mariadb-libs-3:10.2.8-2.fc28.x86_64 requires mariadb-common(x86-64) = 3:10.2.8-2.fc28, but none of the providers can be installed
Summary: package mariadb-libs-3:10.2.8-2.fc28.x86_64 requires mariadb-common(x86-64) =...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: mariadb
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Michal Schorm
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-09-24 05:23 UTC by Mikhail
Modified: 2018-10-29 11:23 UTC (History)
9 users (show)

Fixed In Version: mariadb-10.2.9-3.fc27
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-10-10 19:29:57 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Mikhail 2017-09-24 05:23:19 UTC
Description of problem:

# dnf update
Last metadata expiration check: 1:48:31 ago on Sun 24 Sep 2017 08:33:42 AM +05.
Dependencies resolved.

 Problem 1: cannot install both mariadb-common-3:10.2.8-4.fc28.x86_64 and mariadb-common-3:10.2.8-2.fc28.x86_64
  - package mariadb-libs-3:10.2.8-2.fc28.x86_64 requires mariadb-common(x86-64) = 3:10.2.8-2.fc28, but none of the providers can be installed
  - cannot install the best update candidate for package mariadb-common-3:10.2.8-2.fc28.x86_64
  - problem with installed package mariadb-libs-3:10.2.8-2.fc28.x86_64
 Problem 2: cannot install both mariadb-common-3:10.2.8-4.fc28.x86_64 and mariadb-common-3:10.2.8-2.fc28.x86_64
  - package mariadb-libs-3:10.2.8-2.fc28.x86_64 requires mariadb-common(x86-64) = 3:10.2.8-2.fc28, but none of the providers can be installed
  - package mariadb-3:10.2.8-4.fc28.x86_64 requires mariadb-common(x86-64) = 3:10.2.8-4.fc28, but none of the providers can be installed
  - cannot install the best update candidate for package mariadb-libs-3:10.2.8-2.fc28.x86_64
  - cannot install the best update candidate for package mariadb-3:10.2.8-2.fc28.x86_64
===============================================================================
 Package              Arch         Version                 Repository     Size
===============================================================================
Skipping packages with conflicts:
(add '--best --allowerasing' to command line to force their upgrade):
 mariadb-common       x86_64       3:10.2.8-4.fc28         rawhide        54 k
Skipping packages with broken dependencies:
 mariadb              x86_64       3:10.2.8-4.fc28         rawhide       6.7 M

Transaction Summary
===============================================================================
Skip  2 Packages

Nothing to do.
Complete!

Comment 1 Michal Schorm 2017-09-25 12:17:57 UTC
Thanks for report,

This is caused by a chnage in MariaDB packaging by me.
I stopped builidng mariadb client library part in the "mariadb" package, which means - for example - that "mariadb-libs" are build no more.

The exact same functionality is now provided by package called "mariadb-connector-c"

There is a tracker for the change: https://bugzilla.redhat.com/show_bug.cgi?id=1486480

---

I'll look more into this issue.
It will be probabbly needed to set some "Obsoletes:" tags around those packages in order to "DNF update" them smoothly.

Comment 2 Pavel Raiskup 2017-09-25 12:45:49 UTC
Then, if mariadb-connector-c provides the mariadb-libs functionality, the new
package should have 'mariadb-libs' artificial provide to have clean upgrade
path.

Comment 4 Michal Schorm 2017-09-25 13:15:12 UTC
Thanks Pavel!

So it will be something like this:


# Provides mariadb-libs for DNF to make update smoothly
# this provides should be removed in >=F29
%if 0%{?fedora} >= 29
#macros can't use '<=', only '>='
%else
%if 0%{?__isa_bits} == 64
Provides: mariadb-libs%{?_isa} = 3:10.2.8-4.fc28
Provides: mysql-libs%{?_isa} = 3:10.2.8-4.fc28
Obsoletes: mariadb-libs%{?_isa} <= 3:10.2.8-3.fc28
Obsoletes: mysql-libs%{?_isa} <= 3:10.2.8-3.fc28
%else
Provides: mariadb-libs = 3:10.2.8-4.fc28
Provides: mysql-libs = 3:10.2.8-4.fc28
Obsoletes: mariadb-libs <= 3:10.2.8-3.fc28
Obsoletes: mysql-libs <= 3:10.2.8-3.fc28
%endif # isa_bits
%endif # f29


---

Can you please review it, Honza? (or Pavel, of course)
( Builds fine: https://koji.fedoraproject.org/koji/taskinfo?taskID=22073033 )

Comment 5 Pavel Raiskup 2017-09-25 14:05:54 UTC
I'm not sure, but the "%if %_isa" dance shouldn't be needed, just use %_isa..
Also I don't think the expanded %release is necessary, simply use the version
like 3:10.2.8

Comment 6 Pavel Raiskup 2017-09-25 14:06:34 UTC
Sorry, release is needed -- just don't expand the %dist macro.

Comment 7 Michal Schorm 2017-09-26 11:26:45 UTC
Ok, after short discussion:

Provides: mariadb-libs = 3:10.2.8-4
Provides: mysql-libs = 3:10.2.8-4
Obsoletes: mariadb-libs <= 3:10.2.8-3
Obsoletes: mysql-libs <= 3:10.2.8-3

---

* The ".fc28" shouldn't be there
* The "isa" stuff shouldn't be needed
* The Provides / Obsoletes should be in all Fedoras

---

However, I think better approchach would be to deal with this issue directly in MariaDB package - which I am doing now.

%if %{without clibrary}
Obsoletes: %{name}-libs%{?_isa} <= %{sameevr}
%endif

Comment 8 Michal Schorm 2017-10-04 16:42:01 UTC
This issue should be solved by the latest update in rawhide.

It may be needed to use "--allowerasing" dnf option.

Please test it and let me know.

Comment 9 Fedora Update System 2017-10-06 08:03:29 UTC
mariadb-10.2.9-3.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2017-dff1218bfa

Comment 10 Pavel Raiskup 2017-10-06 10:14:01 UTC
(In reply to Michal Schorm from comment #7)
> Ok, after short discussion:
> 
> Provides: mariadb-libs = 3:10.2.8-4
> Provides: mysql-libs = 3:10.2.8-4
> Obsoletes: mariadb-libs <= 3:10.2.8-3
> Obsoletes: mysql-libs <= 3:10.2.8-3

Semes to be fine.

> %if %{without clibrary}
> Obsoletes: %{name}-libs%{?_isa} <= %{sameevr}
> %endif

I did not read that far in comment #7 last time and reading now -- but this
seems to be wrong (no point in using %_isa).  Duplicate bug 1498956.

Comment 11 Fedora Update System 2017-10-06 22:26:22 UTC
mariadb-10.2.9-3.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-dff1218bfa

Comment 12 Fedora Update System 2017-10-10 19:29:57 UTC
mariadb-10.2.9-3.fc27 has been pushed to the Fedora 27 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.