Re: BUG #5566: High levels of savepoint nesting trigger stack overflow in AssignTransactionId - Mailing list pgsql-bugs

From Andres Freund
Subject Re: BUG #5566: High levels of savepoint nesting trigger stack overflow in AssignTransactionId
Date
Msg-id 201007192235.43002.andres@anarazel.de
Whole thread Raw
In response to Re: BUG #5566: High levels of savepoint nesting trigger stack overflow in AssignTransactionId  (Andres Freund <andres@anarazel.de>)
Responses Re: BUG #5566: High levels of savepoint nesting trigger stack overflow in AssignTransactionId  (Andres Freund <andres@anarazel.de>)
Re: BUG #5566: High levels of savepoint nesting trigger stack overflow in AssignTransactionId  (Robert Haas <robertmhaas@gmail.com>)
List pgsql-bugs
On Monday 19 July 2010 20:32:49 Andres Freund wrote:
> On Monday 19 July 2010 20:19:35 Heikki Linnakangas wrote:
> > On 19/07/10 20:58, Andres Freund wrote:
> > > On Monday 19 July 2010 19:57:13 Alvaro Herrera wrote:
> > >> Excerpts from Andres Freund's message of lun jul 19 11:58:06 -0400
2010:
> > >>> It seems easy enough to throw a check_stack_depth() in there -
> > >>> survives make check here.
> > >>
> > >> I wonder if it would work to deal with the problem non-recursively
> > >> instead.  We don't impose subxact depth restrictions elsewhere, why
> > >> start now?
> > >
> > > It looks trivial enough, but whats the point?
> >
> > To support more than <insert abitrary limit here> subtransactions,
> > obviously.
>
> Well. I got that far. But why is that something worthy of support?
> For one I have a hard time imaging a sensible use case, for another doing
> anything in that deeply nested transactions seems to gets really slow (the
> chain of transactions gets walked at some places for one thing, there seem
> to be others).
>
> If want I can write a patch for that as well, seems to be trivial enough.
Updated patch attached.


Andres

pgsql-bugs by date:

Previous
From: Dave Page
Date:
Subject: Re: PG 9.0 Solaris compile error on Sparc
Next
From:
Date:
Subject: Odd behavior of SELECT INTO in PL/pgSQL