postgresql/src/include/catalog
Tom Lane 1939d26282 Add test scaffolding for soft error reporting from input functions.
pg_input_is_valid() returns boolean, while pg_input_error_message()
returns the primary error message if the input is bad, or NULL
if the input is OK.  The main reason for having two functions is
so that we can test both the details-wanted and the no-details-wanted
code paths.

Although these are primarily designed with testing in mind,
it could well be that they'll be useful to end users as well.

This patch is mostly by me, but it owes very substantial debt to
earlier work by Nikita Glukhov, Andrew Dunstan, and Amul Sul.
Thanks to Andres Freund for review.

Discussion: https://postgr.es/m/3bbbb0df-7382-bf87-9737-340ba096e034@postgrespro.ru
2022-12-09 10:08:44 -05:00
..
.gitignore Build in some knowledge about foreign-key relationships in the catalogs. 2021-02-02 17:11:55 -05:00
binary_upgrade.h Move RelFileNumber declarations to common/relpath.h. 2022-09-27 12:01:57 -04:00
catalog.h Revert 56-bit relfilenode change and follow-up commits. 2022-09-28 09:55:28 -04:00
catversion.h Add test scaffolding for soft error reporting from input functions. 2022-12-09 10:08:44 -05:00
dependency.h Harmonize parameter names in storage and AM code. 2022-09-19 19:18:36 -07:00
duplicate_oids Update copyright for 2022 2022-01-07 19:04:57 -05:00
genbki.h Rethink method for assigning OIDs to the template0 and postgres DBs. 2022-04-21 16:23:15 -04:00
heap.h Change internal RelFileNode references to RelFileNumber or RelFileLocator. 2022-07-06 11:39:09 -04:00
index.h Harmonize parameter names in storage and AM code. 2022-09-19 19:18:36 -07:00
indexing.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
Makefile Update copyright for 2022 2022-01-07 19:04:57 -05:00
meson.build meson: Add initial version of meson based build system 2022-09-21 22:37:17 -07:00
namespace.h Harmonize parameter names in storage and AM code. 2022-09-19 19:18:36 -07:00
objectaccess.h Improve comment for OAT_POST_CREATE. 2022-09-20 10:52:01 -07:00
objectaddress.h Harmonize parameter names in storage and AM code. 2022-09-19 19:18:36 -07:00
partition.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_aggregate.dat Revert SQL/JSON features 2022-09-01 17:07:14 -04:00
pg_aggregate.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_am.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_am.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_amop.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_amop.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_amproc.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_amproc.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_attrdef.h Move pg_attrdef manipulation code into new file catalog/pg_attrdef.c. 2022-03-21 14:38:23 -04:00
pg_attribute.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_auth_members.h Add a SET option to the GRANT command. 2022-11-18 12:32:56 -05:00
pg_authid.dat Provide non-superuser predefined roles for vacuum and analyze 2022-11-28 12:08:14 -05:00
pg_authid.h Use DECLARE_TOAST_WITH_MACRO() to simplify toast-table declarations. 2022-04-21 12:02:23 -04:00
pg_cast.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_cast.h Record dependencies of a cast on other casts that it requires. 2022-10-17 14:02:05 -04:00
pg_class.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_class.h Revert 56-bit relfilenode change and follow-up commits. 2022-09-28 09:55:28 -04:00
pg_collation.dat Add option to use ICU as global locale provider 2022-03-17 11:13:16 +01:00
pg_collation.h Pre-beta mechanical code beautification. 2022-05-12 15:17:30 -04:00
pg_constraint.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_control.h Revert 56-bit relfilenode change and follow-up commits. 2022-09-28 09:55:28 -04:00
pg_conversion.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_conversion.h Harmonize parameter names in storage and AM code. 2022-09-19 19:18:36 -07:00
pg_database.dat Pre-beta mechanical code beautification. 2022-05-12 15:17:30 -04:00
pg_database.h Rethink method for assigning OIDs to the template0 and postgres DBs. 2022-04-21 16:23:15 -04:00
pg_db_role_setting.h Add USER SET parameter values for pg_db_role_setting 2022-12-09 13:12:20 +03:00
pg_default_acl.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_depend.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_description.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_enum.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_event_trigger.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_extension.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_foreign_data_wrapper.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_foreign_server.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_foreign_table.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_index.h Add UNIQUE null treatment option 2022-02-03 11:48:21 +01:00
pg_inherits.h Harmonize parameter names in storage and AM code. 2022-09-19 19:18:36 -07:00
pg_init_privs.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_language.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_language.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_largeobject.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_largeobject_metadata.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_namespace.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_namespace.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_opclass.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_opclass.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_operator.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_operator.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_opfamily.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_opfamily.h Fix planner to consider matches to boolean columns in extension indexes. 2022-09-02 17:01:51 -04:00
pg_parameter_acl.h Do pre-release housekeeping on catalog data. 2022-05-12 15:35:15 -04:00
pg_partitioned_table.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_policy.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_proc.dat Add test scaffolding for soft error reporting from input functions. 2022-12-09 10:08:44 -05:00
pg_proc.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_publication.h Harmonize parameter names in storage and AM code. 2022-09-19 19:18:36 -07:00
pg_publication_namespace.h Do pre-release housekeeping on catalog data. 2022-05-12 15:35:15 -04:00
pg_publication_rel.h Do pre-release housekeeping on catalog data. 2022-05-12 15:35:15 -04:00
pg_range.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_range.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_replication_origin.h Use DECLARE_TOAST_WITH_MACRO() to simplify toast-table declarations. 2022-04-21 12:02:23 -04:00
pg_rewrite.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_seclabel.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_sequence.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_shdepend.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_shdescription.h Use DECLARE_TOAST_WITH_MACRO() to simplify toast-table declarations. 2022-04-21 12:02:23 -04:00
pg_shseclabel.h Use DECLARE_TOAST_WITH_MACRO() to simplify toast-table declarations. 2022-04-21 12:02:23 -04:00
pg_statistic.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_statistic_ext.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_statistic_ext_data.h Pre-beta mechanical code beautification. 2022-05-12 15:17:30 -04:00
pg_subscription.h Move common catalog cache access routines to lsyscache.c 2022-08-02 10:47:22 +05:30
pg_subscription_rel.h Refactor code in charge of grabbing the relations of a subscription 2022-07-27 19:50:06 +09:00
pg_tablespace.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_tablespace.h Use DECLARE_TOAST_WITH_MACRO() to simplify toast-table declarations. 2022-04-21 12:02:23 -04:00
pg_transform.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_trigger.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_ts_config.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_ts_config.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_ts_config_map.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_ts_config_map.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_ts_dict.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_ts_dict.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_ts_parser.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_ts_parser.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_ts_template.dat Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_ts_template.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_type.dat Expand AclMode to 64 bits 2022-11-23 14:43:16 -05:00
pg_type.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_user_mapping.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
reformat_dat_file.pl Update copyright for 2022 2022-01-07 19:04:57 -05:00
renumber_oids.pl Pre-beta mechanical code beautification. 2022-05-12 15:17:30 -04:00
storage.h Change internal RelFileNode references to RelFileNumber or RelFileLocator. 2022-07-06 11:39:09 -04:00
storage_xlog.h Change internal RelFileNode references to RelFileNumber or RelFileLocator. 2022-07-06 11:39:09 -04:00
toasting.h Update copyright for 2022 2022-01-07 19:04:57 -05:00
unused_oids Rethink method for assigning OIDs to the template0 and postgres DBs. 2022-04-21 16:23:15 -04:00