July 24, 2014

Partially OpenSourced

Reading evening news and rss feeds I found interesting next sequence:

Jeremy’s post “MySQL to launch new features only in MySQL Enterprise

basically about some new features of MySQL will be available only for paid customers

Then Kaj’s post Anthropology: Sun studies MySQL with tagline “Sun didn’t acquire MySQL to change it, but to learn from it”

And finally news Sun Tackles Video Codec with info “Sun is working on a royalty-free and open video codec and media system”


What is interesting for me – while Sun moves to make most products OpenSourced – to name OpenSolaris, OpenJava, OpenOffice, and develops new open sourced software (see above about videocodec), MySQL tries to hide something.

Year ago I remember MySQL Proxy was not available for wide usage, only for Enterprise customers. Fortunately it was changed during last year. Now we see that new features will be available only for Enterprise customers. What is that ? Does not MySQL believe in open source? Or just partially believe ?
Why does Sun decide to develop new software under OpenSource license, but MySQL decides to take away features developed for next version.

Well I understand this all is about money, and anyone is free to do with his product anything, but MySQL does not seem playing open game here.

About Vadim Tkachenko

Vadim leads Percona's development group, which produces Percona Clould Tools, the Percona Server, Percona XraDB Cluster and Percona XtraBackup. He is an expert in solid-state storage, and has helped many hardware and software providers succeed in the MySQL market.

Comments

  1. Tom Krouper says:

    After I heard about the “Enterprise Only” features, I was trying to think of something to say about it and express my feelings. You did a great job of expressing my feelings. :-)

  2. Marten Mickos says:

    Vadim, thanks for your post and your comments. I won’t argue with your opinion, but I think there are some facts wrong on Jeremy’s blog and, it seems, also on yours. MySQL Proxy has never been in a state where it would have been available only to Enterprise customers. It is and was GPL code and available to all.

    MySQL fully believes in open source (and also in free software, to be specific) and I would list for instance the Cluster engine and Falcon as two originally closed source technologies that we have acquired and invested money in and released under the GPL.

    We are also experimenting with the best business model for open soure software. We are not saying we have found the perfect model yet, but we are experimenting (boldly, one might say). As part of that we have production add-ons that we ship to our paying subscription customers only. The MySQL Monitor is such an example. This piece of code is not and never was licensed under the GPL.

    Ideally we would love to license all our stuff under the GPL, but we also have always felt a responsibility to build a revenue-generating business that allows us to grow (and to hire more developers of GPL code, for instance). That’s the reason why we are doing this. You may also have seen the Workbench coming under two editions: OSS and SE. And we are likely to have other such add-ons in 6.0 and later versions – which is the topic that I think Jeremy Cole blogged about.

    We are not trying to hide anything. On the contrary, this is why we talked about this topic at our customer advisory board and our partner meeting and we will continue to talk about this. I also hope that you can agree that this is an open game. We are telling people what we are doing, we are not taking away anything that was open source. On the contrary, we are producing more and more GPL code and we are making our product more modular and improving the interfaces to it so that others can produce all the add-ons they like.

    This is the power of open source – anyone can produce whatever additions or extentions they like to the MySQL server (and people can even fork the code if they see a need for it). The MySQL Monitor is a great example. We may ship ours to paying customers only, but our partners may be building their own alternative tools that they can distribute under the GPL to everyone. I think Webyog has such a tool and it is very popular.

    I am honoured that you seem to be concluding that all great stuff to the MySQL server should come from the company behind it, but I don’t think that’s how it is or should be. The MySQL ecosystem is built around a highly popular GPLd product that anyone can use, modify and distribute. This will continue and we encourage everyone (including yourself) to develop whatever additional features or functions that you may consider missing today.

    Or if you have a better model for us, please let me know. As I noted, we are experimenting with the business model. The experiments are serious, but they are experiments nevertheless. There aren’t too many open source business of our size or bigger, so we don’t really have many to look at as a role model. If we make a mistake, we will fix it. The main thing (from our perspective) is our ambition to build a financially sound (read: profitable) business built on the principles of Free and Open Source Software. The learnings we make can be useful for thousands of other entrepreneurs who are producing great GPL software and building a business around it or on top of it. I am pretty proud of how we have navigated those waters so far, but I am not saying we are perfect or that we are done.

    Make sense?

    Marten

  3. I find Marten’s response both disheartening and disturbing.

    I’ve always believed that the power of Open Source lie in the communities ability to make a product better and stronger. For this to be fully realized, there needs to be a solid mechanism for community contributed objects to make it back into the core code base.

    Marten’s “dream” of having a cacophony of 3rd party tools surrounding the server core in an uncontrolled fashion doesn’t really fit this bill. It’s not that we think that the all the great stuff from MySQL Server should come from the company behind it – we believe that the company behind it should at least be the conduit through which this happens.

    With respect to the community, I think that offering your enhancements to only those who purchase a license will further alienate those already frustrated with the community contribution process.

    Finally, I think Eric Bergen has already suggested a better model http://ebergen.net/wordpress/2007/12/09/mysql-5048-proof-that-the-mysql-release-cycle-is-completely-broken/ – a model that’s been in existence and known to work for companies like RedHat for a long time.

  4. peter says:

    I’m honestly still trying to understand what exactly the change is and I’ll try to chase Marten and Robin on the conference to get particular answer. Are we speaking about 2 trees as RedHat RHEL and Fedora or are we speaking about functionality which is not available under GPL at All ?

    Speaking about MySQL Proxy indeed, it was never released for MySQL Entrerprise customers but Jan have released it initially by himself and it was later taken off and when I would ask some people at that time it was Planned to be released for Enterprise Customers only (if that was not the case what is the reason for removing source code from being available?) In the end MySQL decided to release MySQL Proxy to be publicly available.

  5. I’m trying to parse the recent news about 5.1.24 and I can’t figure it out. From the few blogs I’ve seen, this is only available as an RC for Enterprise customers, but when you go the mySQL enterprise server page http://www.mysql.com/products/enterprise/server.html the page title is “MySQL Enterprise Server 5.1″

    I really hope this isn’t what they are doing – if so it further supports what Eric Bergen pointed out.

    Why not release 5.1.24 as GA to the community first? I would think 1000s of organizations would instantly stop waiting and start installing it in development and test environments and getting ready for upgrade. Any outstanding bugs and fringe cases are going to get picked over quickly. By release to enterprise only, they are going to limit it’s initial usage. A savvy enterprise customer is going to stall that release until it’s been further vetted, or until they get into a support situation in which they have too.

  6. jim says:

    5.1.24 will be another RC, and is still in the process of being released. it’s a community release, at least. (i don’t know if we’re even doing “enterprise” releases of 5.1 yet.)

    the article(s) in the press that said it would be a GA release are incorrect, and the confusion now is probably because it hasn’t been released at all yet.

  7. Looks like I jumped the gun – there’s now an “official” announcement regarding 5.1 – http://www.mysql.com/news-and-events/press-release/release_2008_14.html – which states it will be GA by the end of this quarter.

    This is another one of the many cases where I’m glad my initial thoughts are wrong.

  8. Marten, I think the history of MySQL Proxy is not quite clear from your comments. Even at last year’s conference, the source was not available and Jan was working hard to make it GPL, but it was not at all clear that this would be permitted. It did not start out GPL and stay that way — I recall hearing from Jan and others that there was a lot of hesitancy to GPL it, and perhaps significant internal pressure from some parties within MySQL to make it closed source.

  9. peter says:

    Baron,

    I think now MySQL found a way to get both things. As I understand the Proxy itself will stay GPL but there would be some major features like load balancing modules available as Enterprise only modules. May be now working with Sun this will be rethought so lets wait to make judgment on that.

  10. Marten Mickos says:

    Thanks for all your comments on our business model! Some quick responses to you:

    * I agree that open source is a superior way to produce software. But I am in charge not only of software production but also revenue generation. We are trying to find useful ways to do both, and that is why we are experimenting with our business model. If it turns out to be wrong or stupid, then we will change the model.

    * Let us not forget that if and when MySQL produces some feature for MySQL Enterprise only, you and anyone in the community have the full freedom under GPL to produce your own modifications. And given that we all agree (I think) that open source is a superior method for producing software, the community may very well develop something that is superior to what we produce.

    * Yes, on MySQL Proxy there was an internal discussion before we released it under the GPL. That decision was made by me, and a key influence was that GPL was the desire of the innovator behind it – Jan Kneschke.

    * Note: the discussion on online backup pertains to release 6.0 and later, not 5.1 or earlier.

    I hope I answered all your questions and comments. I also wanted to present here the quick facts (again) around this to avoid misunderstandings:

    In 6.0 there will be native backup functionality in the server available for anyone and all (Community, Enterprise) under GPL.

    Additionally we will develop high-end add-ons (such as encryption, native storage engine-specific drivers) that we will deliver to customers in the MySQL Enterprise product only. We have not yet decided under what licence we will release those add-ons (GPL, some other FOSS licence, and/or commercial).

    Because the main backup functionality goes into the main server under GPL, anyone can of course use the api and build their own add-ons or other modifications.

    Marten

  11. Vadim says:

    Marten,

    Thank you for commenting in our blog, we really appreciate that.

    You are right we do not need to argue here, I am fully understand MySQL is experimenting with business model, we do that same in our company.

    The reason I started this discussion is to let you know that a lot of community members do not fully accept what MySQL is going to do, and that maybe important information to make final decision.

  12. Marten Mickos says:

    Vadim,

    Thx. Good point.

    I would also hope that someone could make a proposal for a business model that would be better than what we have come up with. We would love to hear if there is one. (Joshua Drake did claim on another blog that he has one, so I need to ask him what he has come up with.)

    Marten

  13. Ovid says:

    This is great news! We’ve contemplated switching over to PostgreSQL for a while. Numerous MySQL bugs (always with the promise that it’s fixed in $version + 1) have frustrated our ability to to provide robust software. This news has pushed us over the edge. PostgreSQL is not officially supported in-house, but this news is the impetus we’ve needed to finally reconsider.

  14. topbit says:

    For me, it’s about the enterprise edition having less testing than the community version. It might have more, and shinier features, but they have already released enterprise editions with significant bugs or what would be classed experimental features anywhere else. It’s got to be contrasted with RHEL/Fedora – the more experimental stuff goes out to the wider community to help nail down the problems that can only be found by widespread use, and you know when you use some of FC’s more experimental features that there may be problems – thats the price to pay for the new toys. When it’s settled down, those features get put into RHEL, and businesses know it’s going to be stable, since it’s already been well tested by a wider community.

    As the SheBA says at http://jcole.us/blog/archives/2007/05/14/breakdown-in-mysql-enterprise-process/
    – Enterprise: more features + less vetting = more breaking
    And she’s not alone in that thread.

    http://www.xaprb.com/blog/2007/08/12/what-would-make-me-buy-mysql-enterprise/ says much the same, with in depth reasons that match my own.

  15. Garreth Weldon says:

    When MySQL introduced MySQL Network, we saw the first closed source software (“the virtual dba”) from MySQL.
    Now MySQL Enterprise becomes closed source.
    You know why MySQL is doing this?
    To make money. Simpel.
    Making money with services around an open source product is tough: everybody can do this.
    People from Yahoo and Google offer MySQL performance & tuning consulting for $100.
    That’s something different than a 3-day performance & tuning gig from MySQL for $6.000.
    As MySQL is being used in no-so-mission-critical systems, there’s no need to buy support services from them.

    So, how to make money with MySQL?
    Offer features for money, and make it a little-bit closed source….like a little bit pregnant….
    If you need enterprise features from an open source database, look for Postgres or Ingres.

Speak Your Mind

*