Sun May Begin Close Sourcing MySQL Features 509
An anonymous reader writes "From the MySQL User's Conference, Sun has announced, and former CEO Marten Mickos has confirmed, that Sun will be close sourcing sections of the MySQL code base. Sun will begin with close sourcing the backup solutions to MySQL, and will continue with more advanced features. With Oracle owning Innodb, and it being GPL, does this mean that MySQL will be removing it to introduce these features? Sun has had a very poor history of actually open sourcing anything."
Re:Not that I begrudge them a right to make a buck (Score:5, Informative)
Last part a Joke? (Score:5, Informative)
Java - I am running the IcedTea free software version right now
OpenSolaris - might not be GPL, but it still qualifies as free software... right?
Of course I'm hoping the first part is a joke too.
Comment (Score:5, Informative)
What the hell? (Score:5, Informative)
Those guys are such dicks, they never give the community anything.
Re:You can't effectively close-source anything GPL (Score:2, Informative)
Re:Not that I begrudge them a right to make a buck (Score:2, Informative)
Re:This is great news.... (Score:4, Informative)
I've never understood the reluctance towards PostgreSQL. It's been quite good for quite a long time now.
They are forking the code (Score:5, Informative)
Comments from MySQL (Score:5, Informative)
* The business decision on this was made by MySQL AB (by me as the then CEO) prior to the acquisition by Sun, so this has nothing to do with Sun. On the contrary, Sun is more likely to influence this decision the other way.
* It is not a quesiton of close sourcing any existing code, nor anything in the core server. Everything we have released under GPL continues to be under GPL, and the core server will always be under GPL (or some other FOSS licence).
* We will introduce backup functionality for all users (Community and Enterprise) under GPL in version 6.0.
* 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).
* At all times, because the main backup functionality goes into the core server under GPL, anyone can of course use the api and build their own add-ons or other modifications.
Those are the facts on this. The interesting topic is of course the one of the business model and what the best business model for FOSS software is. I hope to cover that in a separate posting.
In all of this, you have our undivided continued commitment to providing a fantastic and complete MySQL server under GPL for anyone to download and use. If we for whatever reason would not do that, we would risk losing users to other open source databases or risk seeing a fork of our own product. This is the power of open source.
Make sense?
Marten
previously CEO of MySQL, now SVP at Sun
Re:Comment (Score:2, Informative)
Re:This is great news.... (Score:3, Informative)
Re:You can't effectively close-source anything GPL (Score:4, Informative)
No comment regarding XFree86/Xorg.
No comment regarding the Emacs/XEmacs fork, except to point out that there was an earlier fork called Epoch made in the version 18 days and that didn't go anywhere. I used it for a time in 1990 and preferred it to straight Emacs 18.
The only other major fork I can think of would be the *BSD forks, Open, Net and Free.
Successful forking is very rare and requires a truly dedicated developer community or large corporate backing to pull it off. Out of the few examples listed one of them was not a fork at all, but a coup and resulted in the death of the parent.
Re:This is great news.... (Score:5, Informative)
The only caveat that typically hangs up new users (especially ones coming from a MySQL background) and is not particularly clearly documented is the default authentication mechanism.
By default (at least on many distributions), Postgres uses "ident" authentication, which means no password is required for database logins on a local socket. What *is* required, on the other hand, is that you must be logged in/running as the UNIX user of same name. Obviously this poses problems for webapps that want their own database user and is generally just very confusing for users who are used to the database having its own independent set of usernames and passwords (which Postgres still does, for remote connections... causing further confusion)
Of course, like any good database Postgres will be more than happy to handle its own user authentication entirely natively, you simply have to use md5 instead of ident in pg_hba.conf [google.ca]
Re:They are forking the code (Score:2, Informative)
Who Needs MySQL? (Score:3, Informative)
Re:This is great news.... (Score:5, Informative)
http://phppgadmin.sourceforge.net/ [sourceforge.net]
Re:This is great news.... (Score:3, Informative)
I'm sincerely impressed with what PostgreSQL has done. I hope they continue working, and hope they are never picked clean by those who "don't get it", ala. what appears to be happening to MySQL.
Re: Sun to Begin Close Sourcing MySQL (Score:3, Informative)
No. That's the key difference between the GPL and permissive licenses like BSD and MIT. You cannot take GPL code, modify it, and re-release it as a closed source product. The terms of the license explicitly state that you must provide source code with any modified or derived version you distribute.
*UNLESS* you are the sole copyright holder to the GPLed work and any outside contributors have assigned copyright to you, in which case you can re-release it under whatever license you please (of course, the most recent GPLed version remains in the wild and can be forked by the community).
Re:This is great news.... (Score:5, Informative)
As to tools, I'm not sure what you're after, as postgres has less need for addon tools than mysql, doing more via SQL instead. The only thing that's especially tricky in configuration is pg_hba.conf -- but comparison with mysql's user auth shows the complexity to be worthwhile.
Post / Grez / Queue /El (Score:4, Informative)
Because it is such a common question (and such an odd name), it is aptly an entry in the PostgreSQL FAQ [postgresql.org].
If you don't like my phonetic spelling and prefer IPA, Wikipedia has you covered. [wikipedia.org]
Many people, myself included, simply call it Postgrez.
don't rush to conclusions (Score:4, Informative)
Not to mention that SUN is not the only one doing interesting things with MySQL
Also, the features in MySQL Enterprise can (at least currently) be enjoyed by most developers using alternatives
1) the hot backup of myisam tables will be available in the open-source version
2) the smart load balancer is a MySQL Proxy configured with filtering scripts that you can write yourself in Lua
3) profiling can be done efficiently with Sun's DTrace
Disclaimer: I am currently attending the MySQL conference, but I am not affiliated with Sun in any way.
Re:This is great news.... (Score:4, Informative)
Re:This is great news.... (Score:2, Informative)
That is where MySQL has problems. It does not enforce the database schema correctly by design, as opposed to other RDBMSs that simply lack a feature or fail to do so due to a bug. Thus it it is only a time-varying collection of data, and fails the rest.
There used to be truckloads of examples, but these days it's 'only' down to some incorrect null handling, silent errors, and transactions succeeding even if they should fail due to the prior.
Re:This is great news.... (Score:3, Informative)
At least that is the case in mysql 5.0.45-6
Re:This is great news.... (Score:4, Informative)
Re:Very insightful (Score:4, Informative)
There are companies that use the 'closed first, GPL later' approach: Xensource did with Xen virtualization softwre, and Citrix is allegedly doing the same now that they bought Xen. AFPL does this with Ghostscript, and at last look Zmanda was doing this with Amanda.
Re:This is great news.... (Score:3, Informative)
I've been using PostgreSQL pretty heavily for the last year or so, and since the version of Gentoo I was originally using had 8.0.12 as the default version, and I am now using 8.2.6, I can say that it has improved tremendously just through those two minor releases. I have also not found the documentation to be significantly lacking. It is well organized and covers everything you need for even a fairly heavily used system.
I haven't tried doing any of the more esoteric things with it that the documentation suggests can be done; one thing that I have not tried is installing any of the alternative languages that can be used to write embedded functions. (The list of available languages is pretty impressive, including some that do not initially seem to be semantically even remotely similar to PL/PgSQL.)
I've currently got a database running whose data takes up about 25 GB on disk, and queries that involve using a good portion of this data seem to have scaled well versus queries that use only a tiny fraction. In moving from one machine to another, I've used the utilities that come with it to dump and restore the database, (and I use them regularly to do backups), and they work well.
The only thing that ever makes me covet MySQL is the ability to use different storage types for tables. PostgreSQL only has one type of table storage, but any performance issues I have had have been curable in a way other than changing table types.
#postgresql on freenode is quite useful; fairly frequently, there are representatives of the core development group hanging around, and they have always been willing to answer questions and explain how stuff works.
One bit of performance advice: if you can get 3 drives, one for the data, one for the indexes, and one for the write-ahead logs, performance will improve drastically. Also, the default settings for the tweakable operational variables are not really set well for speed or efficiency. I'm not sure what kind of system they would be good for, but if you read the documentation, you can glean reasonable settings fairly easily and they make a huge difference. Overall, I have found it to be very reliable. I have never had any problems with this system that were related to the system itself; everything that I have had to deal with has been because I initially didn't know what I was doing and had created some fairly awful database designs.
Bad summary (Score:5, Informative)
Re:-1, Flamebait (Score:2, Informative)
Re:This is great news.... (Score:1, Informative)
I've had experience with Slony-I in the past. Once working, it's very solid, but the installation was a nightmare. The documentation and install guide are incomplete, and the helper scripts packaged with it are buggy and semi-functional.
I'm told you can now do mirroring and action replays in PG using the binary logs (which is similar to the method MySQL uses). This is good news because I wasn't too happy relying totally on triggers, which is how Slony-I was written.
Re:This is great news.... (Score:3, Informative)
Re:This is great news.... (Score:3, Informative)
The architecture that is being suggested for backup here is in fact open source friendly, as Sun could just as easily have decided to NOT implement the provisions for it in the GPL code base. As it is now, there will be plenty of opportunity to hook up your own backup stuff, which is a good thing.
Re:This is great news.... (Score:4, Informative)
MySql is a full fledged client/server database and *should* support referential integrity properly. Of course its biggest problem is licensing - you can only use mysql with 100% GPL applications (unless you're prepared to pay $200/user for the client licenses, or stick to the 3.23 client which is the last free to use version), which limits it somewhat.. TBH given that restriction I'm really surprised web hosts still ship it, as they're opening themselves up to all sorts of liability issues if one of their customers uses/builds a non-gpl app using it.
Postgresql is basically mysql without all the silly politics.
Re:This is great news.... (Score:3, Informative)
The guy isn't complaining, he's just saying that PG does it better. And it's true.
Re:This is great news.... (Score:2, Informative)
Postgres 8.4 will have Postgres-R built-in, which is really just the existing "Mammoth" replication tool, but integrated in.
Re:This is great news.... (Score:1, Informative)
Those of us who desire PostgreSQL usually start with the list over at PostgreSQL's site.
Re:This is great news.... (Score:4, Informative)
http://www.navicat.com/ [navicat.com]
Apples and Oranges (Score:3, Informative)
And constraints in MySQL? Is that why CHECK constraints were silently ignored for so many years? What you call "constraints," I call "the vast subset of constraints that MySQL managed to support in a timely fashion." Big difference.
You can simulate 3NF with application patches, but without actual DB support, it's smoke and mirrors. Without enforced foreign keys, it's not an ACID database. A database engine missing ACID is like an operating system with cooperative multitasking. Sure you can have multiple apps running at the same time, but don't for a second pretend that it's the same thing as preemptive multitasking as long as you have proper application support. To assert as much is missing the underlying point altogether.