Skip to content
This repository has been archived by the owner on Sep 23, 2024. It is now read-only.

mariadb102 #138

Closed
KakersUK opened this issue May 24, 2017 · 18 comments
Closed

mariadb102 #138

KakersUK opened this issue May 24, 2017 · 18 comments

Comments

@KakersUK
Copy link

KakersUK commented May 24, 2017

What package do you want?

mairadb102u-server

Why?

Mariadb 10.2 was released yesterday (https://mariadb.com/resources/blog/whats-new-mariadb-server-102). In this release JSON functions have been added and this feature would be very
useful to me. RHEL 7 only has mariadb 5.5.52 and IUS only has 10.1.

OS versions

I would like this package for CentOS / RHEL 7.

Testing

I agree to test the new package to ensure that it works as expected.

@b-harper
Copy link
Contributor

Hey @KakersUK,

Thanks for taking the time to submit this issue. MariaDB 10.2 is on our radar and we are starting to researching it. That being said, we are not in a rush to get packages released. MariaDB is a big and complicated beast and we prefer take a slower approach.

@b-harper b-harper changed the title MariaDB 10.2 - mariadb102u mariadb102u May 25, 2017
@b-harper
Copy link
Contributor

@KakersUK,

I wanted to give you an update. We have not forgotten about this request and we are still in the processes of working out our initial SPEC file. While we do not have an ETA, I just wanted to let you know that that work is being done.

@oogali
Copy link

oogali commented Jan 26, 2018

@b-harper

This issue may not be the right place for discussion, but what's the process/policy for packages from vendors that already distribute their own RPM packages via their own repositories?

@b-harper
Copy link
Contributor

@oogali,

I agree that this issue is not the appropriate location for this question. Currently, we do not have a GitHub repository set up for general questions. I would recommend contacting coredev AT iuscommunity DOT org or join #ius on freenode.

@carlwgeorge carlwgeorge mentioned this issue Feb 1, 2018
@futureweb
Copy link

@b-harper,
may I kindly ask if there is an ETA yet?
Got some usecases for recursive Common Table Expression which come with 10.2.2 ;-)
thx, bye from Austria
Andreas Schnederle-Wagner

@carlwgeorge
Copy link
Member

carlwgeorge commented Feb 14, 2018

Short answer: we don't do ETAs. It will be ready when it's ready.

Long answer: it's complicated. We have been fortunate so far that MariaDB 5.5, 10.0, and 10.1 all provided libmysqlclient.so.18. This allowed us to easily swap stock packages for our packages and not cause issues for software that builds against that library. In 10.2 the library was renamed to libmariadb.so.3. Initially I thought this could make it possible to have mariadb102u-libs be parallel installable with stock mariadb-libs. I quickly realized that stock mariadb-libs contains more files than just the library. Our previous spec files (based on Fedora spec files) have those extra files moved to -config, -common, and -errmsg subpackages, which don't have stock equivalents. That impedance mismatch with the stock packages doesn't have a clear resolution. Those files have configure options to use alternate paths, which is fine for files like the authentication plugins, but not desirable for the main /etc/my.cnf file. Another possibility is re-implementing the solution we used for MySQL on EL5/EL6, which is to create a compatibility library package to combine with mariadb102u-libs to take the place of stock mariadb-libs. That approach proved to be confusing for users and was difficult for us to support, often requiring us to teach users how to use yum shell or yum replace to complete the installation.

IUS has a strong reputation in part because we don't rush important decisions like this. Please bear with us while we work through the possibilities to come up with the best possible solution.

@b-harper
Copy link
Contributor

I want to post some historical information regarding our compatibility library packages we created for EL5/EL6. Unfortunately, I am struggling to find single source that explains all the details. This bug is the closest I can find that goes into why we created the mysqlclient15 and mysqlclient16 packages. Note, the mysqlclient15 repository was created almost 10 years ago.

@temporaryaccount
Copy link

Long answer: it's complicated.

Is it known how exactly has MariaDB solved this issue in their official repository?

@carlwgeorge
Copy link
Member

They obsolete stock packages, which IUS explicitly does not allow.

@temporaryaccount

This comment has been minimized.

@Xon Xon mentioned this issue Oct 10, 2018
@i1tech

This comment has been minimized.

@carlwgeorge
Copy link
Member

I'm toying with an idea of having mariadb102-libs include both libmysqlclient and libmariadb to solve this. It will involve having both mariadb-10.2.x.tar.gz and mariadb-5.5.x.tar.gz (stock RHEL version) as RPM sources. I don't know if it will work, but stay tuned.

@minusf
Copy link

minusf commented Apr 12, 2019

currently the vendor repo MariaDB installs MariaDB-compat:

Name        : MariaDB-compat
Version     : 10.3.14
Release     : 1.el7.centos
...
/usr/lib64/libmysqlclient.so.15
/usr/lib64/libmysqlclient.so.15.0.0
/usr/lib64/libmysqlclient.so.16
/usr/lib64/libmysqlclient.so.16.0.0
/usr/lib64/libmysqlclient.so.18
/usr/lib64/libmysqlclient.so.18.0.0
/usr/lib64/libmysqlclient_r.so.15
/usr/lib64/libmysqlclient_r.so.15.0.0
/usr/lib64/libmysqlclient_r.so.16
/usr/lib64/libmysqlclient_r.so.16.0.0
/usr/lib64/libmysqlclient_r.so.18
/usr/lib64/libmysqlclient_r.so.18.0.0

wouldn't this solve this issue?

@carlwgeorge
Copy link
Member

@minusf See #138 (comment)

Another possibility is re-implementing the solution we used for MySQL on EL5/EL6, which is to create a compatibility library package to combine with mariadb102u-libs to take the place of stock mariadb-libs. That approach proved to be confusing for users and was difficult for us to support, often requiring us to teach users how to use yum shell or yum replace to complete the installation.

That approach works fine for MariaDB's repos because they have their compat package obsolete the stock mariadb-libs, which is against IUS policy.

$ repoquery --obsoletes MariaDB-compat
MySQL-OurDelta-shared
MySQL-shared
MySQL-shared-pro
MySQL-shared-pro-cert
MySQL-shared-pro-gpl
MySQL-shared-pro-gpl-cert
MySQL-shared-standard
mariadb-libs
mariadb-libs(x86-64)
mysql-libs
mysql-libs(x86-64)
mysql-shared

@carlwgeorge carlwgeorge changed the title mariadb102u mariadb102 May 5, 2019
@carlwgeorge
Copy link
Member

carlwgeorge commented May 5, 2019

I was able to sort out a solution where mariadb102-libs is parallel installable with stock mariadb-libs. More details can be found here.

Initial packages are now available. To test them out, you'll need to switch to the new IUS CDN and install them from the ius-testing repo.

I have covered common install/upgrade scenarios here. Please try these packages out and share your feedback.

@karljohns0n
Copy link

I've upgraded from 10.1 to 10.2 on a dev server, everything looks good but this server isn't in production. I will try later on other servers.

Thanks for the package!

@devhen
Copy link

devhen commented May 6, 2019

Awesome work @carlwgeorge!! I will try to find some boxes I can test this out on.

@carlwgeorge
Copy link
Member

Besides the positive feedback in this issue, I've gotten further confirmation from a DBA that this package is working as intended. I have moved the mariadb102 packages from testing to stable. Remember, this is only going to be on the IUS CDN, so if you don't see the packages available, update your ius-release package first.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants