1
0
mirror of https://github.com/postgres/postgres.git synced 2025-08-27 07:42:10 +03:00

Rename field "relkind" to "objtype" for CTAS and ALTER TABLE nodes

"relkind" normally refers to the char field from pg_class.  However, in
the parse nodes AlterTableStmt and CreateTableAsStmt, "relkind" was used
for a field of type enum ObjectType, that could refer to other object
types than those possible for a relkind.  Such fields being usually
named "objtype", switch the name in both structures to make things more
consistent.  Note that this led to some confusion in functions that
also operate on a RangeTableEntry object, which also has a field named
"relkind".

This naming goes back to commit 09d4e96, where only OBJECT_TABLE and
OBJECT_INDEX were used.  This got extended later to use as well
OBJECT_TYPE with e440e12, not really a relation kind.

Author: Mark Dilger
Reviewed-by: Daniel Gustafsson, Álvaro Herrera, Michael Paquier
Discussion: https://postgr.es/m/609181AE-E399-47C7-9221-856E0F96BF93@enterprisedb.com
This commit is contained in:
Michael Paquier
2020-07-11 13:32:28 +09:00
parent df646509f3
commit cc35d8933a
8 changed files with 37 additions and 37 deletions

View File

@@ -2574,7 +2574,7 @@ CreateCommandTag(Node *parsetree)
break;
case T_AlterTableStmt:
tag = AlterObjectTypeCommandTag(((AlterTableStmt *) parsetree)->relkind);
tag = AlterObjectTypeCommandTag(((AlterTableStmt *) parsetree)->objtype);
break;
case T_AlterDomainStmt:
@@ -2752,7 +2752,7 @@ CreateCommandTag(Node *parsetree)
break;
case T_CreateTableAsStmt:
switch (((CreateTableAsStmt *) parsetree)->relkind)
switch (((CreateTableAsStmt *) parsetree)->objtype)
{
case OBJECT_TABLE:
if (((CreateTableAsStmt *) parsetree)->is_select_into)