Re: [BUGS] BUG #4203: perform dblink() in begin/exception returns wrong SQLSTATE code - Mailing list pgsql-patches

From Tom Lane
Subject Re: [BUGS] BUG #4203: perform dblink() in begin/exception returns wrong SQLSTATE code
Date
Msg-id 28467.1212362389@sss.pgh.pa.us
Whole thread Raw
In response to Re: [BUGS] BUG #4203: perform dblink() in begin/exception returns wrong SQLSTATE code  (Joe Conway <mail@joeconway.com>)
Responses Re: [BUGS] BUG #4203: perform dblink() in begin/exception returns wrong SQLSTATE code
List pgsql-patches
Joe Conway <mail@joeconway.com> writes:
> [ improved patch ]

Still a couple quibbles:

> +     ereport(level,
> +         (errcode(sqlstate),
> +          errmsg(message_primary),

This *must* be errmsg("%s", message_primary), else you have big problems
with % in the text.  Also, I think it's at least theoretically possible
for message_primary to be null, in which case you'd better substitute
"unknown error" or some such.

You could avoid the ugly cast-away-const by making
dblink_context_conname be const char *, no?

Since dblink_res_error isn't going to return if fail = true, seems
like you could skip the "if (!fail)" tests occurring after calls to it.

            regards, tom lane

pgsql-patches by date:

Previous
From: Joe Conway
Date:
Subject: Re: [BUGS] BUG #4203: perform dblink() in begin/exception returns wrong SQLSTATE code
Next
From: Joe Conway
Date:
Subject: Re: [BUGS] BUG #4203: perform dblink() in begin/exception returns wrong SQLSTATE code