MariaDB replacing MySQL [was Re: Should MariaDB touch my.cnf in %post?]

Honza Horak hhorak at redhat.com
Tue Mar 5 18:14:25 UTC 2013


On 03/05/2013 11:07 AM, Norvald H. Ryeng wrote:
> On Thu, 14 Feb 2013 16:17:00 +0100, Tom Lane <tgl at redhat.com> wrote:
>> The way this worked in the past (and still does on RHEL and some other
>> distros) is that MySQL AB provided RPMs named "MySQL", "MySQL-server",
>> etc, which simply conflicted with the Red Hat-supplied packages named
>> "mysql", "mysql-server", etc.  Perhaps it would be best to continue that
>> naming tradition, ie establish a new Oracle-maintained Fedora package
>> named "MySQL", instead of figuring out how to transition maintainership
>> of the "mysql" packages.  This would give us some more wiggle room about
>> managing the transition --- in particular, it's hard to see how we
>> manage Obsoletes/Provides linkages in any sane fashion if the "mysql"
>> package name continues in use.  I think we're going to have to end up
>> with a design in which "mysql" becomes essentially a virtual Provides
>> name.
>
> We now have a set of working 5.6.10 packages. The packages pass mtr
> tests and we've tested some of the packages that depend on MySQL (php,
> perl-DBD-MySQL, etc.). It all seems to be working well, so I think we're
> ready to get it into rawhide. I believe Bjørn Munch has already
> contacted you about how to upload, etc.

I'm glad to hear that things get move on with MySQL-5.6 effort.

> We've kept the existing package names. I don't understand the reasons
> behind the name change you suggest. Honza Horák has added a real-mysql
> virtual provides, and this is provided by the existing mysql and mariadb
> packages, so it seems the infrastructure you suggest is already in
> place. Our 5.6.10 packages are just an upgrade of the existing mysql
> packages, so I see no need for a name change, and a change now would
> break upgrades for users that already have the mysql packages installed.

We're still going to make mariadb the default in F19 as proposed in the 
Feature page. Since depended packages are now built against 
libmysqlclient.so from mariadb, we should really ensure mariadb package 
will be installed (if not explicitly requested otherwise by users), 
because MySQL lacks some client side features that mariadb adds -- so 
keeping MySQL installed would introduce potential compatibility problems.

About the issues with the current way how the things are handling -- we 
introduced real-mysql virtual provides to distinguish between mysql 
package and mysql virtual name -- that doesn't work well in all aspects, 
it is not very clean and it also brings ambiguities.

We decided to solve that as proposed above -- to introduce a new package 
MySQL (dist-git already done) where original MySQL project will be kept 
and eventually upgraded to 5.6 by contributors from Oracle.

Package mysql will be retired as of F19 and the name "mysql" will exist 
only as a virtual provide for compatibility reasons. mariadb will 
provide "mysql" names, while MySQL won't -- ideally both packages could 
provide it but RPM cannot define a priority for preferring one of two 
packages that provide the same symbol. Is that right, Jan or Ales? Or 
anything changed in that field?

So, the current plan with a new MySQL package will result in much more 
cleaner solution and should avoid ambiguities.

Regards,
Honza

Note: In case there are some reactions, I'd like to excuse myself that 
I'll be off-line for a few days now and won't be able to respond until 
Monday.



More information about the devel mailing list