Thread: pgsql: Convert domain_in to report errors softly.

pgsql: Convert domain_in to report errors softly.

From
Tom Lane
Date:
Convert domain_in to report errors softly.

This is straightforward as far as it goes.  However, it does not
attempt to trap errors occurring during the execution of domain
CHECK constraints.  Since those are general user-defined
expressions, the only way to do that would involve starting up a
subtransaction for each check.  Of course the entire point of
the soft-errors feature is to not need subtransactions, so that
would be self-defeating.  For now, we'll rely on the assumption
that domain checks are written to avoid throwing errors.

Discussion: https://postgr.es/m/1181028.1670635727@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/b8c0ffbd2c8038fbebe76b48616860a7efec66ae

Modified Files
--------------
doc/src/sgml/ref/create_domain.sgml  |  5 ++++
src/backend/utils/adt/domains.c      | 36 ++++++++++++++++++--------
src/test/regress/expected/domain.out | 50 ++++++++++++++++++++++++++++++++++++
src/test/regress/sql/domain.sql      | 19 ++++++++++++++
4 files changed, 100 insertions(+), 10 deletions(-)