postgresql/src/include/catalog
Tomas Vondra 7300a69950 Add support for multivariate MCV lists
Introduce a third extended statistic type, supported by the CREATE
STATISTICS command - MCV lists, a generalization of the statistic
already built and used for individual columns.

Compared to the already supported types (n-distinct coefficients and
functional dependencies), MCV lists are more complex, include column
values and allow estimation of much wider range of common clauses
(equality and inequality conditions, IS NULL, IS NOT NULL etc.).
Similarly to the other types, a new pseudo-type (pg_mcv_list) is used.

Author: Tomas Vondra
Reviewed-by: Dean Rasheed, David Rowley, Mark Dilger, Alvaro Herrera
Discussion: https://postgr.es/m/dfdac334-9cf2-2597-fb27-f0fb3753f435@2ndquadrant.com
2019-03-27 18:32:18 +01:00
..
.gitignore Replace our traditional initial-catalog-data format with a better design. 2018-04-08 13:17:27 -04:00
binary_upgrade.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
catalog.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
catversion.h Switch function current_schema[s]() to be parallel-unsafe 2019-03-27 11:35:12 +09:00
dependency.h Sort the dependent objects before deletion in DROP OWNED BY. 2019-03-20 18:06:29 -04:00
duplicate_oids Update copyright for 2019 2019-01-02 12:44:25 -05:00
genbki.h Move the built-in conversions into the initial catalog data. 2019-01-03 19:47:53 -05:00
heap.h tableam: introduce table AM infrastructure. 2019-03-06 09:54:38 -08:00
index.h tableam: Add and use scan APIs. 2019-03-11 12:46:41 -07:00
indexing.h Create a script that can renumber manually-assigned OIDs. 2019-03-12 10:50:48 -04:00
Makefile Minor improvements for reformat_dat_file.pl. 2019-03-08 11:48:49 -05:00
namespace.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
objectaccess.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
objectaddress.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
opfam_internal.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
partition.h Add index_get_partition convenience function 2019-03-20 18:18:50 -03:00
pg_aggregate.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_aggregate.h Implement OR REPLACE option for CREATE AGGREGATE. 2019-03-19 01:16:50 +00:00
pg_am.dat tableam: introduce table AM infrastructure. 2019-03-06 09:54:38 -08:00
pg_am.h tableam: introduce table AM infrastructure. 2019-03-06 09:54:38 -08:00
pg_amop.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_amop.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_amproc.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_amproc.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_attrdef.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_attribute.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_auth_members.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_authid.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_authid.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_cast.dat Add support for multivariate MCV lists 2019-03-27 18:32:18 +01:00
pg_cast.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_class.dat Add BKI_DEFAULT to pg_class.relrewrite 2019-03-14 21:25:39 +01:00
pg_class.h Add BKI_DEFAULT to pg_class.relrewrite 2019-03-14 21:25:39 +01:00
pg_collation.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_collation.h Collations with nondeterministic comparison 2019-03-22 12:12:43 +01:00
pg_constraint.h Redesign the partition dependency mechanism. 2019-02-11 14:41:17 -05:00
pg_control.h Move max_wal_senders out of max_connections for connection slot handling 2019-02-12 10:07:56 +09:00
pg_conversion.dat Move the built-in conversions into the initial catalog data. 2019-01-03 19:47:53 -05:00
pg_conversion.h Move the built-in conversions into the initial catalog data. 2019-01-03 19:47:53 -05:00
pg_database.dat Remove remaining hard-wired OID references in the initial catalog data. 2019-03-12 12:30:35 -04:00
pg_database.h Remove remaining hard-wired OID references in the initial catalog data. 2019-03-12 12:30:35 -04:00
pg_db_role_setting.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_default_acl.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_depend.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_description.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_enum.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_event_trigger.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_extension.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_foreign_data_wrapper.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_foreign_server.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_foreign_table.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_index.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_inherits.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_init_privs.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_language.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_language.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_largeobject.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_largeobject_metadata.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_namespace.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_namespace.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_opclass.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_opclass.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_operator.dat Remove ambiguity for jsonb_path_match() and jsonb_path_exists() 2019-03-20 10:30:56 +03:00
pg_operator.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_opfamily.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_opfamily.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_partitioned_table.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_pltemplate.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_pltemplate.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_policy.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_proc.dat Add support for multivariate MCV lists 2019-03-27 18:32:18 +01:00
pg_proc.h Create the infrastructure for planner support functions. 2019-02-09 18:08:48 -05:00
pg_publication.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_publication_rel.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_range.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_range.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_replication_origin.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_rewrite.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_seclabel.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_sequence.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_shdepend.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_shdescription.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_shseclabel.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_statistic.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_statistic_ext.h Add support for multivariate MCV lists 2019-03-27 18:32:18 +01:00
pg_subscription.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_subscription_rel.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_tablespace.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_tablespace.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_transform.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_trigger.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_ts_config.dat Remove remaining hard-wired OID references in the initial catalog data. 2019-03-12 12:30:35 -04:00
pg_ts_config.h Remove remaining hard-wired OID references in the initial catalog data. 2019-03-12 12:30:35 -04:00
pg_ts_config_map.dat Remove remaining hard-wired OID references in the initial catalog data. 2019-03-12 12:30:35 -04:00
pg_ts_config_map.h Remove remaining hard-wired OID references in the initial catalog data. 2019-03-12 12:30:35 -04:00
pg_ts_dict.dat Remove remaining hard-wired OID references in the initial catalog data. 2019-03-12 12:30:35 -04:00
pg_ts_dict.h Remove remaining hard-wired OID references in the initial catalog data. 2019-03-12 12:30:35 -04:00
pg_ts_parser.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_ts_parser.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_ts_template.dat Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_ts_template.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
pg_type.dat Add support for multivariate MCV lists 2019-03-27 18:32:18 +01:00
pg_type.h Remove remaining hard-wired OID references in the initial catalog data. 2019-03-12 12:30:35 -04:00
pg_user_mapping.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
reformat_dat_file.pl Minor improvements for reformat_dat_file.pl. 2019-03-08 11:48:49 -05:00
renumber_oids.pl Create a script that can renumber manually-assigned OIDs. 2019-03-12 10:50:48 -04:00
storage.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
storage_xlog.h Update copyright for 2019 2019-01-02 12:44:25 -05:00
toasting.h Create a script that can renumber manually-assigned OIDs. 2019-03-12 10:50:48 -04:00
unused_oids Update copyright for 2019 2019-01-02 12:44:25 -05:00