LWN.net Logo

MySQL stops distributing Enterprise Server source code

By Jake Edge
August 15, 2007

In announcing changes to the way it does its releases, MySQL AB, the company behind the MySQL database, probably knew what element would be the most controversial. Listed last of five changes was the plan to no longer be distribute Enterprise Server source code. Very quickly noticed by members of the MySQL community, then by the wider free software community, it caused a bit of an uproar. A Slashdot headline, later reworded, proclaimed "MySQL Closing Off Its Source", which was easily enough to fan the flames. A closer look reveals that not all that much has changed, MySQL is trying to find ways to have a free software product that generates revenue – a difficult balancing act.

The roots of the problem go back to the split of MySQL into two products: Enterprise Server and Community Server. That change was announced in October 2006 and was an attempt by MySQL AB to separate the needs of the "community" from those of their commercial, "enterprise" customers. The words chosen were, perhaps, a bit distasteful; one would think that all MySQL users are members of the community, the real distinction they were trying to make is: paying vs. non-paying.

At the time of that split, there was talk that MySQL AB was turning its back on free software, "going corporate" as it were. In fact, the company has kept up its side of the bargain, releasing its code under the GPL. It has also worked with the Free Software Foundation on GPLv3; upcoming MySQL releases might very well be covered by that license. Its biggest sin, in some eyes, has been the unwillingness to forgo making a profit.

The change that caused the latest stink is more subtle, as it just changes the Community Server development process. But, as a seemingly unnecessary part of that change, the Enterprise Server source tarballs will no longer be available on the the ftp.mysql.com site. The source will be distributed to customers who buy the Enterprise Server, but will no longer be accessible – from MySQL AB – by the community at large.

The company evidently wants to make a sharp distinction between the two releases, which is what led them to restrict the source code. Various Linux distributions have been using the Enterprise source, rather than the the Community source, to build MySQL packages and the company would rather not see that. Kaj Arnö, VP of Community Relations for MySQL AB, puts it this way:

What we do intend is related to positioning: MySQL Community Server is for our users, MySQL Enterprise Server is for our paying customers. We want people to associate MySQL Enterprise Server with a commercial relationship to MySQL as a company.

It seems a rather drastic step, likely to induce community annoyance, for very little gain. The marginal cost of maintaining another copy of the tarball should be nearly zero. In addition, Arnö has acknowledged that the source will still be available to anyone who truly wants it. Folks like DorsalSource are already planning to provide source and binary versions of the Enterprise products as they are released.

GPL compliance, always a confusing topic, was at the heart of a lot of the complaints about withdrawing the source. The company is complying with the license by providing the source code to their Enterprise customers with the binary distribution. Given that they hold the copyright for the entire package, by requiring contributors to assign their copyrights, they could make other license arrangements with their customers, but choose to stick with the GPL.

The other, less controversial changes announced were largely codifying the current Community release practices. One of those practices, leaving new features and bug fixes out of the community releases, at least until the next major release, seems contrary to the intent for the Community Server. When it was set up, it was to be the testbed for the Enterprise Server, but that role has clearly fallen by the wayside.

There are legitimate differences between large, enterprise-class customers (who are more likely to pay for support) and the rest of the universe of MySQL users. One wants stable releases, on a fixed schedule, that have been extensively tested in real-world installations. The other wants new features and bug fixes more quickly, even if they have not yet had extensive testing. Unfortunately, it seems like MySQL AB may be confused about which group of users needs each style of release.

A parallel is often drawn between the split that Red Hat made between Fedora and Red Hat Enterprise Linux (RHEL), but while the original reasoning seems to be the same, the implementation is rather different. For reasons that are not entirely clear, Enterprise Server gets monthly "hotfix" releases that often seem to contain fixes that are out of place for a stable release. Often, the changes have not yet been released in a community version, so they have only been tested in MySQL AB's labs.

This is very different from the Fedora/RHEL model as the frequency of releases between community and enterprise has been reversed. In the Red Hat model, features (new packages) are released first in Fedora, vetted by the community, then released in an RHEL release sometime later, typically much later. It is hard to see what benefit monthly releases provide to a "stable" product. An exception must be made for security fixes, but those should not wait until the next scheduled release anyway.

MySQL AB seems to see things differently, one must hope that they are right, and that they understand precisely what their customers want. It would be a tragedy for MySQL AB to falter; they are a free software company that does an enormous amount of work on the database software that is used freely by millions. Thankfully, even if that did happen, MySQL the software package, would continue, perhaps at a slower pace. That, in many ways, sums up what MySQL AB, or any company that uses a free license, gives to their users, paying or non-paying, the ability to keep using and extending the software even if the company fails.


(Log in to post comments)

Tragedy?

Posted Aug 16, 2007 3:26 UTC (Thu) by ncm (subscriber, #165) [Link]

Would it really be a tragedy for MySQL AB to falter? It would be unfortunate. There are a few companies whose collapse might be genuinely tragic for the Free Software community, albeit for very different reasons: Google, Red Hat, CodeSourcery. If MySQL AB were to falter, MySQL might stagnate, or somebody else might pick it up. In the meantime, another project with an (at least) equally capable product, PostgreSQL, waits in the wings, with SQLite ready to pick up the low end.

Some feel MySQL has unfairly overshadowed PG for purely historical reasons. Some argue that PG's license has made it harder to build a viable support business. In any case, most projects that depend on a vibrant MySQL could switch to PG at their leisure, and with more inconvenience than pain.

It is in the nature of PostgreSQL's license that a company could fork it and place (its changes to) the fork under dual proprietary and GNU GP licenses, while continuing to merge changes from the parent project. It would take adroit PR to avoid alienating the Free Software community in the process. If it succeeded, the company would be in much the same niche that MySQL AB occupies.

Tragedy?

Posted Aug 16, 2007 13:15 UTC (Thu) by kleptog (subscriber, #1183) [Link]

It is in the nature of PostgreSQL's license that a company could fork it and place (its changes to) the fork under dual proprietary and GNU GP licenses, while continuing to merge changes from the parent project.

This has been going on for years, see EnterpriseDB. They aim for people migrating from oracle. As such they have a number of features that simply don't interest the open source version.

However, next to that they also develop features for the wider community and take part in discussions. They feed back some of the more interesting features to the main project. I've not seen any complaints about any of this.

Is MySQL AB a "Free Software company"?

Posted Aug 16, 2007 15:07 UTC (Thu) by ber (subscriber, #2142) [Link]

To say that MySQL is a Free Software I would expect them to make the large majority of the revenues with Free Software product. Is the fraction of free software and proprietary software revenue for them known?

In addition there are other business models which can be envisoned for a Free Software company. To me as an enterprise customer I would want version that have been tested by the larger community. A split often is not in my interest as long as other users play fair as well. And this is my point: As customers we can make a better business model work.

Copyright © 2007, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds