2013/8/21 Marko Tiikkaja <ma...@joh.to> > Hi, > > By default, PL/pgSQL does not print the error context of a RAISE > statement, for example: > > =# create function foof() returns void as $$ begin raise exception 'foo'; > end $$ language plpgsql; > CREATE FUNCTION > > =# create function bar() returns void as $$ begin perform foof(); end $$ > language plpgsql; > CREATE FUNCTION > > =# select bar(); > ERROR: foo > CONTEXT: SQL statement "SELECT foof()" > PL/pgSQL function "bar" line 1 at PERFORM > > > I find this extremely surprising, since if you raise the same exception > (or a DEBUG/NOTICE message) in multiple places, the error context is > missing valuable information. With a trivial change the last error could > be: > > =# select bar(); > ERROR: foo > CONTEXT: PL/pgSQL function "foof" line 1 RAISE > SQL statement "SELECT foof()" > PL/pgSQL function "bar" line 1 at PERFORM > > which I find a lot better. >
+1 Pavel > > Thoughts? > > > Regards, > Marko Tiikkaja > > > -- > Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/**mailpref/pgsql-hackers<http://www.postgresql.org/mailpref/pgsql-hackers> >