Search Postgresql Archives

Re: Transactional DDL

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Harpreet Dhaliwal wrote:
> 
> 
> On 6/2/07, *Jasbinder Singh Bali* <jsbali@xxxxxxxxx
> <mailto:jsbali@xxxxxxxxx>> wrote:
> 
> 
> 
>     On 6/2/07, *Michael Glaesemann* < grzm@xxxxxxxxxxxxxxx
>     <mailto:grzm@xxxxxxxxxxxxxxx>> wrote:
> 
> 
>         On Jun 2, 2007, at 11:08 , Harpreet Dhaliwal wrote:
> 
>         > Whats so novel about postgresql here?
>         > This would happen in any RDBMS. right?
>         > You induced divide by zero exception that crashed the whole
>         > transaction and it did not create the table bar?
> 
>         [Please don't top-post. It makes the discussion hard to follow.]
> 
>         I used the divide by zero to raise an error to show that both the
>         CREATE TABLE and the INSERT were rolled back when the transaction
>         failed. If there's another definition of transactional DDL, I'd like
>         to know what it is.
> 
>         Michael Glaesemann
>         grzm seespotcode net
> 
> 
>     This is what happens in every RDBMS. 

No, it doesn't

>     Whats so special about postgres
>     then?
>      
> 
> 
> 
> Exactly. this seems like proving the ACIC property of a database thats
> true for every RDBMS.
> Whats so different in postgresql then?

Try doing the same test in MySQL (using InnoDB so you get a supposedly
ACID compliant table type).

Or even in Oracle.

You'll find that the table create gets committed *implicitly*, and the
rollback will only rollback the insert, not the table create.

The point is that most RDBMS systems treat DDL a little differently and
force transaction commit when they are executed. Postgres does not.




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux