Brian Aker wrote:
Hi!

In working on replication I end up in our transaction code. Today DDL causes whatever transaction that is in play to commit.

Is this really a good behavior?

Strictly as a *user* I find it surprising that DDL does sneaky commits behind the scenes.

Consider this:

BEGIN;
/* do some stuff */
CREATE TEMPORARY TABLE foo ....
/* do some more stuff */
DROP TABLE foo;
/* do some more stuff */
ROLLBACK;


The trouble is that the "DROP TABLE" did a commit behind the scenes. Sure, sure, if I had done "DROP TEMPORARY TABLE foo" it would not have.

But I continue to dislike the that some statements do a COMMIT silently.

However, if there is a strong argument from an SQL Standards persepective, I guess I could understand being compliant.



I am looking at cleaning up the API so that an engine will be able to do transactional DDL (assuming it can handle it). This piece of behavior is going to cause this to become... messy.

Should we toss an error on DDL if the engine does support it transactionally? Current behavior good enough/would break too much to change?

I think so.


What is the proper behavior?

Anyone know what other database do?


Cheers,
 -Eric



Cheers,
    -Brian

--
_______________________________________________________
Brian "Krow" Aker, brian at tangent.org
Seattle, Washington
http://krow.net/                     <-- Me
http://tangent.org/                <-- Software
_______________________________________________________
You can't grep a dead tree.




_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp



--
http://www.freesa.org/ -- mobile: +31 620719662
aim: ericigps -- skype: eric_herman -- jabber: [EMAIL PROTECTED]

_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to