[debian-mysql] MariaDB packages sponsorship-request?

Otto Kekäläinen otto at fsfe.org
Tue Sep 24 12:29:44 UTC 2013


Hello,

I'm sending this to the list too in case somebody there wants to know
what changes are made and also the motivations get archived in mailing
archive.

2013/9/24 James Page <james.page at ubuntu.com>:
...
> Some initial feedback after review and testing on Debian Sid
>
> d/control:
>
> If this package is really going to be maintained by the MySQL
> maintainers team, I'd like to see the packaging hosted on
> git.debian.org, with appropriate updates to the Vcs-* field.  I can
> probably help set that up when Clint has granted me the right
> permissions on Alioth.

My request to get git.debian.org access has been denied, but if you
can set it up and mirror my GitHub it would be great. You can add the
Vcs-field when done.

> d/changelog:
>
> Squash all non-Debian and unreleased change log entries into a single
> entry please - they don't really add value.

Done.

> d/README.maintainer:
>
> I started reading this then quickly realized most of it was not
> actually relevant, please drop if appropriate.

Done.

> d/rules,d/control:
>
> Clint fixed up the requirement to still use gcc-4.4 on i386 in the
> main mysql packaging.
>
> Please could the same fix be applied into the mariadb-5.5 package as
> well; I'd like to not require gcc-4.4 from the outset for this package
> - - lets try to make the toolchain maintainers happy!

There has been lots of discussion regarding the dependencies and I've
gone back and forth dropping and reincluding stuff. Some of the
dependencies with motivations are listed at:
https://wiki.debian.org/Teams/MySQL/BuildDependencies

gcc-4.4 [any-i386] came as a suggestion from Nicholas. Do you have a
i386 machine around to quickly build and test if it is OK to build
without it?

> d/libmariadbclient18.lintian-overrides:
>
> libmariadbclient18: embedded-library
> usr/lib/x86_64-linux-gnu/libmariadbclient.so.18.0.0: libmysqlclient
> libmariadbclient18: ldconfig-symlink-missing-for-shlib
> usr/lib/x86_64-linux-gnu/libmysqlclient.so.18
> usr/lib/x86_64-linux-gnu/libmariadbclient.so.18.0.0 libmysqlclient.so.18
>
> Is this due to the renaming of the client library in the packaging
> causing a mismatch in the SONAME? Are you 100% sure that this is
> actually going to work for anyone who uses the mariadbclient lib
> packages?  If not I'd actually prefer we don't ship the client
> libraries in the first upload whilst we work with upstream to
> implement the library name change in full.

The rename-when-building is somewhat of a hack and in the intermediate
state debian/rules lines

override_dh_makeshlibs-arch:
dh_makeshlibs -V'libmariadbclient18 (>= 5.5.1-1)' -plibmariadbclient18

generate in the binary package a DEBIAN/shlibs file with contents:
libmysqlclient 18 libmariadbclient18 (>= 5.5.1-1)

..which is wrong but I haven't figured out a way to force the first
word to become "libmariadbclient".

However the library files themselves are corrent
(libmariadbclient.so.18 and 18.0.0) and these should work OK.
Libmariadbclient seem to have the enhancement that they support async
calls and are behind the performance of node-mariasql, a package I use
in an important project. But if you review my hack and think it is too
risky, we can drop the shared libs and add them later when upstream
has renamed them. Both I guess are motivated decisions.


> mariadb-test-5.5 conflicts with mysql-client-5.5:
>
> /usr/bin/mysql_client_test is in both of these packages; but
> mariadb-test-5.5 does not have the right Conflicts/Provides/Replaces.
>  I'd suggest moving this binary into the mariadb-client-5.5 package
> which does have the right dependencies declared mirroring the mysql-*
> layout.
>
> Note that I only hit this when directly installing the deb's using
> dpkg; from an apt repository installing mariadb-test-5.5 works OK as
> its dependency on mariadb-client-5.5 forces the right actions.

Actually having these two installed at the same time makes no sense,
as they test the server and client binaries, which cannot be
co-installed. So I resolved this by adding breaks+replaces for the
test suites.

> Migration between mariadb and mysql:
>
> mysql -> mariadb worked OK
>
> mariadb -> mysql OK-ish - I had to manually resolve "apt-get install
> mysql-client-5.5 mysql-server".

What distro and series? Can you send me a log so I can look closer
into the situation?

In my testing everything worked OK.


Thanks for your feedback!

I've (git-)pushed my changes done today, but I haven't rebuilt or
resubmitted yet.


PS. Feel free to open merge requests for
https://github.com/ottok/pkg-mariadb if you play around with
debian/rules or other things and find small fixes that are obivious.
Or mirror to git.debian.org and do it there.



More information about the pkg-mysql-maint mailing list