Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
5.1.67, 5.2.14, 5.3.12, 5.5.34, 10.0.7
-
Debian/Ubuntu
Description
While packaging MariaDB for official Debian inclusion, one of the most invasive changes I made was to rename the shared library filenames in libmysqlclient.so & co to libmariadbclient.so.
The rationale (originally presented by Debian MySQL packagers team) was that as the MySQL and MariaDB libraries are not 100% identical, they should not have the same filename (or soname), otherwise there will be ungraceful failures when a software optimized for MariaDB is run in an environment with the non-MariaDB version of soname libmysqlclient.
In current official Debian packages (source at http://anonscm.debian.org/gitweb/?p=pkg-mysql/mariadb-5.5.git and -10.0.git) the packages libmariadbclient18 and libmysqlclient18 are co-installable and the filenames are not the same (libmariadbclient.so.18 and libmysqlclient.so.18).
It seems that the original MySQL version of libmysqlclient.so.18 can be used with the MariaDB client/server. Therefore software that link to libmysqlclient.so.18 will work just fine with MySQL libmysqlclient.so.18.so and MariaDB server/client. Also if any software was to link to libmariadbclient.so.18 if would work via MariaDB libmysqlclient.so.18.so and MariaDB server/client just fine.
I didn't spot a libmariadbclient.a, only a libmariadb.a.
Here are the file listings of the binary packages as created from the mariadb-client-lgpl source package in Debian:
https://packages.debian.org/sid/amd64/libmariadb2/filelist
https://packages.debian.org/sid/amd64/libmariadb-client-lgpl-dev-compat/filelist
https://packages.debian.org/sid/amd64/libmariadb-client-lgpl-dev/filelist
georgrichter Is there a documentation somewhere that lists the symbols of the LGPL library vs. old libmysqlclient18.so? Or something else where we can read up on what the status of the new LGPL library is and what features are still missing so that it would be on par with the old library?