From 6e00ba1e17056b86f698e448f900bc35868f5f64 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 10 Nov 2016 15:00:58 -0500 Subject: [PATCH] Re-allow user_catalog_table option for materialized views. The reloptions stuff allows this option to be set on a matview. While it's questionable whether that is useful or was really intended, it does work, and we shouldn't change that in minor releases. Commit e3e66d8a9 disabled the option since I didn't realize that it was possible for it to be set on a matview. Tweak the test to re-allow it. Discussion: <19749.1478711862@sss.pgh.pa.us> --- src/include/utils/rel.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/include/utils/rel.h b/src/include/utils/rel.h index 755badff0c..ebc00b0d4d 100644 --- a/src/include/utils/rel.h +++ b/src/include/utils/rel.h @@ -253,8 +253,9 @@ typedef struct StdRdOptions * from the pov of logical decoding. Note multiple eval or argument! */ #define RelationIsUsedAsCatalogTable(relation) \ - ((relation)->rd_rel->relkind == RELKIND_RELATION && \ - (relation)->rd_options ? \ + ((relation)->rd_options && \ + ((relation)->rd_rel->relkind == RELKIND_RELATION || \ + (relation)->rd_rel->relkind == RELKIND_MATVIEW) ? \ ((StdRdOptions *) (relation)->rd_options)->user_catalog_table : false)