Re: pgsql: Add GET DIAGNOSTICS ... PG_CONTEXT in PL/PgSQL

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Stephen Frost <sfrost(at)snowman(dot)net>
Cc: pgsql-committers(at)postgresql(dot)org
Subject: Re: pgsql: Add GET DIAGNOSTICS ... PG_CONTEXT in PL/PgSQL
Date: 2013-07-25 02:33:58
Message-ID: 25346.1374719638@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

Stephen Frost <sfrost(at)snowman(dot)net> writes:
> Add GET DIAGNOSTICS ... PG_CONTEXT in PL/PgSQL

I don't find it to be a terribly good idea that GetErrorContextStack
does FlushErrorState(). Doesn't that imply that it can't safely be
used from inside error processing, which is more or less exactly
where it is intended to be used? I would certainly think it surprising
that that call destroys all information about the error.

For the same reason, it's rather dubious that it uses ErrorContext as
working space. There might not be a heck of a lot of space left there,
and I don't think that construction of this string really counts as
error processing. It seems to me to be something done outside the error
subsystem.

regards, tom lane

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Stephen Frost 2013-07-25 03:03:41 Re: pgsql: Add GET DIAGNOSTICS ... PG_CONTEXT in PL/PgSQL
Previous Message Bruce Momjian 2013-07-25 02:01:59 pgsql: pg_upgrade: fix initialization of thread argument

Browse pgsql-hackers by date

  From Date Subject
Next Message Stephen Frost 2013-07-25 03:03:41 Re: pgsql: Add GET DIAGNOSTICS ... PG_CONTEXT in PL/PgSQL
Previous Message Michael Paquier 2013-07-25 00:44:53 Re: dynamic background workers, round two