On May 22, 2008, at 9:25 PM, Q wrote:

Is there anything else I need to do in order to produce ACID transactions with WO? It doesn't hurt to be buzzword compliant you know ;-)

I am not sure about 5.1, but last time I tested MySQL 5.0 with it's default configuration (but using InnoDB), it was in my opinion NOT ACID compliant. InnoDB might be ACID compliant, but MySQL itself isn't.

One of the edicts of ACID is data consistency throughout the course of a transaction. If the transactions leaves the database in an illegal start then the transaction should be aborted and rolled back. MySQL doesn't actually do this, instead of aborting the transaction it will quietly alter the invalid data that it was provided, eg. shorten a string, alter a date, truncate an integer, etc so that it no longer violates the integrity constraint and then commits it anyway.

Eeeeew!  Now I know why I never used MySQLToy.


This results in a situation where the data that you thought you successfully inserted into the database is different from what you will get back later, which in my opinion should NEVER happen, EVER. EOF will shield you from most of this if your model and validation is decent, but it's a risk to your data that you will always need to keep at the back of your mind.

Using an enterprise level database such as Frontbase or PostgreSQL is also worth considering.


Amen.

Chuck

--

Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
http://www.global-village.net/products/practical_webobjects





_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to