Beta

Slashdot: News for Nerds

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Has MySQL Forked Beyond Repair?

timothy posted more than 5 years ago | from the seems-like-a-hard-case-to-make dept.

Databases 334

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.'"

cancel ×

334 comments

Cue postgres fan bois (3, Funny)

Anonymous Coward | more than 5 years ago | (#28045803)

In 3, 2, 1

Re:Cue postgres fan bois (5, Insightful)

danomac (1032160) | more than 5 years ago | (#28045845)

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.

Re:Cue postgres fan bois (5, Funny)

iluvcapra (782887) | more than 5 years ago | (#28046061)

When you develop for something, you want to develop for a stable feature set.

Or in the case of MySQL, a featureset at all. I keed! I keed!

Re:Cue postgres fan bois (2, Insightful)

K. S. Kyosuke (729550) | more than 5 years ago | (#28046187)

Come to think of it, MySQL had been forked on the inside long before that - a thousand and one storage engine and none of them complete... (Just stating the facts.)

Re:Cue postgres fan bois (3, Insightful)

Jurily (900488) | more than 5 years ago | (#28046261)

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.

Re:Cue postgres fan bois (1, Funny)

Anonymous Coward | more than 5 years ago | (#28045847)

Both MySQL and PostgreSQL are junk compared to Microsoft SQL Server.

Re:Cue postgres fan bois (-1, Troll)

Anonymous Coward | more than 5 years ago | (#28045869)

I guess..if you're one of those lackeys who needs visual studio to be productive.

Re:Cue postgres fan bois (5, Insightful)

mikael_j (106439) | more than 5 years ago | (#28045915)

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

Re:Cue postgres fan bois (3, Insightful)

amicusNYCL (1538833) | more than 5 years ago | (#28046019)

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.

Re:Cue postgres fan bois (5, Insightful)

Anonymous Coward | more than 5 years ago | (#28046327)

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...

Re:Cue postgres fan bois (0)

Anonymous Coward | more than 5 years ago | (#28046529)

If LIMIT is The Thing, why would you assume he knows what is a b-tree indexing library?

Re:Cue postgres fan bois (1)

gazuga (128955) | more than 5 years ago | (#28046421)

I only come across it occasionally, but several times I have found myself wishing for LEAST and GREATEST functions in T-SQL, like in Oracle. Of course people always suggest creating workarounds via a CLR addin, functions or CASE statements. But really, in both cases, this seems like a trivial feature to implement. C'mon MS!

Re:Cue postgres fan bois (0)

Anonymous Coward | more than 5 years ago | (#28046821)

Even with a CLR function you are out luck because GREATEST can take an arbitrary number of parameters and this is something you can't do in SQL Server. Even if you define a fixed number of parameters, you still have to specify the "default" keyword when calling the function which is not exactly practical. Moreover, you'll have problem with data types. So yes, there are still nasty limitations compared to Oracle, but to be honest I never found that much need for these 2 specific functions.

Re:Cue postgres fan bois (4, Informative)

shutdown -p now (807394) | more than 5 years ago | (#28046599)

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.

Perhaps it's because LIMIT isn't ANSI SQL [arvin.dk] ? Before SQL-2008, you were supposed to use ROW_NUMBER() for that, which MSSQL does support. And no-one supports SQL-2008 yet.

Re:Cue postgres fan bois (1)

$RANDOMLUSER (804576) | more than 5 years ago | (#28046107)

Both MySQL and PostgreSQL are junk compared to Microsoft SQL Server.

No, that's YourSQL.

Re:Cue postgres fan bois (4, Insightful)

houstonbofh (602064) | more than 5 years ago | (#28046161)

Both MySQL and PostgreSQL are junk compared to Microsoft SQL Server.

No, that's YourSQL.

No, it's Bill's SQL.

Re:Cue postgres fan bois (2, Insightful)

Rhapsody Scarlet (1139063) | more than 5 years ago | (#28046499)

Both MySQL and PostgreSQL are junk compared to Microsoft SQL Server.

No, that's YourSQL.

No, it's Bill's SQL.

Isn't it really more Steve's SQL these days?

[Insert overdone chair-throwing joke here]

Re:Cue postgres fan bois (1)

Phizzle (1109923) | more than 5 years ago | (#28046605)

Both MySQL and PostgreSQL are junk compared to Microsoft SQL Server.

No, that's YourSQL.

No, it's Bill's SQL.

Wait, isnt MySQL now Larry's SQL?!
*teh zing!*

Re:Cue postgres fan bois (1)

larry bagina (561269) | more than 5 years ago | (#28046307)

Why doesn't SQL server have BEFORE triggers? Or row-level triggers?

Re:Cue postgres fan bois (4, Funny)

Locke2005 (849178) | more than 5 years ago | (#28046389)

One thing I can say for SQL Server: it sure beats the hell out of Access!

Re:Cue postgres fan bois (0)

Anonymous Coward | more than 5 years ago | (#28046533)

Why is this modded troll? It's been shown to be true in benchmark after benchmark.

Re:Cue postgres fan bois (-1, Troll)

Anonymous Coward | more than 5 years ago | (#28046825)

because slashdot is full of trailerpark rednecks who slap together cast-off AMD garbage, manage to install linux, and then think they know something about computers

Cue Monty Wideanus ass kissers (-1, Flamebait)

horndoggerer (1559709) | more than 5 years ago | (#28045865)

in 3... oh wait.

Re:Cue postgres fan bois (5, Funny)

Moblaster (521614) | more than 5 years ago | (#28045875)

It is more accurate to characterize the recent burst of minor MySQL variations as a sporking of the code base.

Oracle needs to cater to business not the communit (2, Insightful)

Anonymous Coward | more than 5 years ago | (#28045827)

If Oracle provides what business needs/wants .. and that's what they have been doing thus far. They will be fine. Nothing to see hear move along.

Re:Oracle needs to cater to business not the commu (4, Interesting)

houstonbofh (602064) | more than 5 years ago | (#28045857)

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.

Re:Oracle needs to cater to business not the commu (4, Interesting)

Anonymous Coward | more than 5 years ago | (#28045889)

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.

Re:Oracle needs to cater to business not the commu (-1, Troll)

johnnycomesooner (1559711) | more than 5 years ago | (#28045961)

Why would you move from a real database to a toy database? Your company must be run by morons.

Re:Oracle needs to cater to business not the commu (5, Interesting)

amicusNYCL (1538833) | more than 5 years ago | (#28046147)

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.

Re:Oracle needs to cater to business not the commu (0)

Anonymous Coward | more than 5 years ago | (#28046779)

Amazon uses Oracle on Linux:
http://www.dba-oracle.com/oracle_news/2004_2_17_conway.htm

They do have some MySQL installations, but the big DBs are Oracle+Linux.

MySQL has features, and it is free, but it can't compare performance wise to a properly tuned Oracle installation.

Re:Oracle needs to cater to business not the commu (3, Funny)

dabooda (412228) | more than 5 years ago | (#28046925)

haha that sounded like the 'things I care more about than you' rant by Dr Cox in Scrubs! ... oh wait, I'm the only one that watches that show

Re:Oracle needs to cater to business not the commu (1, Insightful)

moderatorrater (1095745) | more than 5 years ago | (#28046767)

Because Oracle licenses can cost millions in an economy where every dollar counts whereas MySQL is free and fairly reliable. When he says "unneeded", he's probably referring not only to features but to stability and all those things that make people consider MySQL a toy database. If you need multiple 9s reliability, use something else. If you just need things to be up 90%+ of the time without any of the fancy features that Oracle gives you, then MySQL is an easy choice. At that point it comes down to whether you want to use MySQL or a more robust free database, and when it hits that point MySQL has a strong advantage in ease of use.

I've heard the arguments that postgres is as easy as MySQL, and they're bullshit. MySQL has good GUI applications, a good command line application, market share that ensures a tutorial for everything under the sun, and an easy installer for windows and linux. Postgres has no good GUI applications that can compare with MySQL's, their command line application is just as good in its own way, and the market share that ensures you need to google multiple times to find the info you're looking for. Installing postgres is also a nightmare compared to MySQL.

To sum up: free > $millions, easy > full-featured (in many circumstances).

Re:Oracle needs to cater to business not the commu (1)

CarpetShark (865376) | more than 5 years ago | (#28046577)

If Oracle provides what business needs/wants .. and that's what they have been doing thus far. They will be fine. Nothing to see hear move along.

Really? I'm more tempted to think that whichever fork becomes the version in Debian (by being cooperative with the community, having the best features, whilst not going against free software policies) will be the one that gains momentum. It's hard to beat being available at the touch of a button in both a popular server-grade OS, and it's popular desktop-grade offshoot.

10101 (0, Offtopic)

Sybert42 (1309493) | more than 5 years ago | (#28045877)

1110101101110010110

Already Planning my project for MariaDB (2, Interesting)

Foofoobar (318279) | more than 5 years ago | (#28045881)

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.

Re:Already Planning my project for MariaDB (4, Interesting)

tnk1 (899206) | more than 5 years ago | (#28046183)

I'd hope that in the short to mid term, neither side of the fork introduces something that would make either one become incompatible. That may happen eventually, but I think if one side does that too soon, it will be the end of their fork.

I think a fork here is certainly an appropriate action, but I hope that the ODA people don't go so far down the "we're not Oracle path," that they end up on the wrong side of existing users.

I personally support well over a hundred major MySQL installations right now which serve content, and my company operates hundreds more. So, obviously, any talk of divided support makes me uneasy.

In the short term, we're likely to stay with the official MySQL, but we are very interested in not getting stuck in vendor lock-in or abandonment. We definitely are trying to get away from Sybase and Oracle DBs as much as possible, so the Oracle purchase concerns me. As long as we don't have to re-code to move to Maria, it will always remain an option.

And who knows, if its faster and better, it may be a no-brainer to switch to it even if MySQL does not get marginalized or subverted. Still, that is only something that is going to happen after a full evaluation period with both sides of the fork. In the meantime, they need to be interchangeable enough so all my code on one works on the other. I cannot stress that enough.

Re:Already Planning my project for MariaDB (3, Informative)

Foofoobar (318279) | more than 5 years ago | (#28046317)

Well they want to be compatible with existing MySQL versions as Monty has stated and not be a fork but they also want to fix broken functionality on the backend that SUN has been unwilling to do thus far. MariaDB from my understanding is just a community version but they would like to see their commits go up to Oracles version as well.

If they make improvements and Oracle refuses to be part of the community, then guess who is going to have the better version in the long run? I'm putting my money on that community of developers rather than the company with the overblown ego. We all know how companies with overblown ego react to the open source community after all.

Re:Already Planning my project for MariaDB (1)

jbolden (176878) | more than 5 years ago | (#28046879)

It is going to be Drizzle and they are going to do it quickly. The embedded market doesn't care as much about uniform compatibility if they need performance. Maria OTOH will stay very close to MySQL legacy and the main MySQL (unless they pick up a large percentage of mindshare). So I'd expect the main MySQL and MariaDB to codeshare if both projects are doing well while expect Drizzle to fork off and never come back.

Fork it (5, Funny)

sakdoctor (1087155) | more than 5 years ago | (#28045883)

If I could only think up a cliched pun using the term forked, I would be sure to get the converted +5 funny mod.

If only.

Re:Fork it (1)

jgtg32a (1173373) | more than 5 years ago | (#28045965)

but +5 funny doesn't get you mod points

Re:Fork it (2, Interesting)

amicusNYCL (1538833) | more than 5 years ago | (#28046181)

I didn't realize that any mod got you mod points.

Funny does nothing for your karma, though.

Re:Fork it (0)

houstonbofh (602064) | more than 5 years ago | (#28046195)

but +5 funny doesn't get you mod points

But it does give you a nice achievement. :)

Re:Fork it (1)

Fantom42 (174630) | more than 5 years ago | (#28046025)

If only I could think up a cliched self-referential variation on your posting to correct your English usage, I would be sure to get the coveted +5 interesting mod.

If only.

Re:Fork it (0)

Anonymous Coward | more than 5 years ago | (#28046047)

If I could only think up a cliched pun using the term forked, I would be sure to get the converted +5 funny mod.

If only.

fork + shoe = spleen

Re:Fork it (2, Funny)

value_added (719364) | more than 5 years ago | (#28046203)

If I could only think up a cliched pun using the term forked ...

You're way ahead of me. I'm stuck at figuring out what "wrong side of the fork" means. Where's BadAnalogyGuy when you need him?

Re:Fork it (0)

Anonymous Coward | more than 5 years ago | (#28046369)

I think they meant the "dark side" of the fork. Whatever that is.

Re:Fork it (1)

Locke2005 (849178) | more than 5 years ago | (#28046301)

You mean like "Those MySQL users are really forked now that Oracle has control of MySQL!"?

Re:Fork it (0)

fm6 (162816) | more than 5 years ago | (#28046377)

Yeah, it's forked up.

Re:Fork it (4, Interesting)

h4rm0ny (722443) | more than 5 years ago | (#28046523)


I got a +5 funny post once.

When I was being serious. :(

Knowing Oracle... (1)

MikeRT (947531) | more than 5 years ago | (#28045905)

I really don't think they care, nor do I think that they bought Sun for MySQL. I wouldn't be surprised in the least if they kick it to the curb here and either create a lighter low end Oracle DB for MySQL's users or if they revamp Sun's support for PostgreSQL by making it the preferred entry-level compliment to Oracle DB. Oracle already has a huge service wing, and using PostgreSQL wouldn't hurt them in that capacity as a vehicle for selling Oracle DB where it makes sense to those customers.

Re:Knowing Oracle... (1)

Reality Master 201 (578873) | more than 5 years ago | (#28046539)

Yes, exactly. And PostgreSQL's capabilities and feature set is already closer to Oracle than MySQL's is or is likely to be in the future.

Re:Knowing Oracle... (5, Insightful)

h4rm0ny (722443) | more than 5 years ago | (#28046635)


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?

Re:Knowing Oracle... (1)

jbolden (176878) | more than 5 years ago | (#28046921)

Postgres is getting much better speed wise. But Oracle's main selling point vs. DB2 traditionally is how fast it is. MySQL is also fast comparable to Oracle. This is less of an issue than it was a dozen years ago but I'm not sure how much that mindset still survives at Oracle.

Re:Knowing Oracle... (1)

moderatorrater (1095745) | more than 5 years ago | (#28046831)

Considering that Oracle acquired InnoDB a few years ago with a company for whom that was the only real asset, I think it'd be a mistake to think that Oracle doesn't have plans for MySQL. InnoDB is the engine for those who are moving in the direction of more robust database solutions, and if you're supporting people on InnoDB and MySQL who could use a feature in Oracle, it's mighty easy to train tech support to say, "Well, there's a horrendous workaround, or you could upgrade to Oracle which will fix all your problems. We'll even send a tech out there to help you migrate, which we've gotten pretty good at since we've got experts for both codebases in our company."

What the fork? (5, Funny)

Anonymous Coward | more than 5 years ago | (#28045933)

Just tell me which one to use for the salad, so my ignorance doesn't trip me up like it did with that bidet that one time.

Not as serious... (5, Interesting)

Anonymous Coward | more than 5 years ago | (#28045935)

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.

Re:Not as serious... (4, Interesting)

dvice_null (981029) | more than 5 years ago | (#28045979)

> The forks are GPL. Therefore, if Oracle wishes, they can just cherrypick the best patches from all forks

They can. But then they can't dual license it anymore as they don't own copyright for the whole source.

Re:Not as serious... (0)

Anonymous Coward | more than 5 years ago | (#28046485)

why can't they just study the patches, and then rewrite them? Copyright problem solved. Unless you patent the patch, you can't stop this. And then, the patch wouldn't be GPL'ed either.

This isn't unethical either. Its one of the points of GPL that the source is available for all to study and learn from...

Re:Not as serious... (2, Insightful)

Your.Master (1088569) | more than 5 years ago | (#28046649)

Doesn't work so neatly as that. GPL is a copyright and you can infringe copyright without using literally identical material.

I'm not so sure the ethical argument works out either. Just because some GPL advocates say they want others to study and learn from it, doesn't mean that the people who actually contributed to it intended for it to be studied, learned from, and then essentially plagiarized without the license. I doubt even most advocates who speak those words are intending that you do this.

Re:Not as serious... (1)

h4rm0ny (722443) | more than 5 years ago | (#28046739)

why can't they just study the patches, and then rewrite them? Copyright problem solved. Unless you patent the patch, you can't stop this. And then, the patch wouldn't be GPL'ed either.

This isn't unethical either. Its one of the points of GPL that the source is available for all to study and learn from...

GPL 3 would stop the patent issue. Subject to testing in court. And subject to software patents being mostly US-specific. And subject to the code base moving forward enough under GPL3 to make backwards compatability with a GPL2 fork no longer trivial to preserve. But that's just an aside to an argument that will remain hypothetical forever anyway as I can't see any main MySQL branch moving to it.

The real issues are simply how much work would be involved in re-writing the code and whether your version was different enough that you could defend it as not being a disguised copy paste. I think the latter would never actually arise, but the former would be a nuisance. Not a showstopper - I think you're right this could be done, but it would be annoying and become more annoying as time went on and the forks grew further apart. Any Open Source features of significance that Oracle cares about are probably going to be quite large ones to re-implement. The big one would be the Falcon table type.

Re:Not as serious... (3, Insightful)

harryandthehenderson (1559721) | more than 5 years ago | (#28046027)

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.

Re:Not as serious... (1)

Locke2005 (849178) | more than 5 years ago | (#28046343)

You are assuming Oracle want MySQL to continue to thrive. Personally, I believe the bought Sun just to get control of MySQL so they could kill it, since it was taking sales away from them. But this won't be totally effective; we need to get all the MySQL users to rally behind one of the forks not controlled by Oracle.

This need not be Bad News. (1)

anonymousNR (1254032) | more than 5 years ago | (#28045957)

Really this need not bad news.
This is all part of an opensource product life cycle.
It had its peak time, still being used in some great projects.
In good hands would still have a great future.

Re:This need not be Bad News. (0)

Anonymous Coward | more than 5 years ago | (#28046041)

In good hands would still have a great future.

And then Oracle bought it and shot that dream right in the ass. Used an Oracle product lately? They freaking SUCK. I don't imagine buying out Sun will suddenly shoot a magic bea

Re:This need not be Bad News. (1, Funny)

Anonymous Coward | more than 5 years ago | (#28046045)

This is the most poetic comment I have ever read on Slashdot. It calmed me.

The obvious solution (0)

Anonymous Coward | more than 5 years ago | (#28045971)

Too many forks? Just create another fork.

What usually happens is a fork progresses to the point where all the developers want to re-write all the code from scratch anyway. Just skip to that.

Re:The obvious solution (1)

harryandthehenderson (1559721) | more than 5 years ago | (#28046071)

Rewriting codebases unnecessarily. The classic syndrome of open sores software!

Re:The obvious solution (1)

larry bagina (561269) | more than 5 years ago | (#28046663)

I'd say open sores has the opposite problem. If something is "good enough", people use that (either the app or the code) instead of writing new, better code. Times change. Faster CPUs, more memory, multiple processors, threading, improved libraries, better algorithms, better security practices, better understanding of end requirements, etc.

One obvious question (1)

jd (1658) | more than 5 years ago | (#28046005)

How much of MySQL can be split off entirely and developed as a "common" frontend or a "common" backend? If there's a specific module or layer that everyone can more-or-less agree on in terms of code and API, then make that your "MySQL" and make the rest a dependency where the variations are interchangeable.

The benefit of this kind of approach is that you can have something that can be highly tuned and yet benefit from the large existing programmer base. But it only works if you can split the code meaningfully and keep the interface across the split stable.

(GCC is close-ish to this sort of idea - anyone can fork a frontend or develop a whole new one without colliding with the backend developers, but the interface is far more fluid. Which is fair enough for a compiler, but won't work if you're talking databases. glibc/newlib/ulibc could also be considered similar in that they're fairly interchangeable but that's a special case.)

PostgreSQL: Why don't people use it that much? (5, Interesting)

bogaboga (793279) | more than 5 years ago | (#28046009)

I have always wondered why people do not use PostgreSQL that much. It is better [tweakers.net] 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 [slashdot.org] at Slashdot who think MySQL is better. My experience suggests otherwise.

Re:PostgreSQL: Why don't people use it that much? (4, Informative)

diegocgteleline.es (653730) | more than 5 years ago | (#28046115)

Postgresql has a terrible marketing and image, mysql doesn't.

Re:PostgreSQL: Why don't people use it that much? (0)

Anonymous Coward | more than 5 years ago | (#28046237)

It's true MySQL has a cute name, whereas nobody is really sure how to pronounce PostgreSQL and their icon is a big elephant. Well makes sense for a database system I guess...

Re:PostgreSQL: Why don't people use it that much? (2, Funny)

ppanon (16583) | more than 5 years ago | (#28046923)

Yeah, having Dick Cheney as a spokesman really hurt them. Potential customers confuse "extensible data types for queries" with "enhanced interrogation techniques".

Re:PostgreSQL: Why don't people use it that much? (0)

Anonymous Coward | more than 5 years ago | (#28046131)

Damn, you have done a LOT of testing to come to your conclusion. Do you have a blog? if so, I would like to subscribe.

Re:PostgreSQL: Why don't people use it that much? (5, Insightful)

Anonymous Coward | more than 5 years ago | (#28046149)

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.

Re:PostgreSQL: Why don't people use it that much? (2, Informative)

K. S. Kyosuke (729550) | more than 5 years ago | (#28046541)

I am not certain whether any form of "feature complete" counts when "final releases" are filled with bugs. MySQL might have been stable when its feature set was next to nil, but I will sooner return to FoxBase than to prefer MySQL 5. over Firebird (or PostgreSQL). PostgreSQL is has been actually *designed*. And it shows. Without good design, sustained performance improvements such as these [kaltenbrunner.cc] and feature improvements such as these are unthinkable. [hagander.net]

Re:PostgreSQL: Why don't people use it that much? (1)

mzs (595629) | more than 5 years ago | (#28046785)

Also indexing was REALLY slow and to backup you needed to take the db offline early on.

Re:PostgreSQL: Why don't people use it that much? (1)

chabotc (22496) | more than 5 years ago | (#28046155)

Anecdote != fact

A very important thing to keep in mind. For instance for you 'databases and tables corrupted', for thousands of others though this never occurred.

Re:PostgreSQL: Why don't people use it that much? (1)

harryandthehenderson (1559721) | more than 5 years ago | (#28046283)

Anecdote != fact

Unless he is making it up his anecdote would be a fact. You seem to have confused this with saying that anecdotal evidence is not generalized scientific evidence.

Re:PostgreSQL: Why don't people use it that much? (2, Insightful)

jd (1658) | more than 5 years ago | (#28046269)

Well, yes, PostgreSQL is good. So is Ingres, now that there's a GPL version. Even fewer people use that. (Hell, I don't even know a distro that has Ingres packages.)

And, of course, those are only a few of the database engines out there. When you consider the sheer number of different types of database there are (hierarchical, relational, OLAP, object-oriented, indexed sequential flatfile, random access sequential, and so on), it's obvious that there's a lot of room for specialist engines.

Chances are, though, that users don't have meaningful access to even a fraction of the engines out there, or any sensible way to compare what their requirements are with the types of engines they can choose between.

Open Source is all about choice, but without the information or the means to make that choice, the choice is essentially an empty one.

Re:PostgreSQL: Why don't people use it that much? (3, Interesting)

larry bagina (561269) | more than 5 years ago | (#28046703)

debian has packages for firebird. Two in fact, classic (uses separate processes) and superserver (uses threads).

Re:PostgreSQL: Why don't people use it that much? (1)

langelgjm (860756) | more than 5 years ago | (#28046277)

My, what extensive experience you having using MySQL!

Seriously though, the MySQL databases in MythTV do seem to get corrupted a lot. I use KnoppMyth, so the fix is usually just a simple "optimize_db", but it happens often enough that I've thought of automating the process.

Re:PostgreSQL: Why don't people use it that much? (1, Interesting)

Anonymous Coward | more than 5 years ago | (#28046311)

PostgreSQL is quite a nice database.

It's a shame it has such a crappy SQL parser and contains only overthought, overblown versions of otherwise simple everyday functions.

Seriously, I have to use "QuotedIdentifiers"? Bite me. Even MS SQL Server doesn't require delimiters. And in the few cases where you get an ambiguous reference, it tells you that in plain english. And then it allows you to use "Quotes" or [Brackets]. Or you can sometimes just specify the object hierarchy. (Example: DatabaseName.OwnerName.TableName.ColumnName won't return an error even if just ColumnName will.)

And then there's the increment functions. MySQL is a bit lacking, with only AUTO_INCREMENT and LAST_INSERT_ID. SQL Server has a similar setup to MySQL using IDENTITY(start, step) and SCOPE_IDENTITY(). But PostgreSQL uses that atrocious monstrosity of SERIAL data types and a damned Sequence object. And heaven help you if the Sequence gets out of sync. Your data is fucked at that point. The DB engine won't fix it. You aren't allowed to fix it. And the next time your app tries to use it, there's a good likelihood that it will lose data.

MySQL using InnoDB is tolerable. PostgreSQL is safer. But to be perfectly honest, I'm growing to actually like MS SQL Server. It's as simple and flexible as MySQL, and has the data integrity of PostgreSQL. Oh, and it makes stored procedures easy too. All at the same price as either of them. (OK, it's free-as-in-beer for the Express edition. It's under $50 for the "developer" edition, which is a full enterprise license with unenforced restrictions. Spending thousands on SQL Server is for suckers.)

Re:PostgreSQL: Why don't people use it that much? (5, Insightful)

vadim_t (324782) | more than 5 years ago | (#28046569)

And then there's the increment functions. MySQL is a bit lacking, with only AUTO_INCREMENT and LAST_INSERT_ID. SQL Server has a similar setup to MySQL using IDENTITY(start, step) and SCOPE_IDENTITY(). But PostgreSQL uses that atrocious monstrosity of SERIAL data types and a damned Sequence object. And heaven help you if the Sequence gets out of sync. Your data is fucked at that point. The DB engine won't fix it. You aren't allowed to fix it. And the next time your app tries to use it, there's a good likelihood that it will lose data.

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.

Re:PostgreSQL: Why don't people use it that much? (0)

Anonymous Coward | more than 5 years ago | (#28046453)

In my case the reason is real-time replication to remote slaves, which seems a lot easier with mysql than with postgres

PostgreSQL FTMFW (-1)

Anonymous Coward | more than 5 years ago | (#28046679)

When Oracle took over MySQL, I ditched MySQL and never looked back. Postgres is easier to install, especially on a Winblows platform, easier to manager and administer, has all the features I need, runs nonstop like a juggernaut and just simply works.

Postgres -- For The Mother F--ckin Win!

PostgreSQL (0)

Anonymous Coward | more than 5 years ago | (#28046015)

Just move to PostgreSQL. Jeez!

A forked turd still smells.

Haven't we be here already? (1, Insightful)

Anonymous Coward | more than 5 years ago | (#28046017)

The REAL MySQL is whichever has the trademarks. MariaDB will be another RMSDB. May even be better than MySQl, but it won't be MySQL.

One thing most FOSS people have to learn. In the corporate world, developers are resources, they are not what makes the product. The product is made by the Company, using whichever resources it has (cash, materials, people, etc).

Official is irrelevant (1)

davidwr (791652) | more than 5 years ago | (#28046055)

If the unofficial one gets broader support, it will probably get a new name and MySQL will become irrelevant.

MySql (5, Interesting)

inKubus (199753) | more than 5 years ago | (#28046087)

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 [oracle.com] . 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.

Re:MySql (1)

jd (1658) | more than 5 years ago | (#28046287)

Surely you want a high-level authentication mechanism like SASL, and allow the mechanism to use underlying engines like Kerberos.

Re:MySql (1)

inKubus (199753) | more than 5 years ago | (#28046699)

Sure, but Mysql doesn't have that. Here's a really old worklog [mysql.com] for pluggable authentication. There's a blog [mysql.com] on it also.

Re:MySql (3, Insightful)

loufoque (1400831) | more than 5 years ago | (#28046601)

Personally, I think SQLite3 (4) is going to be the database of choice for small web hosts very soon. Small, portable, fast enough.

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.

Re:MySql (0)

Anonymous Coward | more than 5 years ago | (#28046847)

Personally, I think SQLite3 (4) is going to be the database of choice for small web hosts very soon. Small, portable, fast enough.

Although there's been a push against it, I wouldn't have objected if Hixie had spec'd sqlite for DOM storage on the client. SQLite is untyped which I think is a more sensible approach anyway even if it makes DBA's wince. "let the db do the work" they say, so we create indicies, triggers and views but programers cannot avoiding type checks and/or casting. These days I only use a few data types, storing dates as int, IP's (long form) as int and so on. Not only is code like that more portable, it saves me having to remember datatypes for whatever db I'm working with this week.

SQLite has issues with write concurrency and I'd like to see a simple, single user daemon using unix sockets (named pipes on win). In keeping with the lite design, access control for this userspace daemon should be provided by the file system not some master table. With something like that, most of us could probably avoid ever having to deal with heavyweight databases ever again.

Forked != Borked (-1, Redundant)

Anonymous Coward | more than 5 years ago | (#28046129)

NT

How healthy are forks? (3, Interesting)

rockmuelle (575982) | more than 5 years ago | (#28046345)

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

Oracle doesn't care (4, Insightful)

Reality Master 201 (578873) | more than 5 years ago | (#28046373)

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.

FUBAR (0, Redundant)

Locke2005 (849178) | more than 5 years ago | (#28046423)

The question is not "Has MySQL Forked Beyond Repair?", but rather "Has MySQL been Forked Up Beyond All Repair?"

And Oracle should care...why? (1)

swordgeek (112599) | more than 5 years ago | (#28046755)

I don't know this for sure, but I can't imagine that Oracle bought Sun for the sake of acquiring MySQL. In fact, the only thing they really might be interested in it for is to destroy it.

Sure, they could nurture it along, make it the entry-level to REAL (i.e. Oracle) databases, but that's expensive, uncertain, and seldom profitable in the long run. Crushing it in-house, encouraging division and fractionation in the community, and letting it become another piece of roadkill is easier and more effective.

HOWEVER, I doubt they'll bother. MySQL doesn't compete with Oracle, and it's not good enough (no, really--it's not) to foster from their commercial point of view. Realistically, they'll let it sit there, doing its thing, while they concentrate on what they bought Sun for: Vertical integration, bundled solutions, and a complementary server line and OS for their software.

Thinking that Oracle CARES much about MySQL is almost certainly a conceit.

Wah wah wah just use PostgreSQL wah wah wah. (-1)

Anonymous Coward | more than 5 years ago | (#28046827)

Wah wah wah just use PostgreSQL wah wah wah. +5 insightful.
Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Create a Slashdot Account

Loading...