postgresql/src/include/catalog
Peter Eisentraut b9bf23abb0 Fix filtering of unsupported relations in logical replication
In the pgoutput plugin, skip changes for relations that are not
publishable, per is_publishable_class().  This concerns in particular
materialized views and information_schema tables.  While those relations
cannot be part of a publication, per existing checks, they will be
considered by a FOR ALL TABLES publication.  A subscription would not
actually apply changes for those relations, again per existing checks,
but trying to match incoming changes to local tables on the subscriber
would lead to errors if no matching local table exists.  Skipping those
changes on the publisher avoids sending useless changes and eliminates
the error.

Bug: #15044
Reported-by: Chad Trabant <chad@iris.washington.edu>
Reviewed-by: Petr Jelinek <petr.jelinek@2ndquadrant.com>
2018-02-23 22:09:26 -05:00
..
.gitignore Convert cvsignore to gitignore, and add .gitignore for build targets. 2010-09-22 12:57:04 +02:00
binary_upgrade.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
catalog.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
catversion.h Use MINVALUE/MAXVALUE instead of UNBOUNDED for range partition bounds. 2017-07-21 09:20:47 +01:00
dependency.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
duplicate_oids pgindent run for 9.4 2014-05-06 12:12:18 -04:00
genbki.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
heap.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
index.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
indexing.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
namespace.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
objectaccess.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
objectaddress.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
opfam_internal.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
partition.h Don't lock tables in RelationGetPartitionDispatchInfo. 2017-08-17 15:47:29 -04:00
pg_aggregate.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_am.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_amop.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_amproc.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_attrdef.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_attribute.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_auth_members.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_authid.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_cast.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_class.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_collation.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_collation_fn.h Rethink behavior of pg_import_system_collations(). 2017-06-23 14:19:58 -04:00
pg_constraint.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_constraint_fn.h Always require SELECT permission for ON CONFLICT DO UPDATE. 2017-11-06 09:17:44 +00:00
pg_control.h Add static assertions about pg_control fitting into one disk sector. 2017-07-19 16:16:57 -04:00
pg_conversion.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_conversion_fn.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_database.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_db_role_setting.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_default_acl.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_depend.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_description.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_enum.h Revert to 9.6 treatment of ALTER TYPE enumtype ADD VALUE. 2017-09-27 16:14:37 -04:00
pg_event_trigger.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_extension.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_foreign_data_wrapper.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_foreign_server.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_foreign_table.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_index.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_inherits.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_inherits_fn.h Fix transition tables for partition/inheritance. 2017-06-28 18:55:03 +01:00
pg_init_privs.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_language.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_largeobject.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_largeobject_metadata.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_namespace.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_opclass.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_operator.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_operator_fn.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_opfamily.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_partitioned_table.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_pltemplate.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_policy.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_proc.h Rethink behavior of pg_import_system_collations(). 2017-06-23 14:19:58 -04:00
pg_proc_fn.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_publication.h Fix filtering of unsupported relations in logical replication 2018-02-23 22:09:26 -05:00
pg_publication_rel.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_range.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_replication_origin.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_rewrite.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_seclabel.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_sequence.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_shdepend.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_shdescription.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_shseclabel.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_statistic.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_statistic_ext.h Message style fixes 2017-09-11 11:20:47 -04:00
pg_subscription.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_subscription_rel.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_tablespace.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_transform.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_trigger.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_ts_config.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_ts_config_map.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_ts_dict.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_ts_parser.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_ts_template.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_type.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_type_fn.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
pg_user_mapping.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
storage.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
storage_xlog.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
toasting.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
unused_oids Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00