Oracle buys InnoDB, will a fork save MySQL?
The MySQL code is licensed under the GPL. InnoDB is licensed under the GPL. Innobase Oy is an OEM manufacturer for MySQL AB. InnoDB is the most important table manager (storage engine) for large enterprise paying customers of MySQL. MySQL has been taking aim at the Oracle market. Oracle buys Innobase Oy just before they are due to re-negotiate their business relationship. Most of the open source world reacts with one word, "Fork!", but are they missing the point?
Before I go much further I should state for the record that I work for Sleepycat Software as the Product Manager. I have a vested interest in Sleepycat's success and growth. Our primary product, Berkeley DB, is one of the storage engine choices available to users of MySQL, just like InnoDB. In fact, it's the closest to InnoDB in terms of features, stability, and scale. Sleepycat has a long history of partnering with MySQL, and an open communication channel. We both operate in the open source database market and use a similar dual-license model. So, when I hear that Oracle has made a move against MySQL (and make no mistake, that's what they've done) and targeted the one piece of technology that is most like our cornerstone asset here at Sleepycat I pay attention. I pay attention because it's Oracle, it deals with the subtle aspects of open source in business, and because it may give Sleepycat new competitive advantage and new market value. That's my job, to pay attention to the database storage engine market. So clearly, my views are somewhat colored by that.
Innobase Oy is the copyright holder and so the owner of the intellectual property that constitutes InnoDB. The code is their legal property enforceable under copyright laws. To date, they have chosen to license this property under the GNU Public License. That doesn't change ownership, and it never will. Only the owner of an asset can modify the license of that asset, that's their right. The license they choose conveys some rights, but never ownership. Its a license to use and redistribute under the terms of the GPL. Now, read this statement carefully:
"If you want to use MySQL+InnoDB under a commercial license, you have to buy the license from MySQL AB. The product containing both MySQL and InnoDB is called MySQL Pro. 'MySQL Classic' does not contain InnoDB... The GNU GPL license, under which both MySQL and InnoDB are published, does not allow, without a permission from MySQL AB and Innobase Oy, linking of InnoDB and MySQL, or the client libraries of MySQL, to a product which you distribute but which does not itself satisfy the GNU GPL license." - InnoDB
If the GPL is unacceptable then you have to pay MySQL AB for a commercial license. This practice is called dual-licensing. The terms and conditions of the GPL are generally unacceptable for enterprise software developers. Companies have the choice to pay the owner of the copyright to negotiate an acceptable license, one that generally isn't viral and doesn't require their code to become open as well, or not to use the code. Ironically, Oracle has learned a lesson from this and is about to force MySQL AB to make a similar choice.
MySQL AB can, as the owner of all the MySQL code, choose to relicense their code any way they see fit. But, MySQL AB doesn't own the rights to the InnoDB code, Innobase Oy does. Or should I say Oracle does. Which makes things interesting because the business relationship that exists between Innobase Oy and MySQL AB is about to expire. The right to relicense the InnoDB code as anything non-GPL is in jeopardy.
Is a fork of InnoDB enough for MySQL's customers using InnoDB? No. Will it save the MySQL+InnoDB code for use in open source projects? Yes. The reason is simple, from now on when MySQL links in the InnoDB library, it will be subject to the terms and conditions of the GPL. That is, unless Oracle finds a good reason to give MySQL a different license or the rights to relicense the InnoDB code the MySQL code will be subject to the GPL and MySQL AB will not have the right to change that license for their commercial customers.
MySQL is one of my favorite open source companies. Innovators in a tough and crowded market. They are also one of the other excellent examples of how dual licensing works well for open source business. This move by Oracle validates their position as growing and viable concern in the open source database market.
Technorati Tags: copyright, database, disruptive, GPL, open source, sleepycat












