[kwlug-disc] any thoughts on the current mysql brouhaha?

Khalid Baheyeldin kb at 2bits.com
Tue Jan 5 20:34:26 EST 2010


On Tue, Jan 5, 2010 at 11:03 AM, Robert P. J. Day <rpjday at crashcourse.ca>wrote:

>
> http://holdenweb.blogspot.com/2010/01/wht-save-mysql-now.html
>

Some background ...

MySQL dragged its feet to become open source. They were initially a DSS
(Decision support system) database. This meant they were optimized for
reading, that is why the MyISAM engine did not bother with proper database
stuff like row level locking, transactions, ...etc. Their strength in these
early days was that they gave it free (cost-less) to hosting companies and
was compatible with the now forgotten mSQL. They got a lot of adoption
because of this.

They then made it so that the "previous version is open source" under the
GPL. Say what you want about the GPL, but it made sense in that case: other
companies can't close source it, like Apple did with NetBSD for example, and
beat them in the market.  The GPL allowed them to do the dual licensing
thing (see below).

They finally conceded, and made it full open source (current version is
GPL), but still relied on dual licensing to make money. So far so good. They
would customize it for others or allow them to embed it into their products
without having the GPL affect other customer code linked to it.

They then required that community contributors assign their copyright to
MySQL AB, which allowed them to dual license community code as well as their
own. I know a few other companies that insist on that, but I am mostly
against this, unless the copyright holder is a non-profit for a project, not
a corporation.

Oracle scooped up the BDB engine a few years ago and then the coveted
transactional InnoDB engine followed without MySQL AB complaining loudly
like now. MySQL AB went and bought another obscure transactional engine
(SolidDB), and developed internally another (Falcon). Neither is in wide
use. Monty also started MariaDB as a transactional engine independently.

Sun then bought MySQL for 1 billion dollars. A little bit over a year,
Oracle bought Sun.

Monty is now lobbying the EU to force Oracle to spin off MySQL or sell it,
or license it with an Apache license. This allows him (and others) to do
what Enterprise DB does to PostgreSQL (base closed source products on an
open source product).

Digression: I have seen this flirting with non-GPL licenses in hindsight by
those who say "too bad, we could have made money with this selling licenses
if it was not GPL". The miss however that they would not have gotten as much
contribution if they did not use the GPL, exactly because someone can close
source and sell it, and if they have venture capital they can beat the
founders.

By the way, MySQL is already being forked by others. There is MariaDB (by
Monty), there is Drizzle (by Brian Ackers), OurDelta (a community effort),
and there are Percona's performance patches. Who will win? I don't care much
now, because MySQL is in Debian's repositories, and that is as free as
things get. Down the road.

I am not fooled that Oracle are benevolent, or any of that. But exactly
because the software is GPL, they cannot kill it. They can freeze it, and
then one of the above forks will emerge as the one with most community, and
the game will continue.

Here is some reading for those with time to kill:

Blog post by Monty Widenius on the matter
http://monty-says.blogspot.com/2009/12/help-keep-internet-free.html

The web site collecting signatures to lobby the EU
http://www.helpmysql.org/

An article about his recent efforts
http://www.pcworld.idg.com.au/article/331242

Monty's company suggests to EU Commision to get rid of the GPL for MySQL
http://www.groklaw.net/article.php?story=20091208104422384

An article against Monty and his effort
http://trolltalk.com/blog/blog/article.php?story=troll_of_the_day_20091213_monty_widenius

The Slashdot discussion
http://developers.slashdot.org/story/10/01/04/1548235/Monty-Wants-To-Save-MySQL


> is it time to shift to postgresql?
>

Not for everything.

PostgreSQL is well suited for financial applications, ecommerce, ...etc.
because of its support for correctness.

For certain applications, it is not the most efficient choice though. I have
seen how Drupal runs on PostgreSQL and it is not pretty. With the number of
modules that clients want because of featuritis, the number of queries per
page load is just obscene, and PostgreSQL, being a "proper" database with
transactions, rollbacks, locking, ...etc. can't keep up with this.

Remember that web site with 1.4 million page views a day that I showcased a
few months ago? It is now at 1.8 million page views a day and no end in
sight. This would have been impossible on Drupal + PostgreSQL.

Yes, you can rewrite the site using your own code and not a framework, but
then you spend more effort/money and get to maintain it yourself. Using a
CMS or a web application framework is a tradeoff for this.

MySQL is a perfect case of "good enough" being, well, good enough.
-- 
Khalid M. Baheyeldin
2bits.com, Inc.
http://2bits.com
Drupal optimization, development, customization and consulting.
Simplicity is prerequisite for reliability. --  Edsger W.Dijkstra
Simplicity is the ultimate sophistication. --   Leonardo da Vinci
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://kwlug.org/pipermail/kwlug-disc_kwlug.org/attachments/20100105/ad0efd23/attachment.htm>


More information about the kwlug-disc mailing list