Re: Access Error Details from PL/pgSQL

From: aasat <satriani(at)veranet(dot)pl>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Access Error Details from PL/pgSQL
Date: 2012-02-21 08:41:14
Message-ID: 1329813674128-5501584.post@n5.nabble.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I have question. GET STACKED DIAGNOSTICS work only in exception block? is it
posible to use it in separate function called in exception block?

EXCEPTION
WHEN others THEN
peform log_error();
END;

CREATE OR REPLACE FUNCTION log_error()
RETURNS boolean AS
$BODY$
declare
v_state TEXT;
v_msg TEXT;
v_detail TEXT;
v_hint TEXT;
v_context TEXT;
begin

GET STACKED DIAGNOSTICS
v_state = RETURNED_SQLSTATE,
v_msg = MESSAGE_TEXT,
v_detail = PG_EXCEPTION_DETAIL,
v_hint = PG_EXCEPTION_HINT,
v_context = PG_EXCEPTION_CONTEXT;
raise notice E'Got exception:
state : %
message: %
detail : %
hint : %
context: %', v_state, v_msg, v_detail, v_hint, v_context;
end;
$BODY$
LANGUAGE plpgsql VOLATILE;

--
View this message in context: http://postgresql.1045698.n5.nabble.com/Access-Error-Details-from-PL-pgSQL-tp5479926p5501584.html
Sent from the PostgreSQL - hackers mailing list archive at Nabble.com.

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Kyotaro HORIGUCHI 2012-02-21 09:42:34 Re: Speed dblink using alternate libpq tuple storage
Previous Message Marko Kreen 2012-02-21 07:41:18 Re: Speed dblink using alternate libpq tuple storage