Details
-
Type:
Task
-
Status: Stalled
-
Priority:
Critical
-
Resolution: Unresolved
-
Fix Version/s: 10.1
-
Component/s: Packaging, Platform Debian
Description
== Motivation ==
Merge downstream .deb-packaging into upstream MariaDB to unify, streamline and ease future release packaging. This will also fix some packaging errors in current MariaDB.org deb-packages.
== Patch description ==
List of notable changes:
- Completely new Debian packaging standard (3.0 quilt) including rules file, patch conventions and .files -> .install file listing conventions
- The will no longer be a debian/dist subfolder and the packaging of Debian an Ubuntu will be unified (= Debian will ship with AppArmor files included)
- Support for Debian releases before Wheezy (7) and Ubuntu releases before Precise (12.04) will be dropped
The upstream MariaDB contents of debian/* will not be fully identical to the downstream Debian/Ubuntu one.
List of intended differences between Debian master and MariaDB master regarding debian/ contents:
- control file: maintainer, uploaders, VCS and browser links
- omitted packages (not allowed in Debian): libmariadbclient18, libmysqlclient18, libmariadbclient-dev, mysql-common
- omitted plugins (problematic in Debian): Handler socket, TokuDB, Mroonga, Cassandra
- keep autobake.sh in mariadb.org repo
To close this bug please:
1) Merge selected parts of debian/* from https://anonscm.debian.org/gitweb/?p=pkg-mysql/mariadb-10.0.git to https://github.com/MariaDB/server via pull requests arriving from branch ok-debpkg at https://github.com/ottok/mariadb
2) Backport form MariaDB development head to 10.1, 10.0 and maybe even 5.5 commits that fix individual issues.
== Quality assurance ==
The new debian/* contents represents the state of the art of Debian packaging. The mariadb-5.5 and mariadb-10.0 has passed all Debian quality assurance and landed in the official Debian repositories. More details at https://wiki.debian.org/Teams/MySQL/MariaDB
These same packages have also gone downstream to Ubuntu, has passed Ubuntu QA and are included since the Ubuntu 14.04 release.
Buildbot test for ok-debpkg branch: https://buildbot.askmonty.org/buildbot/grid?branch=ok-debpkg&category=main
== Roll-out planning ==
This merge should be safe to release with 10.1. All new installs and upgrades using the MariaDB.org repo or mixing it with official Debian or Ubuntu repository contents is expected to work.
Below are the different scenarios how releasing the new packging at MariaDB.org will affect current installs/upgrades:
A) If users currently have a MariaDB.org repo enabled, those packages will have a + in their version number. Debian package manager will always consider e.g. 10.1.6+maria as more recent than 10.1.6 from the native repositories. Therefore people having MariaDB.org repositories will always get primarly the packages from MariaDB.org repositories. It is very unlikely that a Debian repository would ever have a more recent release than in MariaDB.org (e.g. 10.1.7 would override 10.1.6+maria, but that is not likely to take place as MariaDB.org always releases first).
B) The new packaging is designed and tested that it allows seamless upgrades from old deb packaging generation to new generation. Whether the new packaging is from MariaDB.org or distro repositories does not matter.
C) Backwards works only partially, but is a rare case (e.g. current Ubuntu users trying to upgrade from new style debs 10.0 to MariaDB.org repo old style debs 10.0 will see issues, e.g. MDEV-5977). As soon as this merge is done and MariaDB.org publishes packages using the new packaging this corner case is fixed.
D) If users remove the MariaDB.org from their install, they will automatically have their 10.1.6+maria updated to Debian/Ubuntu native 5.5.39 once it is released in Debian.
E) Like previously, upgrading from MySQL 5.5 to MariaDB 5.5 works seamlessly and backwards also. Updating from MariaDB 5.5 to 10.0 works seamlessly but backwards will have issues (downgrade flag, InnoDB log size mismatch etc) the package manager will not solve automatically. If users dump and import data manually, and in between completely purge and install the packages, then users can always migrate to whatever version.
Gliffy Diagrams
Attachments
Issue Links
- blocks
-
MDEV-8375 Debian: Passwordless mysqld root login via socket auth bugfixing
-
- Open
-
-
MDEV-8667 Upgrade from 10.0 to 10.1 on Vivid does not work with normal source list
-
- Open
-
-
MDEV-5725 libmysqld* is not packaged in debs
-
- Open
-
-
MDEV-6326 Upgrade from Ubuntu's MariaDB 5.5.37 to MariaDB's 5.5.38 does not work
-
- Open
-
-
MDEV-6342 build failure on ubuntu
-
- Open
-
-
MDEV-8462 Unable to upgrade to latest version
-
- Open
-
-
MDEV-8497 Buildbot upgrade tests fail on Vivid, Sid
-
- Open
-
-
MDEV-5484 Include new debian/copyright file in upstream sources
-
- Open
-
-
MDEV-6135 Extra shared libs (dialog.so and mysql_clear_password.so) should be in same directory as libmysqlclient.so
-
- Open
-
-
MDEV-6542 debian binary server packages depend on client library
-
- Open
-
-
MDEV-7664 Multi-Arch support for Debian packages
-
- Open
-
-
MDEV-8459 Debian: add support to virtual-mysql-server-core virtual package
-
- In Progress
-
-
MDEV-5977 MariaDB 10.0 is not installable on Trusty when "trusty-updates universe" is in sources.list
-
- Closed
-
-
MDEV-6550 Missing dependency on Debian 7 (Wheezy) installation package
-
- Closed
-
-
MDEV-4537 innotop tracker
-
- Open
-
-
MDEV-8509 make it possible to change MYSQLD_STARTUP_TIMEOUT on Debian systems
-
- Open
-
-
MDEV-3809 Change Debian packaging to use CPack instead of bakery
-
- In Progress
-
- includes
-
MDEV-5252 Deb installation issues due to version mismatch between mariadb and ubuntu/debian repositories
-
- Open
-
-
MDEV-5957 mysqld_safe errors are lost when executed from the init script and additional arguments are not passed in case of a "restart" on Debian
-
- Open
-
-
MDEV-6342 build failure on ubuntu
-
- Open
-
-
MDEV-5295 deb upgrade 5.5 to 10.0 does not work
-
- Stalled
-
- links to
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
Ubuntu 14.04 packages (MariaDB 5.5.37) contain libmysqld., but both libmysqld.so and libmysqld.a are in 'libmariadbd-dev' package while in RPM (for example CentOS 6) libmysqld.a is in MariaDB-devel package and libmysqld.so* are in MariaDB-server package.
As a result everything that is build under Ubuntu 14.04 depends on 'libmariadbd-dev' (on development package!)
Are we going to merge this packaging ito MariaDB?