Today we’re pleased to announce the availability of MariaDB Galera Cluster!

With this release, we’re addressing the numerous requests we’ve received over the past few months for a MariaDB-based Galera Cluster. MariaDB, the more reliable, performant, feature-complete & backwards compatible MySQL database becomes even more attractive by making it available for Galera Cluster.

What is it?

  • A straight merge of MariaDB 5.5.25 with Galera Cluster by Codership
  • An alpha release which should not be used in production environments
  • Using the Galera replication methodology, users get:
    • Synchronous, multi-master replication with guaranteed data consistency
    • This solution provides both read & write scalability

Compatibility?
MariaDB Galera Cluster is fully data-compatible with MariaDB or MySQL, as it will work with the standard databases created by these products. There are next to none or very minimal application changes that are required to make the solution work.

Where can I get it?
http://downloads.mariadb.org/mariadb-galera/5.5.25/

What’s next?
The plan is for a rapid release cycle to heavily test the performance and usage of MariaDB Galera Cluster in different environments. Please file bugs at: https://mariadb.atlassian.net

Quotes
Seppo Jaakola, CEO for Codership
“It’s great that we are working closely with an upstream provider of a MySQL-compatible binary, MariaDB. We no longer have to spend time coding against out-of-tree changes as we’re part of MariaDB,” stated Jaakola. “The excellent MariaDB engineering team constantly releases new versions of MariaDB with high quality assurance (QA). Codership will continue to collaborate closely with the MariaDB engineering team to improve the product and make new versions of the MariaDB Galera Cluster available.” he continued.

Michael “Monty” Widenius, CEO for Monty Program Ab
“We’ve received a significant amount of requests for a MariaDB based Galera cluster and today we’re proud to deliver that. We’re currently preparing ourselves and our partners for a rollout of the GA product and related professional services via SkySQL to run critical systems on top of MariaDB Galera Cluster.”

Links:
http://kb.askmonty.org/en/what-is-mariadb-galera-cluster/
http://kb.askmonty.org/en/about-galera-replication/
http://kb.askmonty.org/en/galera-use-cases/
http://kb.askmonty.org/en/getting-started-with-mariadbgalera-cluster/
http://kb.askmonty.org/en/mariadb-galera-5525-release-notes/

The MariaDB Team will together with Codership work on customer requests and demands in the areas of cluster and replication. Please contact us if you are interested in any services we can offer around Galera, MariaDB or MySQL.

A few months ago we announced the EXPLAIN Analyzer, a simple tool to help you understand how MariaDB / MySQL was running queries. For users of HeidiSQL this is now even easier. As discussed in their news post you can now send a query to the EXPLAIN analyzer with a single click.

We hope this helps both new and experienced users better understand the queries they run.

More information about the EXPLAIN Analyzer and the simple API client authors can use to add support to their apps is available in the AskMonty Knowledgebase:

About a week ago I was looking at MySQL 5.5.27, and noticed a curious thing. Despite the fact that the new MySQL release contained its usual share of bug fixes, not a single one of them was accompanied with a test case.

Now, let me tell you something about tests. For many years MySQL was using its own testing framework, called mysql-test. The first version was written as early as 1999. Over the years it has accumulated a lot of tests. Tests for new features and regression tests — those that guarantee that a bug, once fixed, will never ever show up again. We had pretty strict policies about it in MySQL AB (and, later, Sun Microsystems) — every new bug fix always had to come with a test case for the bug. And because these tests were always run on many platforms for every push (by the continuous integration tool called Pushbuild — developed in-house by Kristian Nielsen) we were reasonably sure that any bug, once fixed, will stay fixed forever. I’m not with MySQL anymore, but I still cannot imagine that Oracle would weaken that rule. So, it must be something else then.

One of the changes that 5.5.27 brings in an extension to the mysql-test-run script — the driver script of the mysql-test suite — which makes it look for test cases in a new directory. In addition to the usual location (that is, the mysql-test/ directory in the source tree), it will now look for test cases in the internal/mysql-test/ directory. Does this mean that test cases are no longer open source? Oracle did not reply to my question. But indeed, there is evidence that this guess is true. For example, this commit mail shows that new test cases, indeed, go in this “internal” directory, which is not included in the MySQL source distribution.

MySQL test cases were always an important part of the MySQL source tree. They were particularly useful for storage engine developers and for other people extending MySQL, for example, at Facebook, Twitter, and Taobao.  But also for Linux distributions which add their patches to the base MySQL, and even to users, who don’t modify the sources — they still want to confirm that a particular bug was fixed or that their custom-built binary has no obvious flaws.

In May, at the Ubuntu Developer Summit in Oakland, Oracle had 7 representatives there, and they promised that Oracle will be more contributor- and distribution-friendly. It is sad to see that instead of that the MySQL source tree is being closed down.

MySQL AB was never very good at building a development community around the product. There weren’t many MySQL developers or contributors to the project outside of MySQL AB, and the company didn’t do much to increase their number. But now Oracle has noticed them — and it intentionally kills whatever is left of the MySQL development community. Without test cases MySQL becomes as opaque to external developers as any piece of closed source software, and only those most experienced and familiar with the MySQL code base will be able to continue working with it.

UPDATE: It’s difficult to find anything more valuable to external developers than test cases. But arguably the revision history is. It groups changes to these millions of lines of source code into change sets, one change set per a distinct feature or a particular bug fix. It allows to see who changed a specific line of code, when, and why. And it seems that Oracle is going to keep this information to itself too. Public MySQL trees on launchpad with the revision history are not being updated.

Now, is there a single successful Open Source project with no developer community at all ?

UPDATE 2: We’re not the only ones this issue affects. See also: