Re: Transactional DDL - Mailing list pgsql-general

From Russ Brown
Subject Re: Transactional DDL
Date
Msg-id 4661BC86.1000000@gmail.com
Whole thread Raw
In response to Re: Transactional DDL  ("Harpreet Dhaliwal" <harpreet.dhaliwal01@gmail.com>)
Responses Re: Transactional DDL  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Transactional DDL  ("Jaime Casanova" <systemguards@gmail.com>)
List pgsql-general
Harpreet Dhaliwal wrote:
>
>
> On 6/2/07, *Jasbinder Singh Bali* <jsbali@gmail.com
> <mailto:jsbali@gmail.com>> wrote:
>
>
>
>     On 6/2/07, *Michael Glaesemann* < grzm@seespotcode.net
>     <mailto:grzm@seespotcode.net>> 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.



pgsql-general by date:

Previous
From: Ron Johnson
Date:
Subject: Re: Transactional DDL
Next
From: Ron Johnson
Date:
Subject: Re: Transactional DDL