Rename field "relkind" to "objtype" for CTAS and ALTER TABLE nodes
Michael Paquier <michael@paquier.xyz>
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
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/commands/tablecmds.c | modified | +2 −2 |
| src/backend/nodes/copyfuncs.c | modified | +2 −2 |
| src/backend/nodes/equalfuncs.c | modified | +2 −2 |
| src/backend/parser/analyze.c | modified | +2 −2 |
| src/backend/parser/gram.y | modified | +22 −22 |
| src/backend/parser/parse_utilcmd.c | modified | +3 −3 |
| src/backend/tcop/utility.c | modified | +2 −2 |
| src/include/nodes/parsenodes.h | modified | +2 −2 |
Discussion
- Towards easier AMs: Cleaning up inappropriate use of name "relkind" 15 messages · 2020-06-03 → 2020-07-15