@@ -142,20 +142,24 @@ static List *on_commits = NIL;
142142 * a pass determined by subcommand type.
143143 */
144144
145- #define AT_PASS_UNSET -1 /* UNSET will cause ERROR */
146- #define AT_PASS_DROP 0 /* DROP (all flavors) */
147- #define AT_PASS_ALTER_TYPE 1 /* ALTER COLUMN TYPE */
148- #define AT_PASS_OLD_INDEX 2 /* re-add existing indexes */
149- #define AT_PASS_OLD_CONSTR 3 /* re-add existing constraints */
150- /* We could support a RENAME COLUMN pass here, but not currently used */
151- #define AT_PASS_ADD_COL 4 /* ADD COLUMN */
152- #define AT_PASS_ADD_CONSTR 5 /* ADD constraints (initial examination) */
153- #define AT_PASS_COL_ATTRS 6 /* set column attributes, eg NOT NULL */
154- #define AT_PASS_ADD_INDEXCONSTR 7 /* ADD index-based constraints */
155- #define AT_PASS_ADD_INDEX 8 /* ADD indexes */
156- #define AT_PASS_ADD_OTHERCONSTR 9 /* ADD other constraints, defaults */
157- #define AT_PASS_MISC 10 /* other stuff */
158- #define AT_NUM_PASSES 11
145+ typedef enum AlterTablePass
146+ {
147+ AT_PASS_UNSET = -1, /* UNSET will cause ERROR */
148+ AT_PASS_DROP, /* DROP (all flavors) */
149+ AT_PASS_ALTER_TYPE, /* ALTER COLUMN TYPE */
150+ AT_PASS_OLD_INDEX, /* re-add existing indexes */
151+ AT_PASS_OLD_CONSTR, /* re-add existing constraints */
152+ /* We could support a RENAME COLUMN pass here, but not currently used */
153+ AT_PASS_ADD_COL, /* ADD COLUMN */
154+ AT_PASS_ADD_CONSTR, /* ADD constraints (initial examination) */
155+ AT_PASS_COL_ATTRS, /* set column attributes, eg NOT NULL */
156+ AT_PASS_ADD_INDEXCONSTR, /* ADD index-based constraints */
157+ AT_PASS_ADD_INDEX, /* ADD indexes */
158+ AT_PASS_ADD_OTHERCONSTR, /* ADD other constraints, defaults */
159+ AT_PASS_MISC, /* other stuff */
160+ } AlterTablePass;
161+
162+ #define AT_NUM_PASSES (AT_PASS_MISC + 1)
159163
160164typedef struct AlteredTableInfo
161165{
@@ -399,12 +403,12 @@ static void ATPrepCmd(List **wqueue, Relation rel, AlterTableCmd *cmd,
399403static void ATRewriteCatalogs(List **wqueue, LOCKMODE lockmode,
400404 AlterTableUtilityContext *context);
401405static void ATExecCmd(List **wqueue, AlteredTableInfo *tab,
402- AlterTableCmd *cmd, LOCKMODE lockmode, int cur_pass,
406+ AlterTableCmd *cmd, LOCKMODE lockmode, AlterTablePass cur_pass,
403407 AlterTableUtilityContext *context);
404408static AlterTableCmd *ATParseTransformCmd(List **wqueue, AlteredTableInfo *tab,
405409 Relation rel, AlterTableCmd *cmd,
406410 bool recurse, LOCKMODE lockmode,
407- int cur_pass,
411+ AlterTablePass cur_pass,
408412 AlterTableUtilityContext *context);
409413static void ATRewriteTables(AlterTableStmt *parsetree,
410414 List **wqueue, LOCKMODE lockmode,
@@ -427,7 +431,7 @@ static void ATPrepAddColumn(List **wqueue, Relation rel, bool recurse, bool recu
427431static ObjectAddress ATExecAddColumn(List **wqueue, AlteredTableInfo *tab,
428432 Relation rel, AlterTableCmd **cmd,
429433 bool recurse, bool recursing,
430- LOCKMODE lockmode, int cur_pass,
434+ LOCKMODE lockmode, AlterTablePass cur_pass,
431435 AlterTableUtilityContext *context);
432436static bool check_for_column_name_collision(Relation rel, const char *colname,
433437 bool if_not_exists);
@@ -565,7 +569,7 @@ static void ATPostAlterTypeCleanup(List **wqueue, AlteredTableInfo *tab,
565569static void ATPostAlterTypeParse(Oid oldId, Oid oldRelId, Oid refRelId,
566570 char *cmd, List **wqueue, LOCKMODE lockmode,
567571 bool rewrite);
568- static void RebuildConstraintComment(AlteredTableInfo *tab, int pass,
572+ static void RebuildConstraintComment(AlteredTableInfo *tab, AlterTablePass pass,
569573 Oid objid, Relation rel, List *domname,
570574 const char *conname);
571575static void TryReuseIndex(Oid oldId, IndexStmt *stmt);
@@ -4739,7 +4743,7 @@ ATPrepCmd(List **wqueue, Relation rel, AlterTableCmd *cmd,
47394743 AlterTableUtilityContext *context)
47404744{
47414745 AlteredTableInfo *tab;
4742- int pass = AT_PASS_UNSET;
4746+ AlterTablePass pass = AT_PASS_UNSET;
47434747
47444748 /* Find or create work queue entry for this table */
47454749 tab = ATGetQueueEntry(wqueue, rel);
@@ -5113,7 +5117,6 @@ static void
51135117ATRewriteCatalogs(List **wqueue, LOCKMODE lockmode,
51145118 AlterTableUtilityContext *context)
51155119{
5116- int pass;
51175120 ListCell *ltab;
51185121
51195122 /*
@@ -5123,7 +5126,7 @@ ATRewriteCatalogs(List **wqueue, LOCKMODE lockmode,
51235126 * re-adding of the foreign key constraint to the other table). Work can
51245127 * only be propagated into later passes, however.
51255128 */
5126- for (pass = 0; pass < AT_NUM_PASSES; pass++)
5129+ for (AlterTablePass pass = 0; pass < AT_NUM_PASSES; pass++)
51275130 {
51285131 /* Go through each table that needs to be processed */
51295132 foreach(ltab, *wqueue)
@@ -5186,7 +5189,7 @@ ATRewriteCatalogs(List **wqueue, LOCKMODE lockmode,
51865189 */
51875190static void
51885191ATExecCmd(List **wqueue, AlteredTableInfo *tab,
5189- AlterTableCmd *cmd, LOCKMODE lockmode, int cur_pass,
5192+ AlterTableCmd *cmd, LOCKMODE lockmode, AlterTablePass cur_pass,
51905193 AlterTableUtilityContext *context)
51915194{
51925195 ObjectAddress address = InvalidObjectAddress;
@@ -5513,7 +5516,7 @@ ATExecCmd(List **wqueue, AlteredTableInfo *tab,
55135516static AlterTableCmd *
55145517ATParseTransformCmd(List **wqueue, AlteredTableInfo *tab, Relation rel,
55155518 AlterTableCmd *cmd, bool recurse, LOCKMODE lockmode,
5516- int cur_pass, AlterTableUtilityContext *context)
5519+ AlterTablePass cur_pass, AlterTableUtilityContext *context)
55175520{
55185521 AlterTableCmd *newcmd = NULL;
55195522 AlterTableStmt *atstmt = makeNode(AlterTableStmt);
@@ -5551,7 +5554,7 @@ ATParseTransformCmd(List **wqueue, AlteredTableInfo *tab, Relation rel,
55515554 foreach(lc, atstmt->cmds)
55525555 {
55535556 AlterTableCmd *cmd2 = lfirst_node(AlterTableCmd, lc);
5554- int pass;
5557+ AlterTablePass pass;
55555558
55565559 /*
55575560 * This switch need only cover the subcommand types that can be added
@@ -6956,7 +6959,7 @@ ATPrepAddColumn(List **wqueue, Relation rel, bool recurse, bool recursing,
69566959static ObjectAddress
69576960ATExecAddColumn(List **wqueue, AlteredTableInfo *tab, Relation rel,
69586961 AlterTableCmd **cmd, bool recurse, bool recursing,
6959- LOCKMODE lockmode, int cur_pass,
6962+ LOCKMODE lockmode, AlterTablePass cur_pass,
69606963 AlterTableUtilityContext *context)
69616964{
69626965 Oid myrelid = RelationGetRelid(rel);
@@ -14232,7 +14235,7 @@ ATPostAlterTypeParse(Oid oldId, Oid oldRelId, Oid refRelId, char *cmd,
1423214235 * entry; but callers already have them so might as well pass them.)
1423314236 */
1423414237static void
14235- RebuildConstraintComment(AlteredTableInfo *tab, int pass, Oid objid,
14238+ RebuildConstraintComment(AlteredTableInfo *tab, AlterTablePass pass, Oid objid,
1423614239 Relation rel, List *domname,
1423714240 const char *conname)
1423814241{
0 commit comments