Having spent more than the last decade being the main point of contact for distributions shipping MySQL, then MariaDB Server, it's clear that working with distributions have many challenges. Licensing changes (when MySQL moved the client libraries from LGPL to GPL with a FOSS Exception), ABI changes, speed (or lack thereof) of distribution releases/freezes, supporting the software throughout the lifespan of the distribution, specific bugs due to platforms, and a lot more will be discussed in this talk. Let's not forget the politics. How do we decide "tiers" of importance for distributions? As a bonus, there will be a focus on how much effort it took to "replace" MySQL with MariaDB.
Benefits: if you're making a distribution, this is the point of view of the upstream package makers. Why are distribution statistics important to us? Do we monitor your bugs system or do you have a better escalation to us? How do we test to make sure things are going well before release. This and more will be spoken about.
As an upstream project (package), we love nothing more than being available everywhere. But time and energy goes into making this is so as there are quirks in every distribution.
Exploring the Future Potential of AI-Enabled Smartphone Processors
Distributions from the view a package
1. Distributions from the
view a package
Colin Charles, Team MariaDB, MariaDB Corporation
colin@mariadb.com / byte@bytebot.net
http://bytebot.net/blog/ | @bytebot on Twitter
FOSDEM, Brussels, Belgium
30 January 2016
2. whoami
• Work on MariaDB Server at MariaDB Corporation
(SkySQL Ab)
• Merged with Monty Program Ab, makers of
MariaDB Server
• Formerly MySQL AB (exit: Sun Microsystems)
• Past lives include Fedora Project (FESCO),
OpenOffice.org
• MySQL Community Contributor of theYear Award
winner 2014
2
4. The MySQL ecosystem
• MySQL: 21 years old —
May 1995
• Percona Server: 7 years
old — November 2008
• MariaDB: 6 years old —
February 2010
• WebScaleSQL: March
2014
• 1996: 3.19
• 2000: GPL MySQL Server
• 2001: 3.23 GA
• March 2003: 4.0 GA +
4.1 & 5.0 as alpha
• Shortly thereafter, the
dual-license arrives —
libmysql is GPL and not
LGPL like before
• March 2004: FOSS
License Exception
4
9. Speed of releases/
freezes
• Today, distributions follow a 6-9 month
release cycle
• Database software tends to follow a 9-24
month release cycle
9
10. Support
• Support has to exist for the lifetime of a
distribution
• e.g. RHEL 7 shipped MariaDB Server 5.5 on
10 June 2014 (5.5 GA: 11 April 2012, 10.0
GA: 31 March 2014)
• MariaDB Foundation promises each major
release to be supported for five years
10
12. Statistics
• Statistics are SPARSE
• Debian/Ubuntu have popcon
• Docker has the registry stats
• Juju has deployment stats
• Fedora, OpenSUSE, used to have stats….
12
13. Support Tiers
• Naturally we too have “tiers” of
distribution support, e.g. a bug in
Debian or Fedora is considered
more important than if it were in
GhostBSD
• Some distribution vendors have a
L3 relationship to ensure that
their bugs get fixed within 48
13
14. Platform specific issues
• TokuDB requires
libjemalloc, how does
this work on FreeBSD?
• OQGRAPH requires
libJudy, which isn’t
provided by many
distributions
• xtrabackup is known
to run on Linux/x86,
but on POWER8?
• What about having to
skip tests or seeing
segfaults on ARM?
(MDEV-9112)
• What about when
MariaDB Server asks
for gawk, iproute and
rsync?
14
15. Bugs
• We encourage regular communication with
packagers via the mailing list
• Some bugs systems CC us
• There is no “clear” dashboard
• Not all distributions bugs are reported
upstream (yes, we are upstream….)
15
16. We build our own
packages too!
• MySQL, Percona Server, and MariaDB
Server have their own apt/yum repositories
as well
• You may get additional things in our
packages, sometimes, e.g. storage engines,
plugins
16
17. How upstream can you
get?
• Debian (patches):
• MariaDB Server 5.5 (9), MariaDB Server 10.0
(15)
• MySQL 5.7 (8), 5.6 (9), 5.5 (15)
• Fedora (patches):
• MariaDB Server 10 (14), with several tests
skipped on ARM, S390 and base!
• 5.7 rawhide (Boost!), (25!), 5.6 (13)
17
19. Replacing MySQL with
MariaDB
• Journey started November 2010 (Michal
Hrušecký, openSUSE Build Service), by 2011
you were seeing it in the FreeBSD ports tree
• The journey became more complete when
we bagged openSUSE, SLES, Fedora, RHEL
(by virtue CentOS)…
• Hotly contested today for Debian (just read
the lists)
19
23. What does the future
hold?
• Its hard to say, isn’t it?
• New software moves too fast for
distributions (6 months is too long). Look
at Github. Speed vs. integration/trust/
maintenance (the work of a distributions)
— Mark Shuttleworth
23
24. A word from your sponsors
• MariaDB Corporation sponsored my T&E to
come to FOSDEM
• Remember you can buy a MariaDB Enterprise
subscription to help you with your cloud
deployments, MariaDB Server usage, etc.
• Services include: 24x7 support, consulting,
training, remote DBA services, non-recurring
engineering and more for all variants of MySQL