aboutsummaryrefslogtreecommitdiff
path: root/src/backend/commands/createas.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/commands/createas.c')
-rw-r--r--src/backend/commands/createas.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/backend/commands/createas.c b/src/backend/commands/createas.c
index a3ff1d56c81..06bbae5cc59 100644
--- a/src/backend/commands/createas.c
+++ b/src/backend/commands/createas.c
@@ -218,11 +218,15 @@ GetIntoRelEFlags(IntoClause *intoClause)
* because it doesn't have enough information to do so itself (since we
* can't build the target relation until after ExecutorStart).
*/
- if (interpretOidsOption(intoClause->options))
+ if (interpretOidsOption(intoClause->options, intoClause->relkind))
flags = EXEC_FLAG_WITH_OIDS;
else
flags = EXEC_FLAG_WITHOUT_OIDS;
+ Assert(intoClause->relkind != RELKIND_MATVIEW ||
+ (flags & (EXEC_FLAG_WITH_OIDS | EXEC_FLAG_WITHOUT_OIDS)) ==
+ EXEC_FLAG_WITHOUT_OIDS);
+
if (intoClause->skipData)
flags |= EXEC_FLAG_WITH_NO_DATA;