MySQL and MariaDB in Fedora

Norvald Ryeng norvald.ryeng at oracle.com
Thu Apr 11 20:36:30 UTC 2013


----- hhorak at redhat.com wrote:

> On 04/10/2013 02:34 PM, Norvald Ryeng wrote:
> > ----- hhorak at redhat.com wrote:
> >
> >> On 04/05/2013 08:06 PM, Norvald Ryeng wrote:
> >>> ----- hhorak at redhat.com wrote:
> >>>
> >>>> On 03/21/2013 08:36 PM, Norvald Ryeng wrote:
> >>>>> What is the deadline for fixing the remaining issues with MySQL and
> >>>>> MariaDB in Fedora? We would like to find a solution and get 5.6 in
> >>>>> soon.
> >>>>
> >>>> Hi Norvald,
> >>>>
> >>>> I've just asked for creating component community-mysql, as discussed on
> >>>> fedora-devel above, the review is done already. As soon as it is built
> >>>> in koji I'm going to EOL MySQL component. So I'm expecting to be done in
> >>>> the beginning of the next week.
> >>>
> >>> I see you've bumped the epoch of the MariaDB packages to force
> >> MariaDB as default when both MySQL and MariaDB provide mysql-server.
> >> We've tested it, and it seems to do the trick.
> >>>
> >>> Could you rename the MySQL packages to mysql-community-* instead of
> >> community-mysql-*? That way the prefix aligns with the product name
> >> and OpenSuSE's prefix.
> >>
> >> I wanted to use that, but then found out that it wouldn't work. The
> >> problem is that it has the same prefix as virtual name "mysql", that is
> >> used as requirement in other packages. As a result, when somebody asked
> >> for "mysql" -- "mysql-community" would be preferred before mariadb,
> >> because according [1] rule #9 ("check the prefix of the pkg to the
> >> requiring pkg prefix (perl-foo and perl-lib) for each common character
> >>
> >> in the prefix add 2 points to the provider's score") would be
> >> applied.
> >>
> >> When we use the name "community-mysql" we don't have any same prefix, so
> >> the rule #10 is applied ("if, at this point, we have pkgs with an equal
> >> score - look at the version of the provide"), which means mariadb with
> >> higher epoch will be chosen.
> >
> > We've tested and found that if the MariaDB packages have a higher
> epoch number, they will be chosen even if the MySQL packages have a
> "mysql-community" prefix.
> 
> According to what I read in [1], mysql-community would be preferred 
> before mariadb because of common prefix, in case both packages will have 
> the same score from the previous rules.
> 
> I've tested that with a potential package mysqlfoo, which has the same
> 
> prefix as mysql-community, so if I ran:
> 
> $ yum update mysqlfoo
> 
> then mysql-community got higher score and was preferred before mariadb.
> 
> Maybe there are even more cases like that, so I'd rather stick with 
> community-mysql.
> 
> [1] http://yum.baseurl.org/wiki/CompareProviders

We've tested and retested. With versioned provides and epoch bump, MariaDB is preferred, regardless of the name of the MySQL packages. 

> >> Generally, I don't like either, that packages in openSUSE an Fedora
> >> won't have the same name, but openSUSE has a bit more powerful RPM spec
> >> to handle such things.
> >>
> >> [1] http://yum.baseurl.org/wiki/CompareProviders
> >>
> >>> How do we get push access to the git repo? It would be great to get
> >> 5.6 in before the test day on April 30.
> >>
> >> To get involved, just follow standard process as described on Fedora
> >> wiki:
> >> https://fedoraproject.org/wiki/Join_the_package_collection_maintainers
> >>
> >> However, I'd rather wait with 5.6 until F20 because of the following
> >> reasons:
> >> * we are almost a month after feature freeze
> >> * I believe users will have enough concerns with switching to MariaDB
> >> and MySQL-5.6 would bring others
> >> * better wait a bit longer to stabilize the new release than bring a
> >> quite important package too soon
> >
> > Introduction of MariaDB should not interfere with upgrading MySQL.
> If anything, choosing MariaDB as the default makes upgrading MySQL
> easier since it will only be installed when users explicitly ask for
> it.
> 
> Upgrades like this are usually considered as a Feature, which also 
> corresponds with Feature description at [2]. Therefore I'd rather wait
> 
> for F20.
> 
> [2] https://fedoraproject.org/wiki/Features/Policy/Definitions

Since MariaDB is now the default, I don't see how MySQL upgrades need a feature request by these definitions. If you look at the feature request history, there are only a few upgrade features. Most software is upgraded without a feature request. I couldn't find any feature requests for previous MySQL upgrades.

Regards,

Norvald H. Ryeng


More information about the devel mailing list