Peter Eisentraut wrote:
Am Donnerstag, 5. Januar 2006 21:58 schrieb Scott Marlowe:
But it's not consistent. Imagine we do the one where we take one from
peter and give it to paul. If paul's account is stored in an int, and
is at 2147483647, and we add one, it does not increment, and it does not
cause an error that will force a transaction to roll back.
The effects of the commands on the database are not sensible with respect to
the intent of the commands, but the state of the database is consistent both
before and afterwards with respect to the integrity constraints defined
within the database. That's what this is all about. ACID is about
transaction processing, not about SQL data type semantics.
This is true, however, one can make a strong case that MySQL still has
issues with ACID complaincy. For example, how do you have an ACID
compliant full text index in MySQL? Basically there are features in
MySQL that depend on MyISAM tables and don't provide ACID compliance
where it might be needed.
In essence all of MySQL's data integrity issues aside, it has features
that are not ACID compliant that are ACID compliant with appropriate
add-ons in PostgreSQL.
Best Wishes,
Chris Travers