Re: Questions about Rollback - after insert, update, - Mailing list pgsql-general

From Scott Marlowe
Subject Re: Questions about Rollback - after insert, update,
Date
Msg-id 1127418199.30825.76.camel@state.g2switchworks.com
Whole thread Raw
In response to Questions about Rollback - after insert, update, delete ... operations?  (Emi Lu <emilu@cs.concordia.ca>)
Responses Re: Questions about Rollback - after insert, update,
List pgsql-general
On Thu, 2005-09-22 at 14:20, Emi Lu wrote:
> greetings,
>
> I remembered I read something in the mailing list about "*rollback*" a
> while ago. People mentioned that some operations cannot rollback.
> I cannot remember what kinds of perations are not be able to rollback?

create database and drop database cannot be rolled back, since
transactions live within a database.  Used to be that truncate couldn't
be, but I think it can now.

I don't think there are any other commands that can't be rolled back.
Certainly simple DML (data manipulation language) stuff can all be
rolled back now.  It's always been an issue for certain DDL (data
definition language) to be roll backable.  (<-- not a word, but the only
way I can think to say it)

>
> For example,
>
> begin
>     ... ...
>     insert
>     ... ...
>     delete
>     ... ...
>     update
>     ... ...
>
>     /* If any of the above operation failed, we can rollback all the
> above operations? */
>     rollback
>     ... ...
> end
>
>
> Will all "Insert, delete, update" operations rollback if any of the
> operations fails?

Yep.  Unless you set a savepoint, any error will result in all of a
transaction being rolled back.  You don't get a choice, without a save
point.   It will be rolled back.

pgsql-general by date:

Previous
From: Emi Lu
Date:
Subject: Questions about Rollback - after insert, update, delete ... operations?
Next
From: Todd Eddy
Date:
Subject: Replicating new sequences