Hi Roland
On 17/12/2008, at 1:21 PM, Roland Bouman wrote:
On Wed, Dec 17, 2008 at 3:09 AM, Arjen Lentz
<[email protected]> wrote:
I'm still not convinced this is relevant to this matter ;-)
I'm pretty sure it is. All the "do the best you can and keep
going" logic
is not just something Monty cooked up out of thin air, it's a direct
consequence of having to deal with a non-transactional storage
engine! It's
the coping mechanism.
I don't see why a coping mechanism should choose to 'keep going'. It
could just as well stop instead.
That's a debate on which "do the best you can" behaviour is considered
most appropriate.
For Monty, the choice was "keep going".
Hence the need for default values on every column, autocasting, string
truncation and value-bounds behaviour.
I know it is no use arguing MySQL
should change behaviour, but my point still remains that the choice
for this particular 'keep going' coping mechanism has in itself
nothing to do with transactions. If it would, why is the same coping
mechanism used even with transactional tables?
Because the logic is higher up in the server, and oblivious of which
engine lies underneath.
In MySQL 5.0, a number of the SQL mode settings actually "deal" with
some of these aspects, but not all.
Drizzle is removing the core reason to need this (non-transactional
engines), thus cascading the reasoning to the point where we can
also get
rid of this type of "do the best you can" logic. On invalid input
you chuck
an error, simple.
I wasn't aware drizzle was abandoning the MEMORY and CSV and ARCHIVE
engines.
Wasn't archive is essentially transactional already?
The others would have to be fixed or replaced, not abandoned.
The advantages of getting rid of the non-transactional aspects in the
MySQL core are tremendous.
A lot of misbehaviour and also performance is magically resolved then.
Cheers,
Arjen.
--
Arjen Lentz, Director @ Open Query (http://openquery.com.au)
Training and Expertise for MySQL and related tools
OurDelta: free enhanced builds for MySQL @ http://ourdelta.org
_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help : https://help.launchpad.net/ListHelp