Re: 'SET LOCAL ROLE blah;' doesn't work? - Mailing list pgsql-bugs

From Stephen Frost
Subject Re: 'SET LOCAL ROLE blah;' doesn't work?
Date
Msg-id 20070629022804.GU7531@tamriel.snowman.net
Whole thread Raw
In response to Re: 'SET LOCAL ROLE blah;' doesn't work?  (Alvaro Herrera <alvherre@commandprompt.com>)
Responses Re: 'SET LOCAL ROLE blah;' doesn't work?  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
* Alvaro Herrera (alvherre@commandprompt.com) wrote:
> Tom Lane wrote:
> > 2007-06-28 22:02:14.418 EDT 2870 LOG:  statement: begin;
> > 2007-06-28 22:02:26.044 EDT 2870 LOG:  statement: SAVEPOINT pg_psql_tem=
porary_savepoint
> > 2007-06-28 22:02:26.045 EDT 2870 LOG:  statement: set local role tgl;
> > 2007-06-28 22:02:26.047 EDT 2870 LOG:  statement: RELEASE pg_psql_tempo=
rary_savepoint
> > 2007-06-28 22:02:57.545 EDT 2870 LOG:  statement: SAVEPOINT pg_psql_tem=
porary_savepoint
> > 2007-06-28 22:02:57.546 EDT 2870 LOG:  statement: show role;
> > 2007-06-28 22:02:57.548 EDT 2870 LOG:  statement: RELEASE pg_psql_tempo=
rary_savepoint
> >=20
> > So actually, ON_ERROR_ROLLBACK breaks *any* use of SET LOCAL, not just
> > ROLE.  Not sure that this is fixable :-(
>=20
> Maybe if psql sees "SET LOCAL" it shouldn't send the RELEASE command.
> But it seems a bit error prone to be finding each command that may be
> affected by RELEASE ... what other thing do we have that works at the
> level of subtransactions?

At the very least, anything which does work at the subtransaction level
and not the transaction level should be documented as such...  I don't
see anything (perhaps I've missed it) in the 'set local' or the 'release
savepoint' documentation which describes this behavior... :/  Perhaps
I've misunderstood, but generally when we say 'transaction', we're
meaning the a 'full' one and not a savepoint/release in the
documentation.  The 'SET LOCAL' documentation even talks explicitly
about COMMIT and ROLLBACK being what causes a reset, RELEASE isn't
mentioned.

    Thanks,

        Stephen

pgsql-bugs by date:

Previous
From: Stephen Frost
Date:
Subject: Re: 'SET LOCAL ROLE blah;' doesn't work?
Next
From: Tom Lane
Date:
Subject: Re: 'SET LOCAL ROLE blah;' doesn't work?