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.'"
Point taken... The do not need to provide the wining fork, just support it. They actually have a cost advantage if the winning fork is developed by someone else. The downside is that they can't just merge the open code back into the commercial database, and that is a significant downside.
I've already started planning my open source project to support Maria. I'll probably still support MySQL but I expect the community version will have fewer options and functionality over time and will fall out of use so it's probably just easiest to start making the switch to MariaDB right now.
From my understanding, it already supports PHP and is far faster than 5.1.
This is my sig. There are many like it but this one is mine.
Funny you should say that. We're working on dumping Oracle licenses where they're not needed in favor of MySQL. That was going to be expanding our Sun support contract. Oddly enough - it might end up expanding our Oracle contract. That is, unless Oracle gives us reason to look elsewhere for MySQL support.
This really isn't as serious as is implied. MySQL is GPL. The forks are GPL. Therefore, if Oracle wishes, they can just cherrypick the best patches from all forks and integrate them back into their codebase, community involvement or not. I expect MySQL to remain the official MySQL, unless it completely stagnates, simply due to name recognition if nothing else.
I have always wondered why people do not use PostgreSQL that much. It is better than MySQL in terms of stability and scalability.
You might wonder how I came to this conclusion. Well, I have used MySQL with MythTV and I have gotten sick and tired of corrupted databases/tables.
I have a read a reviews of PostgreSQL's stability and scalability beyond two cores and have no doubts it is better than MySQL on this front, though there have also been crowds here at Slashdot who think MySQL is better. My experience suggests otherwise.
Personally it's just more of the same from MySql in general. MySql AB didn't do much of anything with it since 5.0 came out. They wasted a lot of time on a complete rebuild, on adding more features no one cared about. The thing about MyQql 5.0 is that it's really not a very good database. MyISAM sucks (but it is small and fast..) and InnoDB is bloaty. So I think that really MariaDB is going to be the future. Of the codebase. That is the nice thing about MySql is that really it's a wrapper around the Storage Engines. But the problem is the wrapper sucks. No kerberos/LDAP authenication?! What?
I could see Oracle taking one of their open databases and adding a Mysql compatibility layer so basically you can run stuff designed for Mysql on Oracle. This is really their bread and butter already, they move legacy stuff off old UNIX and IBM databases into their DB. Look at all the gateways 9i had. MySql only implements a subset of what Oracle can do. And with no support for the more modern, more object orientated practices, along with trees, etc, I don't see MySql making it out of it's current place as a cheap small database for non-critical applications.
That's not to say you can't make it quite stable and fast but it's not that out of the box. And the fact that 5.1 shipped with a crashing bug really makes me doubt Sun's desire to continue the brand. Which brings me to the forks, which are really the only thing keeping a stable 5.1 version alive out there.
Postgres is really not a viable replacement because it's a database nerd's database. I like it, but the data analysts at work won't be able to deal with its quirks. It does do a lot, but not small and fast like MySql. It comes from a long line of great database researchers, all of whom are well known around the Valley. A lot of all the major players' databases in the valley are based on ideas from Ingres including Oracle.
Personally, I think SQLite3 (4) is going to be the database of choice for small web hosts very soon. Small, portable, fast enough. At that point MySql will no longer have a purpose unless they can move into the middle tier dominated by MS-SQL.
Cool! Amazing Toys.
Your company must be run by morons.
Obviously. In fact, the people who run Wikipedia, craigslist, youtube, Slashdot, Apple, Cisco, Cray, Dell, Intel, HP, Motorola, NEC, TI, Xerox, Adobe, Symantec, Novell, McAfee, Citrix, Continental, Orbitz, Priceline, Amazon, ebay, Google, iStockphoto, Pricegrabber, Yahoo, ZipRealty, Linden, Audiogalaxy, Digg, del.icio.us, Facebook, Flickr, Freshmeat, LinkedIn, Photobucket, Stumbleupon, Twitter, and WordPress are clearly morons for using MySQL. These people don't know anything about databases.
In fact, I'm pretty sure you're the only person who's not a moron.
"Our two-party system is like a bowl of shit looking at itself in a mirror." - Lewis Black
I didn't realize that any mod got you mod points.
Funny does nothing for your karma, though.
"Our two-party system is like a bowl of shit looking at itself in a mirror." - Lewis Black
Are forks really a fact of life for healthy open source projects?
Most open source tools I use on a regular basis have never been (successfully) forked. More importantly, none of the other members in the LAMP stack have undergone a forking of the scale that MySQL is about go through. Sure, there are multiple 'L' distributions, but there isn't a healthy eco-system of production forks at the kernel level.
-Chris
I got a +5 funny post once.
When I was being serious.
Aide-toi, le Ciel t'aidera - Jeanne D'Arc.
Why doesn't SQL server have BEFORE triggers?
Well, you can use INSTEAD OF triggers. But you still have to do the actual operation in the trigger body, so yes it would be nice if they implemented it. Reality is that features gets prioritized and although it may seem a very popular thing, it's actually not.
Or row-level triggers?
Because the preferred approach with (almost) relational technology is set based instead of row-based? You can still have a row based approach in the body of the trigger if you want with a cursor and a loop. However, in most cases you simply deal with the whole set (inserted and deleted virtual tables instead of :new and :old virtual aliases). Maybe I should ask why in Oracle the examples for statement based triggers are always the same: they log the fact that an action triggered, they never deal with the data...
Anyway, a couple of better trigger questions (or rather a better flaming questions) are:
In both cases you have to test conditions inside the trigger body, but the trigger always fires.
Want other, better, flaming questions?
and so on....
I had to work with MS SQL for almost two years for a living and used enterprise manager daily and I have to say that I was terribly unimpressed. Granted, I didn't use all of it's features, but it largely struck me as a clutch around the incompetence of its users.
The most impressive uses I saw for it was using it to pipe data to another server and scheduling backups. In Linux I could do both with cron/python or simple mysql scripts or a web service and apache etc.
Enterprise manager is essentially another "programming by gui" tool for people who can't use a command line or write scripts who surprisingly --considering they are programmers-- constitute the majority of my coworkers, except for a java guy (a solaris fan) and a php guy (another linux fan).
Needless to say we used to run circles around the other developers, and I am a lazy ass slacker.
But... the future refused to change.
Facebook issues reports everynow and then, but its a moving target as most of the sites are. Somethings only scale so far. Facebook & Google seem to be on the Map Reduce train for the majority of their services. Yet, Google is one of the major third party contributers to Mysql, although its not clear exactly where they use it ( I've heard rumors of adwords being done via mysql). They've reported uptimes of 2-6 years ( for the whole stack Hardware, OS & Mysql under load) here
Well.. maybe. Or Maybe not. But Definitely not sort of.
Interesting... but it seems NASDAQ and the London Stock Exchange, among several others, do not agree with your field experience.
As another example take the Bwin case study:
The bwin Data Management Systems group uses SQL Server 2008 to continue its tradition of providing world-class performance for its sports betting customers. During peak loads SQL Server handles more than 6,000 financial transactions per second, which Grohser says translates into more than 30,000 database transactions per second.
Have they finally fixed date handling in MSSql server? Personally, I'd say MySQL and MSSql are junk compared to PostgreSQL, but that is just because I have used all three. (I have also used DB2 which beats all three, and Oracle, which is just annoying).
Sent from my ASR33 using ASCII