From c10bbfcf36f21e9aac8101e2482564f01878f0e0 Mon Sep 17 00:00:00 2001 From: Amul Sul Date: Mon, 28 Aug 2023 14:07:57 +0530 Subject: [PATCH v2 1/2] Prerequisite changes: rename functions & enum. Note: this patch is to minimize diff from the next patch, not ment to commit separatly. --- src/backend/commands/tablecmds.c | 24 ++++++++++--------- src/backend/parser/gram.y | 4 ++-- src/include/nodes/parsenodes.h | 2 +- .../test_ddl_deparse/test_ddl_deparse.c | 2 +- 4 files changed, 17 insertions(+), 15 deletions(-) diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c index 47c900445c7..bfaa3d2e95f 100644 --- a/src/backend/commands/tablecmds.c +++ b/src/backend/commands/tablecmds.c @@ -455,8 +455,10 @@ static ObjectAddress ATExecAddIdentity(Relation rel, const char *colName, static ObjectAddress ATExecSetIdentity(Relation rel, const char *colName, Node *def, LOCKMODE lockmode); static ObjectAddress ATExecDropIdentity(Relation rel, const char *colName, bool missing_ok, LOCKMODE lockmode); -static void ATPrepDropExpression(Relation rel, AlterTableCmd *cmd, bool recurse, bool recursing, LOCKMODE lockmode); -static ObjectAddress ATExecDropExpression(Relation rel, const char *colName, bool missing_ok, LOCKMODE lockmode); +static void ATPrepColumnExpression(Relation rel, AlterTableCmd *cmd, + bool recurse, bool recursing, LOCKMODE lockmode); +static ObjectAddress ATExecColumnExpression(Relation rel, const char *colName, + bool missing_ok, LOCKMODE lockmode); static ObjectAddress ATExecSetStatistics(Relation rel, const char *colName, int16 colNum, Node *newValue, LOCKMODE lockmode); static ObjectAddress ATExecSetOptions(Relation rel, const char *colName, @@ -4490,7 +4492,7 @@ AlterTableGetLockLevel(List *cmds) case AT_AddIdentity: case AT_DropIdentity: case AT_SetIdentity: - case AT_DropExpression: + case AT_ColumnExpression: case AT_SetCompression: cmd_lockmode = AccessExclusiveLock; break; @@ -4791,10 +4793,10 @@ ATPrepCmd(List **wqueue, Relation rel, AlterTableCmd *cmd, ATSimpleRecursion(wqueue, rel, cmd, recurse, lockmode, context); pass = AT_PASS_COL_ATTRS; break; - case AT_DropExpression: /* ALTER COLUMN DROP EXPRESSION */ + case AT_ColumnExpression: /* ALTER COLUMN DROP EXPRESSION */ ATSimplePermissions(cmd->subtype, rel, ATT_TABLE | ATT_FOREIGN_TABLE); ATSimpleRecursion(wqueue, rel, cmd, recurse, lockmode, context); - ATPrepDropExpression(rel, cmd, recurse, recursing, lockmode); + ATPrepColumnExpression(rel, cmd, recurse, recursing, lockmode); pass = AT_PASS_DROP; break; case AT_SetStatistics: /* ALTER COLUMN SET STATISTICS */ @@ -5176,8 +5178,8 @@ ATExecCmd(List **wqueue, AlteredTableInfo *tab, case AT_SetAttNotNull: /* set pg_attribute.attnotnull */ address = ATExecSetAttNotNull(wqueue, rel, cmd->name, lockmode); break; - case AT_DropExpression: - address = ATExecDropExpression(rel, cmd->name, cmd->missing_ok, lockmode); + case AT_ColumnExpression: + address = ATExecColumnExpression(rel, cmd->name, cmd->missing_ok, lockmode); break; case AT_SetStatistics: /* ALTER COLUMN SET STATISTICS */ address = ATExecSetStatistics(rel, cmd->name, cmd->num, cmd->def, lockmode); @@ -6303,7 +6305,7 @@ alter_table_type_to_string(AlterTableType cmdtype) return "ALTER COLUMN ... SET NOT NULL"; case AT_SetAttNotNull: return NULL; /* not real grammar */ - case AT_DropExpression: + case AT_ColumnExpression: return "ALTER COLUMN ... DROP EXPRESSION"; case AT_SetStatistics: return "ALTER COLUMN ... SET STATISTICS"; @@ -8244,10 +8246,10 @@ ATExecDropIdentity(Relation rel, const char *colName, bool missing_ok, LOCKMODE } /* - * ALTER TABLE ALTER COLUMN DROP EXPRESSION + * ALTER TABLE ALTER COLUMN DROP/SET EXPRESSION */ static void -ATPrepDropExpression(Relation rel, AlterTableCmd *cmd, bool recurse, bool recursing, LOCKMODE lockmode) +ATPrepColumnExpression(Relation rel, AlterTableCmd *cmd, bool recurse, bool recursing, LOCKMODE lockmode) { /* * Reject ONLY if there are child tables. We could implement this, but it @@ -8293,7 +8295,7 @@ ATPrepDropExpression(Relation rel, AlterTableCmd *cmd, bool recurse, bool recurs * Return the address of the affected column. */ static ObjectAddress -ATExecDropExpression(Relation rel, const char *colName, bool missing_ok, LOCKMODE lockmode) +ATExecColumnExpression(Relation rel, const char *colName, bool missing_ok, LOCKMODE lockmode) { HeapTuple tuple; Form_pg_attribute attTup; diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index 7d2032885ed..7afb562cdac 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -2409,7 +2409,7 @@ alter_table_cmd: { AlterTableCmd *n = makeNode(AlterTableCmd); - n->subtype = AT_DropExpression; + n->subtype = AT_ColumnExpression; n->name = $3; $$ = (Node *) n; } @@ -2418,7 +2418,7 @@ alter_table_cmd: { AlterTableCmd *n = makeNode(AlterTableCmd); - n->subtype = AT_DropExpression; + n->subtype = AT_ColumnExpression; n->name = $3; n->missing_ok = true; $$ = (Node *) n; diff --git a/src/include/nodes/parsenodes.h b/src/include/nodes/parsenodes.h index fef4c714b8e..29ad91739c4 100644 --- a/src/include/nodes/parsenodes.h +++ b/src/include/nodes/parsenodes.h @@ -2216,7 +2216,7 @@ typedef enum AlterTableType AT_DropNotNull, /* alter column drop not null */ AT_SetNotNull, /* alter column set not null */ AT_SetAttNotNull, /* set attnotnull w/o a constraint */ - AT_DropExpression, /* alter column drop expression */ + AT_ColumnExpression, /* alter column drop expression */ AT_SetStatistics, /* alter column set statistics */ AT_SetOptions, /* alter column set ( options ) */ AT_ResetOptions, /* alter column reset ( options ) */ diff --git a/src/test/modules/test_ddl_deparse/test_ddl_deparse.c b/src/test/modules/test_ddl_deparse/test_ddl_deparse.c index 0302f79bb71..421e93ea209 100644 --- a/src/test/modules/test_ddl_deparse/test_ddl_deparse.c +++ b/src/test/modules/test_ddl_deparse/test_ddl_deparse.c @@ -132,7 +132,7 @@ get_altertable_subcmdinfo(PG_FUNCTION_ARGS) case AT_SetAttNotNull: strtype = "SET ATTNOTNULL"; break; - case AT_DropExpression: + case AT_ColumnExpression: strtype = "DROP EXPRESSION"; break; case AT_SetStatistics: -- 2.18.0