Bug 1282956 - mariadb-server: mysql-server provide in rhel7
mariadb-server: mysql-server provide in rhel7
Status: CLOSED WONTFIX
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: mariadb (Show other bugs)
7.3
Unspecified Linux
unspecified Severity unspecified
: rc
: ---
Assigned To: Jakub Dorňák
qe-baseos-daemons
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2015-11-17 16:59 EST by Denis Fateyev
Modified: 2015-11-18 04:23 EST (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-11-18 04:23:30 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 Denis Fateyev 2015-11-17 16:59:48 EST
Description of problem:
----------------------
Currently "mariadb-server" in rhel7 doesn't provide "mysql-server" which sometimes leads to weird behaviour if a third-party package has a "Require: mysql-server" line.

For example: https://kojipkgs.fedoraproject.org//work/tasks/6493/11886493/root.log
DEBUG util.py:393:  Error: No Package found for mysql-server
DEBUG util.py:515:  Child return code was: 1

Unlike f22, f23, rawhide which all have "mysql-server" provision and work with the same package just fine: https://kojipkgs.fedoraproject.org//work/tasks/6102/11886102/root.log


Details:
--------
The difference is that Fedora obsoletes & provides mysql-server, this is the expected behaviour:

%package          server
...
%if %{with mysql_names}
Provides:         mysql-server = %{sameevr}
Provides:         mysql-server%{?_isa} = %{sameevr}
Provides:         mysql-compat-server = %{sameevr}
Provides:         mysql-compat-server%{?_isa} = %{sameevr}
%endif
%{?obsoleted_mysql_case_evr:Obsoletes: MySQL-server < %{obsoleted_mysql_case_evr}}
%{?with_conflicts:Conflicts:        community-mysql-server}
%{?with_conflicts:Conflicts:        mariadb-galera-server}
%{?obsoleted_mysql_evr:Obsoletes: mysql-server < %{obsoleted_mysql_evr}}


Spec in RHEL7 only obsoletes without provide:

%package server
...
Provides: mysql-compat-server = %{epoch}:%{version}-%{release}
Provides: mysql-compat-server%{?_isa} = %{epoch}:%{version}-%{release}
Obsoletes: mysql-server < %{obsoleted_mysql_evr}

Summary:
--------
Of course, it's possible to use "mysql-compat-server" in all cases and it will work. But I doubt that this difference between Fedora and RHEL branches in such popular package is the desired strategy.
Comment 2 Honza Horak 2015-11-18 04:23:30 EST
(In reply to Denis Fateyev from comment #0)
> Of course, it's possible to use "mysql-compat-server" in all cases and it
> will work. But I doubt that this difference between Fedora and RHEL branches
> in such popular package is the desired strategy.

To be honest it was desired this way. We consulted this topic during RHEL-7 development and decided not to provide mysql-server for mariadb packages, because users must be clear what to use.

Now, with MariaDB 10.x less compatible with MySQL it seems to be the way also in Fedora (i.e. we should remove mysql-server provide for mariadb-server, since it's not 100% compatible any more and it was more meant to overcome transition period). I'm sorry for troubles.

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