Rework pg_input_error_message(), now renamed pg_input_error_info()
authorMichael Paquier
Mon, 27 Feb 2023 23:04:13 +0000 (08:04 +0900)
committerMichael Paquier
Mon, 27 Feb 2023 23:04:13 +0000 (08:04 +0900)
commitb8da37b3ada2e547983538b3e49f8079f85ce120
treed3ecf7af84a5b492e7a2b62b79df0398f3c8bccd
parent728560db7d868b3ded9a8675742083ab89bcff7c
Rework pg_input_error_message(), now renamed pg_input_error_info()

pg_input_error_info() is now a SQL function able to return a row with
more than just the error message generated for incorrect data type
inputs when these are able to handle soft failures, returning more
contents of ErrorData, as of:
- The error message (same as before).
- The error detail, if set.
- The error hint, if set.
- SQL error code.

All the regression tests that relied on pg_input_error_message() are
updated to reflect the effects of the rename.

Per discussion with Tom Lane and Andrew Dunstan.

Author: Nathan Bossart
Discussion: https://postgr.es/m/139a68e1-bd1f-a9a7-b5fe-0be9845c6311@dunslane.net
117 files changed:
contrib/cube/expected/cube.out
contrib/cube/sql/cube.sql
contrib/hstore/expected/hstore.out
contrib/hstore/sql/hstore.sql
contrib/intarray/expected/_int.out
contrib/intarray/sql/_int.sql
contrib/isn/expected/isn.out
contrib/isn/sql/isn.sql
contrib/ltree/expected/ltree.out
contrib/ltree/sql/ltree.sql
contrib/seg/expected/seg.out
contrib/seg/sql/seg.sql
doc/src/sgml/func.sgml
src/backend/utils/adt/misc.c
src/include/catalog/pg_proc.dat
src/test/regress/expected/arrays.out
src/test/regress/expected/bit.out
src/test/regress/expected/boolean.out
src/test/regress/expected/box.out
src/test/regress/expected/char.out
src/test/regress/expected/char_1.out
src/test/regress/expected/char_2.out
src/test/regress/expected/date.out
src/test/regress/expected/domain.out
src/test/regress/expected/enum.out
src/test/regress/expected/float4-misrounded-input.out
src/test/regress/expected/float4.out
src/test/regress/expected/float8.out
src/test/regress/expected/geometry.out
src/test/regress/expected/inet.out
src/test/regress/expected/int2.out
src/test/regress/expected/int4.out
src/test/regress/expected/int8.out
src/test/regress/expected/interval.out
src/test/regress/expected/json.out
src/test/regress/expected/json_encoding.out
src/test/regress/expected/json_encoding_1.out
src/test/regress/expected/jsonb.out
src/test/regress/expected/jsonpath.out
src/test/regress/expected/line.out
src/test/regress/expected/lseg.out
src/test/regress/expected/macaddr.out
src/test/regress/expected/macaddr8.out
src/test/regress/expected/money.out
src/test/regress/expected/multirangetypes.out
src/test/regress/expected/numeric.out
src/test/regress/expected/oid.out
src/test/regress/expected/path.out
src/test/regress/expected/pg_lsn.out
src/test/regress/expected/point.out
src/test/regress/expected/polygon.out
src/test/regress/expected/privileges.out
src/test/regress/expected/rangetypes.out
src/test/regress/expected/regproc.out
src/test/regress/expected/rowtypes.out
src/test/regress/expected/strings.out
src/test/regress/expected/tid.out
src/test/regress/expected/time.out
src/test/regress/expected/timestamp.out
src/test/regress/expected/timestamptz.out
src/test/regress/expected/timetz.out
src/test/regress/expected/tstypes.out
src/test/regress/expected/uuid.out
src/test/regress/expected/varchar.out
src/test/regress/expected/varchar_1.out
src/test/regress/expected/varchar_2.out
src/test/regress/expected/xid.out
src/test/regress/expected/xml.out
src/test/regress/expected/xml_1.out
src/test/regress/expected/xml_2.out
src/test/regress/sql/arrays.sql
src/test/regress/sql/bit.sql
src/test/regress/sql/boolean.sql
src/test/regress/sql/box.sql
src/test/regress/sql/char.sql
src/test/regress/sql/date.sql
src/test/regress/sql/domain.sql
src/test/regress/sql/enum.sql
src/test/regress/sql/float4.sql
src/test/regress/sql/float8.sql
src/test/regress/sql/geometry.sql
src/test/regress/sql/inet.sql
src/test/regress/sql/int2.sql
src/test/regress/sql/int4.sql
src/test/regress/sql/int8.sql
src/test/regress/sql/interval.sql
src/test/regress/sql/json.sql
src/test/regress/sql/json_encoding.sql
src/test/regress/sql/jsonb.sql
src/test/regress/sql/jsonpath.sql
src/test/regress/sql/line.sql
src/test/regress/sql/lseg.sql
src/test/regress/sql/macaddr.sql
src/test/regress/sql/macaddr8.sql
src/test/regress/sql/money.sql
src/test/regress/sql/multirangetypes.sql
src/test/regress/sql/numeric.sql
src/test/regress/sql/oid.sql
src/test/regress/sql/path.sql
src/test/regress/sql/pg_lsn.sql
src/test/regress/sql/point.sql
src/test/regress/sql/polygon.sql
src/test/regress/sql/privileges.sql
src/test/regress/sql/rangetypes.sql
src/test/regress/sql/regproc.sql
src/test/regress/sql/rowtypes.sql
src/test/regress/sql/strings.sql
src/test/regress/sql/tid.sql
src/test/regress/sql/time.sql
src/test/regress/sql/timestamp.sql
src/test/regress/sql/timestamptz.sql
src/test/regress/sql/timetz.sql
src/test/regress/sql/tstypes.sql
src/test/regress/sql/uuid.sql
src/test/regress/sql/varchar.sql
src/test/regress/sql/xid.sql
src/test/regress/sql/xml.sql