Alvaro Herrera <alvherre@commandprompt.com> writes:
> Tom Lane wrote:
>> Can we throw some more specific SQLSTATE than the default "internal
>> error" here?
> Hmm. I looked at the extant list, and found that the contrib/xml2 code
> uses ERRCODE_EXTERNAL_ROUTINE_EXCEPTION whereas pgcrypto uses
> ERRCODE_EXTERNAL_ROUTINE_INVOCATION_EXCEPTION.
Either of those would be fine with me; it's not totally clear what
distinction the SQL spec intends to draw. The best I can divine is that
the latter is for bad arguments to the external routine, but we can't
really tell whether that's applicable.
> (Sorry, totally unrelated:) Wow, in plpython.c there is this:
> ...
> I wonder why is it a good idea to have this report be FATAL.
Yeah, I noticed that recently and was annoyed by it, but I'm not sure
how safe it is to change. I suspect the author was worried about leaked
memory in event of a failure.
regards, tom lane