mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-02-23 19:39:53 +08:00
Revert: Honor OID status of CREATE LIKE'd tables
Reverts d992f8a896
Report by Tom Lane
This commit is contained in:
parent
ee8d392765
commit
764ce22af3
@ -56,7 +56,6 @@
|
||||
#include "rewrite/rewriteManip.h"
|
||||
#include "utils/acl.h"
|
||||
#include "utils/builtins.h"
|
||||
#include "utils/guc.h"
|
||||
#include "utils/lsyscache.h"
|
||||
#include "utils/rel.h"
|
||||
#include "utils/syscache.h"
|
||||
@ -223,7 +222,7 @@ transformCreateStmt(CreateStmt *stmt, const char *queryString)
|
||||
cxt.blist = NIL;
|
||||
cxt.alist = NIL;
|
||||
cxt.pkey = NULL;
|
||||
cxt.hasoids = default_with_oids;
|
||||
cxt.hasoids = interpretOidsOption(stmt->options, true);
|
||||
|
||||
Assert(!stmt->ofTypename || !stmt->inhRelations); /* grammar enforces */
|
||||
|
||||
@ -282,17 +281,6 @@ transformCreateStmt(CreateStmt *stmt, const char *queryString)
|
||||
* Output results.
|
||||
*/
|
||||
stmt->tableElts = cxt.columns;
|
||||
/*
|
||||
* Add WITH/WITHOUT OIDS, if necessary. A literal statement-specified
|
||||
* WITH/WITHOUT OIDS will still take precedence because the first
|
||||
* matching "oids" in "options" is used.
|
||||
*/
|
||||
if (cxt.hasoids && !interpretOidsOption(stmt->options, true))
|
||||
stmt->options = lappend(stmt->options, makeDefElem("oids",
|
||||
(Node *)makeInteger(TRUE)));
|
||||
else if (!cxt.hasoids && interpretOidsOption(stmt->options, true))
|
||||
stmt->options = lappend(stmt->options, makeDefElem("oids",
|
||||
(Node *)makeInteger(FALSE)));
|
||||
stmt->constraints = cxt.ckconstraints;
|
||||
|
||||
result = lappend(cxt.blist, stmt);
|
||||
@ -861,8 +849,6 @@ transformTableLikeClause(CreateStmtContext *cxt, TableLikeClause *table_like_cla
|
||||
}
|
||||
}
|
||||
|
||||
cxt->hasoids = relation->rd_rel->relhasoids;
|
||||
|
||||
/*
|
||||
* Copy CHECK constraints if requested, being careful to adjust attribute
|
||||
* numbers so they match the child.
|
||||
|
Loading…
Reference in New Issue
Block a user