tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Wareham" <>
Subject Re: PostgreSQL vs MySQL with Tomcat
Date Fri, 23 Jan 2009 16:03:58 GMT
Christopher Schultz wrote:
> Hash: SHA1
> Chris,
> Chris Wareham wrote:
>> I am particularly wary of MySQL because of the way missing features
>> have been disingenuously described as unnecessary, and broken
>> features as the MySQL developers knowing better than everyone else.
> Not to pick a fight, here, but I presume you are talking about your
> previous comment about foreign key constraints. The old documentation
> suggesting that developers were responsible for referential integrity
> wasn't, I think, meant to suggest that this was a cosmic truth. Instead,
> I think it was meant to indicate that, when using MySQL, it was simply
> the only way developers could operate.
> - -chris

No, the MySQL developers claimed they had "better paradigms". For
instance, they first claimed transactions weren't necessary, eventually
they said they would come up with something called "atomic operations",
but still advocated table locks instead. If you were performing inserts,
updates or deletes across a number of tables, then the first thing you
had to do was lock them *all* at the table level. To state the obvious,
locking at the table level means concurrent write access is going to be
very slow.

On foreign keys and referential integrity in general, the manual had
this to say:

"FOREIGN KEY is sometimes used as a constraint check, but this check is
unnecessary in practice if rows are inserted into the tables in the
right order."

Part of a database engine's job is to ensure data integrity - it
shouldn't rely on the application coder getting things perfectly right
every time, because they wont. Without referential integrity, failures
on the part of the coder to "do the right thing" are going to be hard to
catch. Without transactions, it becomes even harder to catch and to
recover from.

MySQL is optimised for read access, features to enforce data integrity
or optimise write access have always been low on the priority list. For
proof, read the MySQL manual's section on "Missing Features".

Chris Wareham
Senior Software Engineer
Visit London Ltd
6th floor,
2 More London Riverside, London SE1 2RR
Tel:  +44 (0)20 7234 5848
Fax: +44 (0)20 7234 5753

'Visit London Limited' is registered in England under No.761149;
Registered Office: Visit London, 2 More London Riverside, London SE1 2RR.

Visit London is the official visitor organisation for London. Visit London is partly funded
by Partnership, the Mayor's London Development Agency and London Councils.
The information contained in this e-mail is confidential and intended for the named recipient(s)
only.  If you have received it in error, please notify the sender immediately and then delete
the message.  If you are not the intended recipient, you must not use, disclose, copy or distribute
this email. The views expressed in this e-mail are those of the individual and not of Visit
London. We reserve the right to read and monitor any email or attachment entering or leaving
our systems without prior notice.
  Please don't print this e-mail unless you really need to.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message