MySQL RoundTable

Registered by Robbie Williamson on 2012-03-30

A round table discussion around MySQL in Ubuntu.

Blueprint information

Status:
Not started
Approver:
Antonio Rosales
Priority:
Low
Drafter:
None
Direction:
Approved
Assignee:
Clint Byrum
Definition:
Review
Series goal:
Accepted for quantal
Implementation:
Informational Informational
Milestone target:
milestone icon ubuntu-12.10

Related branches

Sprints

Whiteboard

[ No formal spec, just a place to gather MySQL related work items for this cycle ]

Background:

Historical approach to security updates in Debian and Ubuntu: minimal, well understood change....

Now - no full disclosure of security vulnerabilies
    - Shipping the latest patch release for provide security support in Ubuntu and Debian
    - NEWS added to let users know about this approach and inform about incompatible changes.

Discussion:

1) MySQL should remain in Ubuntu and Debian going forward - and will not be replaced by one of the alternatives.
2) How do we ensure that all derivatives work well in Ubuntu and Debian

\o/ USER CHOICE \o/

Upstream MySQL focus is still on making mysql #1 open source database

What is the status of MariaDB packaging and whats the upstream appetite for entry into Debian and Ubuntu?
    - Upstream: interested!
    - seamless installs on everything aside from precise.
    - Target should be Debian first if possible - pkg-mysql team.

Percona server should be fairly easy to include as well.
    - Not a key part of upstream focus.

Packaging should "Provide: mysql-server" HOWEVER it needs to be a fully compatible alternative to MySQL. This should be feasible and has undergone testing with packages that require a mysql-server in the Ubuntu archive.

MySQL 5.6 (probably not 12.10 - > 13.04 more likely) may introduce incompatibilities that make the use of Provides: mysql-server not feasible - needs to be managed well across the derivatives with dropping of 'Provides' as required.

Long term objective: alignment on 5.6 features from all derivatives by 14.04 (two years) to allow use of 'Provides: mysql-server' across the board.

Quality of Debian packages from upstream?
  - some question over whether these are actually used
  - feedback from upstream - some users are making use of this.
  - should align more closely to packaging in Debian and Ubuntu.

PPA of current latest upstream release may help triage and diagnosis of bugs in Distro packaging.

5.1 support still required for the next 3 years (10.04 support).

ACTIONS:
[montyprogram] MariaDB and Percona packages submitted for review on Debian pkg-mysql mailing list
[SpamapS] Review MariaDB packages
[SpamapS] upload of MariaDB packages to Debian
[Oracle] Review of MySQL debian packaging that is currently avaliable upstream

==
Please keep the content in this whiteboard about *facts* to support *decisions* to be made about Ubuntu development for the immediate and future release cycles. Claims such as "all MySQL forks lag in currency, features, and in ability to provide support in maintenance" need to be backed up with factual evidence, or they will be deleted.

Items that are most interesting to me:
* Oracle's policies and commitments around supporting the community edition of MySQL
* Other organizations policies and commitments around derivatives/forks of MySQL
* Measurements and observations of actual responsiveness to community bug reports and inquiries by project participants.
* Regression potential in future enhancements that will be forced upon users by security non-disclosure policy.

-Clint
==

Oracle's MySQL Engineering team leads MySQL innovation as demonstrated by the MySQL 5.5 and 5.6 database products. In comparison, and despite the best efforts to keep pace, all MySQL forks lag in currency, features and in ability to provide support and maintenance. Key to this is Oracle's ownership of InnoDB, which remains the #1 storage engine in use by the MySQL Community and install base. In addition, while some related policies have changed, Oracle's MySQL support team remains staffed with MySQL Engineers who are committed and responsive to community reported bugs and code contributions. Oracle encourages bug reports and contributions from all user sources, and is committed to providing all bug fixes to the MySQL Community in binary and source formats at the same time they are released to commercial customers. It should also be mentioned that, while the intent of some Oracle MySQL support policies has been questioned, Oracle is very protective of all user security (to the point where exploit information is not published even after a bug fix is issued, to limit exposure to users who cannot immediately upgrade).

Oracle's MySQL Engineering and product team directive is to proactively focus on MySQL evolution and innovation. Important to this directive is that the MySQL database will remain fully functioning and open source and completely extensible under the GPL. We will do this because we, along with the Linux distributions, recognize the importance and value of developer mindshare to MySQL's dominance in the open source database market. Meanwhile, the forks are somewhat dependent on MySQL Engineering for evolution and/or innovation so they can build or merge their own code around or on top of the core functionality. Given the architectural refactoring that is currently underway with the MySQL kernel, this could prove challenging in the future and the MySQL Community is already aware of this. Please Note: http://www.dbasquare.com/2012/04/11/the-dawn-of-mysql-fork-database-vendors/

In addition, Linux distributions that decide to ship a forked version of MySQL will be asking their install base to be dependent on the fork for fixes, which will ultimately come from Oracle, or will force users to download and install MySQL from another source, which adds inconvenience on top of complexity to what is now a very smooth and easy distribution model. All Linux distributions should ship the most up to date, stable version of MySQL to serve their user base.

A few more discussion points:
- MySQL is the #1 deployed database for cloud and hosting use cases. It is the defacto standard for AWS DaaS services and HP recently announced its own cloud-based solution that will provide MySQL as the default platform:
    http://www.redorbit.com/news/technology/1112511208/hp-goes-after-amazon-with-new-cloud-services/
- MySQL 5.5 and 5.6 are architected to perform best on modern, commodity, multi-core/CPU systems that characterize cloud and hosting based infrastructures.
- The MySQL 5.6 Community Server includes
-- Replication GTIDS that enable easy failover between a failed master and most up to date or user defined slave. Because this is implemented in the MySQL kernel, no complex third-party components are needed.
-- HA utilities that use the 5.6 GTIDS for auto detection of replication failure and enables auto self-healing failover. Written and delivered as easy to use Python scripts.
-- Online non-blocking index, table operations which help with HA and continuous uptime. Again, part of the MySQL kernel, no complex third-party components are needed.

Final comments:
- MariaDB 5.3 GA is based on MySQL 5.1 - MySQL 5.5 was released in Dec, 2010 and is technically superior to MySQL 5.1, specifically on modern, multi-core/CPU systems. Oracle provides public benchmarks that show the technical superiority of MySQL 5.5 vs MySQL 5.1 for sysbench Read Only and Read/Write workloads.
- MariaDB 5.5 finally went GA on April 11, 2012 and is based on MySQL 5.5 which went GA on Dec 15, 2010. Oracle just released the MySQL 5.6.5 development milestone release and is well on its way to delivering MySQL 5.6 GA.
- MySQL 5.6 includes many performance/scale enhancements that will be backported to an upcoming 5.5 maintenance release. See Mikael Ronstrom's blog on this: http://mikaelronstrom.blogspot.com/2012/04/mysql-team-increases-scalability-by-50.html

(?)

Work Items

Work items:
[ccharles] MariaDB packages submitted for review on Debian pkg-mysql mailing list: TODO
Percona packages submitted for review on Debian pkg-mysql mailing list: TODO
[clint-fewbar] Review MariaDB packages: TODO
[clint-fewbar] upload of MariaDB packages to Debian: TODO
[nryeng] Review of MySQL debian packaging that is currently avaliable upstream: TODO
[nryeng] Package mysql utilities: TODO
[ccharles] Reach out to percona to package XtraBackup and percona toolkit for quantal/Debian: TODO