Sun Announces New MySQL, Michael Widenius Forks
viktor.91 writes "Sun Microsystems announced three new MySQL products: MySQL 5.4, MySQL Cluster 7.0 and MySQL Enterprise Partner Program for 'Remote DBA' service providers."
which showed up in the firehose today next to Glyn Moody's submission where he writes "Michael Widenius, founder and original developer of MySQL, says that most of the leading coders for that project have either left Sun or will be leaving in the wake of Oracle's takeover. To ensure MySQL's survival, he wants to fork from the official version — using his company Monty Program Ab to create what he calls a MySQL "Fedora" project. This raises the larger question of who really owns a commercial open software application: the corporate copyright holders, or the community?"
It depends on the license of the software. Always.
This raises the larger question of who really owns a commercial open software application: the corporate copyright holders, or the community?
No one. Or, perhaps, everyone. That's kind of the point, isn't it? It isn't locked into anyone's individual grip.
"You cannot simultaneously prevent and prepare for war." -- Albert Einstein
Why would the fork have to stop supporting InnoDB?
So the answer is yes.
The simple truth is that interstellar distances will not fit into the human imagination
- Douglas Adams
Did anyone else notice that his little toy database is practically useless without InnoDB, which was written by a third party and is owned by Oracle?
If you mean for transactions.
If you want a really fast free database that supports fulltext indexing, and you don't need transactions, MyISAM in the engine to use.
This raises the larger question of who really owns a commercial open software application: the corporate copyright holders, or the community?
No one. Or, perhaps, everyone. That's kind of the point, isn't it? It isn't locked into anyone's individual grip.
"Open source" is just too broad a term to address this way. You would have to look at individual licenses. On top of that, you have things like Open Office, which is "open source" but clearly controlled by Sun (or Oracle now I guess).
While you claim you can always fork an open source project, it's not always that simple. Especially in massive open source efforts (like Linux) where they have contacts and knowledge that are vital to the project. It isn't possession or control or fiscal ownership but instead a name you've made for yourself as the Father of some project that gives you "ownership" or "rights." And usually the market share of your user base reflects that.
You'd be surprised how many of your open source solutions are actually controlled and operated by a single entity. And this is great for those products because the entity is usually donating a lot of time and money to it. Should the entity ever drop out, that's when someone can pick up the cross and take it a new direction with everyone helping.
My work here is dung.
So if Oracle are able to somehow prevent the use of this code, either due to terms of employment of the pricinple devs or by claiming ownership of the code and rescinding the free license, it'll make all these licenses worthless. Oracle has deep pockets. Individual developers don't.
Unless those principle devs are still working at Oracle they can't do the former, and the latter is only possible on future versions of MySQL so one can fork the last free version of the software and Oracle can't do a damn thing about it.
To ensure MySQL's survival, he wants to fork from the official version -- using his company Monty Program Ab to create what he calls a MySQL "Fedora" project. This raises the larger question of who really owns a commercial open software application: the corporate copyright holders, or the community?"
That's what all the lawyering over the license text is all about. This question is one of the more settled questions in the industry.
Get the improved code here.
It takes a man to suffer ignorance and smile
Be yourself no matter what they say
I have to disagree, I think that would be immensely stupid of them. I think they'll just use it to try to funnel users butting up against its limits towards full Oracle. If they kill it they lose that potential sales channel.
Yeah, you're right. Foreign keys, who needs 'em?
Seriously though, this could be good news for PostgreSQL. Fingers Crossed.
But what license was the FICS code under? Was it really "open source"?
There are plenty of licenses that provide for distribution of source but are so restrictive that no one considers them to be "open source".
retrorocket.o not found, launch anyway?
Or you can use SQLite, get more speed, and still have transactions. (Although fulltext indexing does require a loadable extension.)
'Sensible' is a curse word.
This leads us to the only part of the GPL that I think is in any way legally questionable (IANAL). I'm not sure it is entirely legally clear if the copyright holder is allowed to revoke the GPL licensing terms or not, no matter what is said in the license.
No, they can't. The FSF has already stated that if the public has had the right to use the program under the GPL that it can't be revoked.
Can the developer of a program who distributed it under the GPL later license it to another party for exclusive use?
No, because the public already has the right to use the program under the GPL, and this right cannot be withdrawn.
http://www.fsf.org/licensing/licenses/gpl-faq.html#CanDeveloperThirdParty
FICS has been replaced by chessd: http://chessd.sourceforge.net/index-en.html
They could argue that, but even if that were to be found to be the case, for any program with significant distribution, I'd think the doctrine of "detrimental reliance" would apply.
...to PostgreSQL. Seriously, I already use it for GpsDrive. Now I just need to convince the Cacti devs to switch over.
"Klaatu, verada, necktie!" -Ash
As the owner of a software development company I think your would have to be stark raving nuts to open source your main product. It's not that the model can't work it just that if it becomes successful you are pretty much guaranteed to lose control of it at some point.
If we look at MySQL for example: here's a company that produces half way decent database engine that that make open source. They play the open source game "properly" producing code that a mortal can compile to get a working database. While the company is giving the community what they want everything is hunky dory and there is peace.
Enter Sun who buy MySQL and suddenly the community isn't happy and it's fork fork fork. Only one of those forks needs to be any good and all of a sudden Suns not bought very much at all. If a company plays nice with the open source community forks are fairly easy but rare. The problem is they hang like a knife (or maybe that should be fork) over the company and if they are unfortunate enough to annoy the community they could eaisly lose control of their product.
That said I think there are situations where companies can participate in open source. The Linux kernel and Plone being a couple of good examples. Both of those projects are structured very differently to the MySQL situation though as no one company is trying to make a living off the code.
I used to have a better sig but it broke.
If MySQL had a BSD license it would be owned by the community.
If MySQL had a "non-free" commecial license it would be owned by Oracle.
The mess MySQL, and you, find yourselves in is because of MySQL's stupid dual-level license bullshit. Nobody seems to be able to figure it out or agree on it and it has caused more column inches of claptrap on Slashdot than the MySQL/PostgreSQL threads themselves. MySQL's originator's wanted to have it both ways: Lots-O-corporate money AND GPL poster child. Well they got their money alright, but to get it they had to pray for a really wealthy, poorly managed corporation to come along and vet their convoluted business plan. That would be Sun.
Now, with a billion dollars spent to "buy" MySQL but a bunch of forks still out there, no company in their right mind is going to invest anything in MySQL because they'll be worried Widenius will just steal the improvements and fork it again. MySQL is pariah, it's poisoned.
If you're running any kind of data volume worth talking about you're better off with PostgreSQL. Not only is it faster with *real* queries and more robust, but now it's safer going forward.
I don't think it is particularly likely that anyone could successfully revoke the gpl on code that they had distributed, but you can't look to the FSF for that determination (only for their opinion).
It's entirely unlikely because the license itself explicitly forbids it.
Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein.
Once the rights have been granted to copy, distribute and modify the program any attempt to revoke those rights is imposing further restrictions, which as the quoted section says is forbidden.
I don't believe Non Compete agreements are valid in California.
Mod me down, my New Earth Global Warmingist friends!
they way MySQL and stuff from the GNU/FSF is set up, they require contributors to sign the work over to them. Then the body in charge has ALL the rights and can do what they will. Like when the FSF moved everything to GPL 3, they could do that unilaterally because they had assignment.
Mozilla also has assignment and releases just what you say under a tri-license, the same code base published 3 times. Two are open source (MIT & LGPL) but the main Firefox branded binary is actually NOT open source. Anybody can fork the MIT or LGPL versions but has to strip all branding and can't call it "firefox" or "mozilla".
They can't UNLICENSE things already in the wild though. But much like Red Hat/CentOS, they could beat you up over every little point of branding (because they own the name) and keep suing you for every little code comment if they were that petty, leaving mountains of work for somebody to get "every reference" to the old name/logos out before distribution. Of course a fork is only useful if enough people follow you, and that's where nearly all the projects break down.... only the new parent company is big enough to provide new features and timely support.
On the other hand Linux is pure GPL 2. Because Linus has no "foundation" when he wrote it, contributions are still owned by the individual coders... moving off of GPL 2 is nearly impossible because many early contributors no longer work on Linux or are deceased. The copyright sticks, so the only way to change the license would be to rewrite the modules entirely.
As long as you don't need concurrent users. As soon as someone tries to update anything in the database, SQLite will lock the entire database until that update is completed.
I always consider SQLite to be a replacement for ad-hoc file formats, client-side storage, or anywhere else where you've got some data and something like SQL would be handy to manipulate it. Not so great as a replacement for database servers, unless everything's read-only.
This is taken care of by section 6 of the GPL v2 (though it appears as section 7 in the MySQL documentation for version 5.0 at least.
If I give you a copy of MySQL that I download today, you automatically get a license to modify and distribute from the copyright holder. Any copies you distribute will likewise have a perpetual license as long as you and the recipient obey the requirements of the GPL V2.
That's not something Sun or Oracle can take away from you. They can stop releasing new versions under the GPL as they own the code (anyone submitting patches must agree to the Sun Contributer Agreement). They cannot, however, unGPL the code that has already been released.
Seriously though, this could be good news for PostgreSQL. Fingers Crossed.
AFAIK more and more people are using PostgreSQL. More and more providers are supporting it. Five years from now, it could be a whole different landscape...
Comment removed based on user account deletion
1. Create a company around a popular open source database.
2. Sell company for $1 billion.
3. Profit
4. Fork it
5. ???
6. Profit again
Who said anything about closing the gap? Continuing to develop and support MySQL doesn't mean turning it into a powerhouse database like Oracle.
The simple fact is, MySQL and Oracle do not, and have never, played in the same league, and I believe it would be a mistake to try and turn MySQL into a shitty Oracle. MySQL has a niche... keep it there.
So they improved InnoDB to make MySql more attractive to the small folks. If they become as big as eBay and PayPal, they probably will switch to Oracle (;-))
--dave
davecb@spamcop.net
The gap between MySQL and Oracle is huge and not likely to be closed anytime soon.
Technology leaders in big companies aren't as into all the open source gossip as the slashdot crowd are and I wouldn't be surprised if many of them didn't even know there were MySQL forks or what that meant.
They would rather go with a MySQL that is named MySQL and has a big company like Sun or Oracle, the leading db vendor that also owns the only sane database engine for MySQL, than some noname fork. Even if it was started by the MySQL founders and all the developers went to it. If all the MySQL developers go to a fork, well then Oracle developers will take over.
What's more concerning is IBMs partnership with EnterpriseDB, which is based on PostgreSQL.
If you want an open source database that closes the gap with Oracle, use PostgreSQL.
Sun should have never bought MySQL. Instead they should have put more effort into PostgreSQL. Sun has had some big wins with Solaris and Postgresql in the past and offer support for it on Solaris.
Must be tough since Oracle is an important part of Sun's business but Oracle has done things that could be considered as stabbing Sun in the back too.
Dual Opteron < $600
SQlite has supported per-table locking for a while, and I believe it supports per-row locking in some situations. It is not designed for concurrent writes, but it can be great for anything read-heavy workloads. It's certainly not suited for situations where you have a lot of concurrent writes, but for a CMS it can be a very good fit.
If you want full-text indexing, transactions, and lots of concurrent users, PostgreSQL is generally a better bet. MySQL is being squeezed at the bottom by SQLite and at the top by PostgreSQL, and both have less restrictive licenses (public domain and BSD, respectively). I'm amazed that it's survived this long.
I am TheRaven on Soylent News
Yeah, you're right. Foreign keys, who needs 'em
They should even get rid of SQL support altogether and just call it My. Who needs all that complicated elitist crap anyway?
Dual Opteron < $600
Most people I know that plan to start with a OSS database and move to Oracle start with PostgreSQL, since PostgreSQL mirrors the capabilities and features of Oracle pretty close, just it's not quite as fast. (But the PostgreSQL folks have been making progress).
"The problem with socialism is eventually you run out of other people's money" - Thatcher.
You're not really answering my post. The GPL is clear enough on this matter, but it isn't entirely legally clear if the GPL is to be considered a binding contract or not. Thus, my argument can't really be answered by referring to the GPL. The FSF has their opinion on the matter, but the FSF does not make laws.
This is not a problem at all in the opposite case where a recipient of the code breaks the license, because without the license, the recipient has no rights to the code.
However, without the license, the copyright holder has all the rights exclusively to the code.
I'm not saying there is a big chance of the copyright holder being legally able to revoke the licensing on GPL software, but I do think it is worth considering as a remote possibility. In any case I don't think it is a good idea to agree to reassign copyright on your contributions to SUN/Oracle.
The problem with forking is all the child processes, though.
Yeah right, if postgres was popular you'd be pimping mysql, just to be a trouble maker. In any case postgres is dangerously small and uns
Awww.. Look he tried to make a funny. See.. he was going to write unstable, but he stopped in the middle because his postgresql backed keyboard locked up.
What a darling to try and be clever.
People like Postgresql not because it's not popular like mysql. People like it because it's not crippled like mysql.
My experience, in general, has been that people moving from big commercial databases like postgresql. Those that that are new to rdbms's like mysql.
Dual Opteron < $600
The people who own an open source application are the people who are at any point in time putting in the effort of maintaining it.
Unless those principle devs are still working at Oracle they can't do the former, and the latter is only possible on future versions of MySQL so one can fork the last free version of the software and Oracle can't do a damn thing about it.
But what would the business model be? Any MySQL fork no longer has the ability to dual license the software since the copyrights have been sold. That's how MySQL AB made money.
Developers, and their families, can't eat freedom and self righteousness.
Dual Opteron < $600
Only two-bit operations that are run out of their mothers basement use PostgreSQL.
Operations like Skype
-1 Uncomfortable Truth
You know, I never understood the point of InnoDB. One may want a complete, fully functional DBMS, in that case, there is PostgreSQL, or one may want a lightning fast data indexing/accessing machine, and for that case there is MySQL. InnoDB brings something that is slower than Postgres and still isn't a complete DBMS by any point of view.
Rethinking email
If you want a really fast free database that supports fulltext indexing, and you don't need transactions, MyISAM in the engine to use.
That's exactly what I thought for a while. Then I built a system where many, many people were using it all at once and figured out that MyISAM has another "feature" that InnoDB doesn't: full table locking. It locks an entire table when running queries on it. When I've got a table that holds 400k records for a total of 90k users, and many of them are trying to access or update at the same time, MyISAM's table locking is a deal-breaker. InnoDB implements row-level locking instead. MyISAM is great for smaller hobbyist things, but it's terrible for concurrent access on large data sets. I would open the process list in phpMyAdmin and see 30 or 40 queries in the queue waiting for one to finish. So if your data set is small enough that MyISAM can handle it, then it's also going to be small enough for InnoDB to operate on it quickly, at least as quickly as MyISAM. I don't see any reason to use MyISAM when InnoDB is an option. I'm not trying to get into the politics of which engine is better to use, but InnoDB walks all over MyISAM in the real-world performance area, unless you're building yourself a shopping list or something similar.
"Our two-party system is like a bowl of shit looking at itself in a mirror." - Lewis Black
Seriously, given that Sun is still the biggest commercial contributor to OSS, and given the fact that I highly doubt Oracle will continue to feed money into many open-source project sponsored by Sun (like Netbeans, MySQL, ecc..), since this would 1 - Hurt them (MySQL) or 2 - Make them waste money into products not for their target markets I think that this merge is a tragedy for many open source projects, which will see a slowdown, or complete death. Not to mention the fact that the world is loosing one of the most open-minded, trasparent, and less "bastard" companies ever existed... Is there any chance that a like-minded company like Google, despite working in a completely different market (they provide services, Sun/Oracle provide the infrastructure), might try to save Sun and its legacy, for "historical" reasons? Or maybe take the financial burden of sponsoring Netbeans, MySQL, ecc...?
The point of MySQL isn't a "lightning fast data indexing/accessing machine". The point of MySQL is the modular backends which enable it to serve as a common gateway to tables that each use the storage engine most appropriate to the way the table is used. (some of which may require a lightning fast data indexing/acessing engine and accept some risks to get it, some tables may not.)
The point of InnoDB (and, presumably, Falcon) is to support the kind of usage scenarios for which traditional RDBMS are designed, while the point of certain other MySQL table drivers is to support other types of loads.
I started with MySQL because it had replication. Yeah, I know Postgres has slony or whatever it's called, but I cringe at the though of maintaining disparate pieces of software (that sometimes don't get along) on something as critical as a database. Maybe it's changed, maybe it hasn't, but that's how it was when I chose to use MySQL.
this is my sig
PostgreSQL is the open source database that can comepete with Oracle in terms of features and reliability. EnterpriseDB aims to be a drop-in replacement for Oracle with a PostgreSQL backend. The partnership is going to create a path for EnterpriseDB to be a drop-in replacement for Oracle with a DB2 backend.
It creates a migration path from Oracle that IBM can take advantage of.
Dual Opteron < $600
Problem easy to solve. Don't distribute the MySQL JDBC drivers in the case of a Java app, for example.
If the application is going to be distributed as part of an appliance like Google-in-a-box, then it just wouldn't work.
Better yet, use the application online and provide it as a service.
Not practical for an otherwise Internet-disconnected network. And in many areas, this isn't even possible without an extra $720 per year or more to the cell phone company for a tetherable data plan, as dial-up just isn't good enough anymore.
That is a load of bullshit. There are a number of cases where MyISAM will be actually slower. It depends not on the engine, but on the usage patterns of the database and database structure. And, interestingly, it varies from application to application.