From: | Scott Marlowe <smarlowe(at)g2switchworks(dot)com> |
---|---|
To: | emilu(at)cs(dot)concordia(dot)ca |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Questions about Rollback - after insert, update, |
Date: | 2005-09-22 19:43:19 |
Message-ID: | 1127418199.30825.76.camel@state.g2switchworks.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | 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.
From | Date | Subject | |
---|---|---|---|
Next Message | Todd Eddy | 2005-09-22 19:54:45 | Replicating new sequences |
Previous Message | Emi Lu | 2005-09-22 19:20:17 | Questions about Rollback - after insert, update, delete ... operations? |