Skip site navigation (1) Skip section navigation (2)

Re: Basic subtransaction facility

From: Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>
To: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>,Patches <pgsql-patches(at)postgresql(dot)org>
Subject: Re: Basic subtransaction facility
Date: 2004-04-28 16:02:44
Message-ID: 20040428160244.GA3894@dcc.uchile.cl (view raw or flat)
Thread:
Lists: pgsql-patches
On Mon, Apr 26, 2004 at 11:30:16PM -0400, Bruce Momjian wrote:

> Alvaro, where are we on this patch.   I think the suggestion was to
> throw FATAL rather than add a new error level.

The assumption was that we would only want an additional level for
catching can't-happen conditions.  ISTM this is not true.  Consider an
out of memory error: do we want to only rollback the affected
subtransaction, or the whole transaction tree?  If we want the latter we
will have to invent a new elevel.

In fact, I think we should mark ERROR as aborting the whole transaction
tree, and create a new level which would abort the innermost
subtransaction.  We would then change whatever is appropiate to the new
elevel.  Doing otherwise would leave us open to unexpected conditions
causing only subtrans abort, which could lead to unreliable behavior.

In short, I think all elog(ERROR) should have different behaviour from
ereport(ERROR), at least.  And I don't think the answer should be
elog(FATAL) for the former.

-- 
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"Ni aun el genio muy grande llegaría muy lejos
si tuviera que sacarlo todo de su propio interior" (Goethe)

In response to

Responses

pgsql-patches by date

Next:From: David FetterDate: 2004-04-28 16:23:00
Subject: Re: Dollar quoting docs, round 1
Previous:From: Peter EisentrautDate: 2004-04-28 15:34:28
Subject: Re: FW: Timezone library

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group