The MariaDB project is pleased to announce the immediate availability of MariaDB 10.0.6. This is a Beta release. See the Release Notes and Changelog for detailed information on this release and the What is MariaDB 10.0? page in the AskMonty Knowledgebase for general information about the MariaDB 10.0 series.

Download MariaDB 10.0.6

Release Notes Changelog What is MariaDB 10.0?

Also see MariaDB 10.0 Beta launched – an important milestone.

Upcoming MariaDB Webinar

SkySQL will be hosting a webinar with Colin Charles, the chief evangelist of MariaDB. He will go through the features of MariaDB 10.0. It will be held on Thursday November 21 at 11:00 CET:

More info at: http://www.skysql.com/why-skysql/webinars/mariadb-100-overview

Ivan Zoratti, CTO of SkySQL also recently recorded a couple of additional webinars that you may find interesting:

Thanks, and enjoy MariaDB!

The MariaDB project is pleased to announce the immediate availability of MariaDB 10.0.3. This is an alpha release. See the release notes and changelog for details.

Download MariaDB 10.0.3

Release Notes Changelog What is MariaDB 10.0?

APT and YUM Repository Configuration Generator

About this Release

MariaDB 10.0 is the development version of MariaDB. It is built on the MariaDB 5.5 series with backported and reimplemented features from MySQL 5.6 and entirely new features not found anywhere else.

This is the fourth release in the MariaDB 10.0 series. We are releasing it now to get it into the hands of any who might want to test it. Not all features planned for this series are included in this release. Additional features will be pushed in future releases. See the release notes and changelog for details on what is new in this release.

Do not use alpha releases on production systems.

User Feedback plugin

MariaDB includes a User Feedback plugin. This plugin is disabled by default. If enabled, it submits basic, completely anonymous MariaDB usage information. This information is used by the developers to track trends in MariaDB usage to better guide development efforts.

If you would like to help make MariaDB better, please add “feedback=ON” to your my.cnf (my.ini on Windows) file!

See the User Feedback Plugin page for more information.

Quality

The project always strives for quality, but in reality, nothing is
perfect. Please take time to report any issues you encounter at:

http://mariadb.org/jira

We hope you enjoy MariaDB!

In May of last year I blogged about MariaDB 10.0 for the first time. We received some feedback, digested it, and I further explained MariaDB 10.0. Now, with the first Alpha of MariaDB 10.0 out and a new year just beginning, now is a good time to explain a little bit more, especially about MariaDB 10.0 and MySQL 5.6 as I and others in the MariaDB project get asked a lot about the differences between them.

First, here are some details as to why we didn’t just take MySQL 5.6 as a base and create something that would have been called MariaDB 5.6. These details haven’t been widely shared before:

  1. The file structure of the codebase in MySQL 5.6 has changed. Single code files have been split into several and code has been moved around from one file to another. To merge MariaDB with this new file structure would be a very time consuming job. Why the file structure changed on the MySQL side is something that I don’t know the answer to.
  2. MariaDB 5.5 contains a large amount of code differences from MySQL 5.5 and includes many features that are only now being introduced in MySQL 5.6. In these cases the MySQL and MariaDB versions of the same functionality are compared and both design and QA reviews are done. Obviously, the one that scores better will be in MariaDB. In most cases the decision has been to use the MariaDB version of the feature.
  3. All new code (at least bug fixes) in MySQL does not necessarily have a corresponding test case anymore. When you merge such functionality into other code which differs from the code where the functionality originally resided, test cases are extremely important for evaluating that the functionality works as expected.

Very much in line with the second and third argument above, Stewart Smith from Percona wrote yesterday about the latest security fix in MySQL introducing a regression and how the QA work done in the MariaDB project and the importance of test cases saved him from placing the regression in Percona Server.

MariaDB is not only about being an alternative to MySQL. MariaDB is largely about innovating and improving MySQL technology. MySQL 5.6 was not a suitable base for innovation, so the following happened:

  1. We needed to introduce a new version since we are already in the process of introducing new features like multi-source replication, Cassandra integration, engine independent statistics and many more. Whenever you introduce new features you typically advance to a new major version.
  2. It would have been wrong to call next version “MariaDB 5.6″, because it’s not based on MySQL 5.6. Instead we decided to jump to 10.0.
  3. We know MariaDB needs to implement many of the features introduced in MySQL 5.6 to be a viable alternative to MySQL 5.6 and we have taken a stepped approach in merging or recreating features from MySQL 5.6.

The first major version, MariaDB 10.0 will, for example, include the merged InnoDB, merged Performance Schema, and a new implementation of Global Transaction ID. MariaDB 10.0 is targeted to be GA in the summer.

Our goal with the stepped approach is to eventually have all features of MySQL 5.6 either merged or re-implemented. All re-implemented features will be made compatible with their MySQL versions. In the end, MariaDB 10 should be fully feature compatible with MySQL 5.6 and, of course, on top of that include many extra MariaDB-only features.

The decision to re-implement functionality is very simple. We re-implement if a given implementation in MySQL 5.6 lacks something from our or the users’ point of view. A decision to re-implement is not made in an “I would like to do this”-manner, nor is it influenced by a “not-invented-here” syndrome. Each case is truly evaluated and extensively discussed. You can participate in these discussions and get your voice heard by joining the mailing list maria-developers@lists.launchpad.net at https://launchpad.net/~maria-developers.

Could another route have been chosen? Yes. We could have pulled in the latest version of MySQL 5.6 as a base for a version called MariaDB 5.6 and started patching. It should be kept in mind that MariaDB isn’t a bordered set of patches. Although MariaDB has MySQL as a basis there is a huge amount of engineering on top of it. The MariaDB engineers and QA are working full time on making MySQL technology better inside MariaDB.

There was also another possibility — to become a true fork, stop merging from MySQL, and break compatibility. But we didn’t want to take that path — we and MariaDB users in general do value much of the functionality introduced in MySQL and want it included in MariaDB.

MariaDB 5.5 has been a key part of MariaDB’s increasing popularity and we’re still riding upwards on that wave. More downloads every week, more distributions adopting MariaDB, and more big use cases.

Inside the MariaDB project we’re carefully handling a balancing act of being as easy an alternative to MySQL as possible while also introducing much-needed innovation, and keeping it all realistic as well. Without innovation MariaDB isn’t a product of its own.


Join the joint MariaDB & SkySQL roadshow to hear the latest about MariaDB and talk to us! Find the roadshow schedule and registration here.