drizzle-discuss team mailing list archive
-
drizzle-discuss team
-
Mailing list archive
-
Message #05640
Re: Improving the Engine API
Jay Pipes wrote:
Well, I'm not a huge fan of implicit anything, as you know, but in this
case, since engines do have a certain leeway in how they advise the
kernel that they will handle a statement, I'm OK with continuing the
existing MySQL behaviour of implicitly committing transactions before
DDL statements are executed -- but in Drizzle's case, only if the engine
advises it is unable to include the DDL in the current transaction.
Err, including DDL in the current transaction does raise some other
issues. Falcon is capable of executing the DDL statement without
ending the current transaction. Effectively, the DDL executes in
a separate concurrent transaction which commits when the DDL statement
finishes, without affecting the running user transaction. That's not
the same as including the DDL in the current transaction, at least
not the way I understand transactions.
For DDL statements to be included, they should create structures
that are visible to and usable from the current transaction and
none other. If the transaction rolls back, the metadata changes
roll back with it. If the transaction commits, the new metadata
elements are visible to new transactions as they start - or old
transactions if they make their initial reference to the new thing
after it's committed.
I don't know of any database systems that handle metadata changes
that way, so including DDL in transactions may be ambitious.
Cheers,
Ann
Follow ups
References
-
New PBXT Drizzle-specific storage engine...
From: Jay Pipes, 2009-11-19
-
Improving the Engine API (was Re: New PBXT Drizzle-specific storage engine...)
From: Paul McCullagh, 2009-12-03
-
Re: Improving the Engine API (was Re: New PBXT Drizzle-specific storage engine...)
From: Jay Pipes, 2009-12-03
-
Re: Improving the Engine API (was Re: New PBXT Drizzle-specific storage engine...)
From: Paul McCullagh, 2009-12-03
-
Re: Improving the Engine API (was Re: New PBXT Drizzle-specific storage engine...)
From: Jay Pipes, 2009-12-03
-
Re: Improving the Engine API (was Re: New PBXT Drizzle-specific storage engine...)
From: Brian Aker, 2009-12-03
-
Re: Improving the Engine API (was Re: New PBXT Drizzle-specific storage engine...)
From: Paul McCullagh, 2009-12-03
-
Re: Improving the Engine API (was Re: New PBXT Drizzle-specific storage engine...)
From: Brian Aker, 2009-12-03
-
Re: Improving the Engine API (was Re: New PBXT Drizzle-specific storage engine...)
From: Paul McCullagh, 2009-12-04
-
Re: Improving the Engine API (was Re: New PBXT Drizzle-specific storage engine...)
From: Brian Aker, 2009-12-04
-
Re: Improving the Engine API (was Re: New PBXT Drizzle-specific storage engine...)
From: Paul McCullagh, 2009-12-07
-
Re: Improving the Engine API (was Re: New PBXT Drizzle-specific storage engine...)
From: Jay Pipes, 2009-12-07
-
Re: Improving the Engine API
From: Paul McCullagh, 2009-12-07
-
Re: Improving the Engine API
From: Jay Pipes, 2009-12-07
-
Re: Improving the Engine API
From: Paul McCullagh, 2009-12-08
-
Re: Improving the Engine API
From: Jay Pipes, 2009-12-08
-
Re: Improving the Engine API
From: Paul McCullagh, 2009-12-08
-
Re: Improving the Engine API
From: Jay Pipes, 2009-12-08