Expose object name error fields in PL/pgSQL.

Noah Misch <noah@leadboat.com>

Commit: c21bb48d6fc1827e117e2667e0a5d9d96d984f46
Author: Noah Misch <noah@leadboat.com>
Date: 2013-07-03T11:30:15Z
Releases: 9.3.0
Expose object name error fields in PL/pgSQL.

Specifically, permit attaching them to the error in RAISE and retrieving
them from a caught error in GET STACKED DIAGNOSTICS.  RAISE enforces
nothing about the content of the fields; for its purposes, they are just
additional string fields.  Consequently, clarify in the protocol and
libpq documentation that the usual relationships between error fields,
like a schema name appearing wherever a table name appears, are not
universal.  This freedom has other applications; consider a FDW
propagating an error from an RDBMS having no schema support.

Back-patch to 9.3, where core support for the error fields was
introduced.  This prevents the confusion of having a release where libpq
exposes the fields and PL/pgSQL does not.

Pavel Stehule, lexical revisions by Noah Misch.

Files