Re: transaction error handling - Mailing list pgsql-admin

From Kevin Grittner
Subject Re: transaction error handling
Date
Msg-id 4ED4D63402000025000435E8@gw.wicourts.gov
Whole thread Raw
In response to transaction error handling  (Kasia Tuszynska <ktuszynska@esri.com>)
Responses Re: transaction error handling  (Kasia Tuszynska <ktuszynska@esri.com>)
List pgsql-admin
Kasia Tuszynska <ktuszynska@esri.com> wrote:

> Oracle:
> Begin transaction
> Insert - no error
> Implicit savepoint
> Insert - error raised
> Implicit rollback to the savepoint, no transaction loss, error
> raised on the insert statement that errored out.
> End transaction, implicit commit, with the single error free
> insert.
>
> Postgres:
> Begin transaction
> Insert - no error
> Insert - error raised
> Transaction loss = no implicit rollback to the single error free
> insert.
>
> Is this a correct interpretation of the Postgres transaction error
> handling?

Well, in psql you can set ON_ERROR_ROLLBACK so that each statement
will be automatically preceded by a SAVEPOINT which will be
automatically rolled back if the statement has an error.  There are
various constructs for accomplishing this in supported PLs,
depending on the language.

I'm not aware of any "explicitly start a transaction but guess at
whether a commit is intended" feature in PostgreSQL.  An explicit
transaction is committed if and when you say so.

-Kevin

pgsql-admin by date:

Previous
From: Scott Marlowe
Date:
Subject: Re: Deadlock on "select ... for update"?
Next
From: Kasia Tuszynska
Date:
Subject: Re: transaction error handling