Has MySQL Forked Beyond Repair?
snydeq writes "Fatal Exception's Neil McAllister questions the effect recent developments in the MySQL community will have on MySQL's future in the wake of Oracle's acquisition of Sun. Even before Oracle announced its buyout, there were signs of strain within the MySQL community, with key MySQL employees exiting and forks of the MySQL codebase arising, including Widenius' MariaDB. Now Widenius' Oracle-less Open Database Alliance adds further doubt as to which branch of MySQL will be considered 'official' going forward. 'Forks are a fact of life in the open source community, and arguably an entirely healthy one,' McAllister writes. 'Oracle just better hope it doesn't end up on the wrong side of the fork.' To do so, he suggests Oracle will have to regain the the trust and support of the MySQL community — in other words, 'stop acting like Oracle.'"
It's not so much fanboys. When you develop for something, you want to develop for a stable feature set. If there's going to be a dozen forks of a database, it becomes much more work to test all the versions and apply patches.
It now makes far more sense to develop using a different DBMS.
Note: I've never installed or used PostgreSQL.
Clearly this is a troll but regardless of all other features that MSSQL may have that MySQL doesn't there is one thing that is missing: LIMIT. No, TOP is useless for a lot of stuff and the fact that LIMIT is missing results in lots of painful hacks with nested SELECTs and other crap in stored procedures.
/Mikael
Greylisting is to SMTP as NAT is to IPv4
That's entirely correct. MSSQL has several nice features, but the lack of LIMIT.. well.. really limits its usefulness. The concept of a LIMIT clause is so useful that the lack of it is essentially a dealbreaker. The hacks to implement some sort of limiting using TOP are very inefficient and don't result in any sort of performance increase comparable to the one you get with LIMIT.
"Our two-party system is like a bowl of shit looking at itself in a mirror." - Lewis Black
But they can't integrate it back into a proprietary commercial product like MySQL AB or Sun could do if they don't hold the copyrights to the contributed code to the forks. Oracle isn't stupid like Sun and just gives shit away. If they can't integrate the work back into a sellable commercial product they just aren't going to bother.
Religious debate. Way back in the Olden Days, postgres was an unstable mess. Absolutely godawful. Corrupted databases, lost data, slow as moleasses, constant need to restore from backups. Completely worthless.
At the same time, MySQL was fast, stable, fast, worked well enough, slightly feature incomplete, and fast.
Those old stereotypes have stuck. MySQL nowadays? Actually pretty feature complete. PostgreSQL nowadays? Pretty stable and solid.
But nobody updates their perceptions, so the old ideas shine through.
No, that's YourSQL.
No, it's Bill's SQL.
When you develop for something, you want to develop for a stable feature set. If there's going to be a dozen forks of a database, it becomes much more work to test all the versions and apply patches.
The very existence of these forks proves MySQL could easily be better, and/or there are major problems with the development method. Either way, it's a sinking ship. OTOH, a dead project provides the ultimate stability.
Dude, maybe you should wake up: SQL Server supports ANSI SQL windowing function ROW_NUMBER() OVER (ORDER BY) and, of course, when you apply a predicate to the resulting row number all optimization are done.
Then again if LIMIT is The Thing that make you choose a DBMS you may as well get a b-tree indexing library and play around with offset by yourself...
Oracle doesn't care about losing the trust of the MySQL community. They already have a database to sell; they're probably more interested in the vertical integration with OS, hardware, and programming language tools.
I wouldn't be surprised if they were happy to sell the MySQL business unit, or kill it completely.
There's no SERIAL datatype. It's simply a shortcut for creating a sequence, and is equivalent to saying "integer DEFAULT nextval('tablename_colname_seq') NOT NULL".
Also, I'm feeling really curious about this, because:
1. Why would the sequence get out of sync in the first place?
2. If it does, why doesn't using nextval and setval work for fixing it?
3. How will the app lose data? If somehow it generates the same number twice, any attempt to INSERT a row would simply fail.
So please explain how you get what you said to happen.
SQLite is fast all right, but it doesn't scale at all.
PostgreSQL scales well, but is fairly slow on average.
The thing with MySQL is that you were supposed to have both.
That's an interesting point of view. I saw things slightly differently, so say what you think of my take on it. I agree that Oracle might not actually care so very much that they got a free MySQL when they bought SUN. But in so far as they do pay attention things, I would think they'd steer people away from PostgreSQL toward MySQL rather than the other way around. My reasoning is that there is a clear and significant gap between MySQL and Oracle DB. MySQL is never going to draw many customers away from using Oracle DB, and mostly the other way around as well. But I see the gap between PostgreSQL and Oracle as being much smaller, both in the capabilities of the two databases and the easier time you have moving from one to the other (in either direction). I think that makes PostgreSQL more of a threat to the Oracle install base and thus something they would prefer to keep people away from. Using MySQL as a stalking horse makes more sense to me. Thoughts? Matches the real world or too conspiracy?
Aide-toi, le Ciel t'aidera - Jeanne D'Arc.
SQLite is fast all right, but it doesn't scale at all.
MySQL does?
PostgreSQL scales well, but is fairly slow on average.
Honestly, that hasn't been true in years.
The thing with MySQL is that you were supposed to have both.
And yet somehow ended up with neither.
Dewey, what part of this looks like authorities should be involved?
The LAMP stack was always fundamentally flawed because the 'M' was not really an open source public project, where everything else was. We need to replace the M with a true open source project, and I hope the best project wins.
What everyone failed to do, that they should have done years ago, as a standard was build database abstraction layers. I know people will argue about performance bla, bla, bla but I don't buy that. We should have been doing it for years, exactly for this reason. Instead everyone was lazy, picked MYSQL because it was free/cheap/easy to learn.
Now, hopefully get off our lazy collective asses and build in database abstraction layers in to our web apps the way we should have from the start, or replace the 'M' with something really open source and public that does not belong to a company.
My only hope is that Oracle might do the right thing and cut it loose as a fully open source project to develop to its fully potential.
Living in Chile
Not when it comes to security vulnerabilities.
Laissez lire, et laissez danser; ces deux amusements ne feront jamais de mal au monde. - Voltaire
Sorry for replying to myself, but another fork in the making is OpenOffice.org->Go-OO. This one is interesting because it's more similar to the MySQL fork, in that the main project is controlled directly by a big corporation, rather than a nonprofit entity as GCC and XFree86 were. Apparently a lot of OO.o contributors weren't happy with the control Sun had over OO.o, and believed that Sun wasn't very accepting of patches contributed from outside Sun. So they forked it to "Go-OO", which is now included by default in several Linux distros.
Have you USED SQL Server? Have you USED Enterprise Manager? Do not say "Yes" Because making the comment you did proves you have not, or that you are an imbecile. Enterprise Manager is quite possibly the single best thing Microsoft has ever turned out. Were it able to interface with other Databases with a fraction of the functionality it currently has, MS would be selling a copy to every damned database developer who values their time. SQL Server might not be ORACLE for scalability, but it comes real close, and it sure is a hell of a lot more scalable than MySQL, and yes, I am/was a MS Certified DBA who now develops apps based on MySQL. I am not fanboi, but I DO know both. SQL Server FTW without doubt
Not when it comes to security vulnerabilities.
Not when it comes to security vulnerabilities.
It's stable in respect to security vulnerabilities as well. No need to create new exploits just to keep your malware compatible.
The Tao of math: The numbers you can count are not the real numbers.