[prev] [thread] [next] [lurker] [Date index for 2007/03/21]
A. Pagaltzis writes:
> Now granted, v5 has finally added a strict mode or whatever it's
> called, where this kind of constraint violation throws an error
> instead of silently mangling your data. But IT TOOK THEM FIVE VERSIONS
> to put that in, AND THEN IT'S STILL NOT THE DEFAULT.
Ah, yes, the "version N+1" problem: everything you think you might want
out of MySQL is supported (somehow, even if brokenly and hatefully) in
the version _after_ the one that's available on your production servers.
(Actually, sometimes MySQL makes it version N+k, to give you some light
relief.) I believe the "version N+1" phrasing is due to Smylers (the
original poster in this thread), circa 2000. It's still true. Seven
years later. Still true.
> Or here, another case that was recently posted on use.Perl:
>
> mysql> CREATE TEMPORARY TABLE the_dates (d DATE NOT NULL DEFAULT '0000-00-00');
> mysql> INSERT INTO the_dates VALUES ('0000-00-00');
> mysql> SELECT COUNT(*) FROM the_dates WHERE d IS NOT NULL;
> +----------+
> | 1 |
> +----------+
> mysql> SELECT COUNT(*) FROM the_dates WHERE d IS NULL;
> +----------+
> | 1 |
> +----------+
>
> *boggle* HOW does anyone conceive of THAT sort of braindamage?
Yep, saw that a couple of years ago. (Before hates-software existed, or
I suspect I'd've ranted about it at that time.) Just for fun, try and
work out what sort of data structure they use that thinks a given value
is simultaneously NULL and not-NULL. Truly mind-blowing.
> You'll find loads of horror stories like that if you dig in even
> a little.
I'd like to think that I've seen my share of MySQL horror stories.
Disappointingly, MySQL doesn't agree: there's always another one just
a week or two round the corner. An alarmingly-large proportion of my
commits seem to contain mini-rants about some newly-discovered MySQL
idiocy.
> This stuff is... not even wrong. I mean, I'm starting to have
> trouble even *hating* MySQL anymore. It's like a retard kid that
> you just can't help kinda pitying.
The kindest thing you can say about MySQL is that if you use an unstable
beta release _and_ you carefully configure it to be non-broken to the
extent possible, it's not quite as bad as it was in the MySQL 3.22 days.
But for me it still inspires hate, not pity.
--
Aaron Crane
There's stuff above here
Generated at 14:43 on 31 Mar 2007 by mariachi 0.52