@@ -218,7 +218,7 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query);
218218 AlterDatabaseStmt AlterDatabaseSetStmt AlterDomainStmt AlterEnumStmt
219219 AlterFdwStmt AlterForeignServerStmt AlterGroupStmt
220220 AlterObjectSchemaStmt AlterOwnerStmt AlterSeqStmt AlterSystemStmt AlterTableStmt
221- AlterExtensionStmt AlterExtensionContentsStmt AlterForeignTableStmt
221+ AlterTblSpcStmt AlterExtensionStmt AlterExtensionContentsStmt AlterForeignTableStmt
222222 AlterCompositeTypeStmt AlterUserStmt AlterUserMappingStmt AlterUserSetStmt
223223 AlterRoleStmt AlterRoleSetStmt
224224 AlterDefaultPrivilegesStmt DefACLAction
@@ -728,6 +728,7 @@ stmt :
728728 | AlterSeqStmt
729729 | AlterSystemStmt
730730 | AlterTableStmt
731+ | AlterTblSpcStmt
731732 | AlterCompositeTypeStmt
732733 | AlterRoleSetStmt
733734 | AlterRoleStmt
@@ -6934,6 +6935,128 @@ opt_force: FORCE { $$ = TRUE; }
69346935 ;
69356936
69366937
6938+ /* ****************************************************************************
6939+ *
6940+ * ALTER TABLESPACE
6941+ *
6942+ *****************************************************************************/
6943+
6944+ AlterTblSpcStmt : ALTER TABLESPACE name MOVE ALL TO name opt_nowait
6945+ {
6946+ AlterTableSpaceMoveStmt *n =
6947+ makeNode (AlterTableSpaceMoveStmt);
6948+ n->orig_tablespacename = $3 ;
6949+ n->objtype = -1 ;
6950+ n->move_all = true ;
6951+ n->roles = NIL;
6952+ n->new_tablespacename = $7 ;
6953+ n->nowait = $8 ;
6954+ $$ = (Node *)n;
6955+ }
6956+ | ALTER TABLESPACE name MOVE TABLES TO name opt_nowait
6957+ {
6958+ AlterTableSpaceMoveStmt *n =
6959+ makeNode (AlterTableSpaceMoveStmt);
6960+ n->orig_tablespacename = $3 ;
6961+ n->objtype = OBJECT_TABLE;
6962+ n->move_all = false ;
6963+ n->roles = NIL;
6964+ n->new_tablespacename = $7 ;
6965+ n->nowait = $8 ;
6966+ $$ = (Node *)n;
6967+ }
6968+ | ALTER TABLESPACE name MOVE INDEXES TO name opt_nowait
6969+ {
6970+ AlterTableSpaceMoveStmt *n =
6971+ makeNode (AlterTableSpaceMoveStmt);
6972+ n->orig_tablespacename = $3 ;
6973+ n->objtype = OBJECT_INDEX;
6974+ n->move_all = false ;
6975+ n->roles = NIL;
6976+ n->new_tablespacename = $7 ;
6977+ n->nowait = $8 ;
6978+ $$ = (Node *)n;
6979+ }
6980+ | ALTER TABLESPACE name MOVE MATERIALIZED VIEWS TO name opt_nowait
6981+ {
6982+ AlterTableSpaceMoveStmt *n =
6983+ makeNode (AlterTableSpaceMoveStmt);
6984+ n->orig_tablespacename = $3 ;
6985+ n->objtype = OBJECT_MATVIEW;
6986+ n->move_all = false ;
6987+ n->roles = NIL;
6988+ n->new_tablespacename = $8 ;
6989+ n->nowait = $9 ;
6990+ $$ = (Node *)n;
6991+ }
6992+ | ALTER TABLESPACE name MOVE ALL OWNED BY role_list TO name opt_nowait
6993+ {
6994+ AlterTableSpaceMoveStmt *n =
6995+ makeNode (AlterTableSpaceMoveStmt);
6996+ n->orig_tablespacename = $3 ;
6997+ n->objtype = -1 ;
6998+ n->move_all = true ;
6999+ n->roles = $8 ;
7000+ n->new_tablespacename = $10 ;
7001+ n->nowait = $11 ;
7002+ $$ = (Node *)n;
7003+ }
7004+ | ALTER TABLESPACE name MOVE TABLES OWNED BY role_list TO name opt_nowait
7005+ {
7006+ AlterTableSpaceMoveStmt *n =
7007+ makeNode (AlterTableSpaceMoveStmt);
7008+ n->orig_tablespacename = $3 ;
7009+ n->objtype = OBJECT_TABLE;
7010+ n->move_all = false ;
7011+ n->roles = $8 ;
7012+ n->new_tablespacename = $10 ;
7013+ n->nowait = $11 ;
7014+ $$ = (Node *)n;
7015+ }
7016+ | ALTER TABLESPACE name MOVE INDEXES OWNED BY role_list TO name opt_nowait
7017+ {
7018+ AlterTableSpaceMoveStmt *n =
7019+ makeNode (AlterTableSpaceMoveStmt);
7020+ n->orig_tablespacename = $3 ;
7021+ n->objtype = OBJECT_INDEX;
7022+ n->move_all = false ;
7023+ n->roles = $8 ;
7024+ n->new_tablespacename = $10 ;
7025+ n->nowait = $11 ;
7026+ $$ = (Node *)n;
7027+ }
7028+ | ALTER TABLESPACE name MOVE MATERIALIZED VIEWS OWNED BY role_list TO name opt_nowait
7029+ {
7030+ AlterTableSpaceMoveStmt *n =
7031+ makeNode (AlterTableSpaceMoveStmt);
7032+ n->orig_tablespacename = $3 ;
7033+ n->objtype = OBJECT_MATVIEW;
7034+ n->move_all = false ;
7035+ n->roles = $9 ;
7036+ n->new_tablespacename = $11 ;
7037+ n->nowait = $12 ;
7038+ $$ = (Node *)n;
7039+ }
7040+ | ALTER TABLESPACE name SET reloptions
7041+ {
7042+ AlterTableSpaceOptionsStmt *n =
7043+ makeNode (AlterTableSpaceOptionsStmt);
7044+ n->tablespacename = $3 ;
7045+ n->options = $5 ;
7046+ n->isReset = FALSE ;
7047+ $$ = (Node *)n;
7048+ }
7049+ | ALTER TABLESPACE name RESET reloptions
7050+ {
7051+ AlterTableSpaceOptionsStmt *n =
7052+ makeNode (AlterTableSpaceOptionsStmt);
7053+ n->tablespacename = $3 ;
7054+ n->options = $5 ;
7055+ n->isReset = TRUE ;
7056+ $$ = (Node *)n;
7057+ }
7058+ ;
7059+
69377060/* ****************************************************************************
69387061 *
69397062 * ALTER THING name RENAME TO newname
@@ -7322,120 +7445,6 @@ RenameStmt: ALTER AGGREGATE func_name aggr_args RENAME TO name
73227445 n->missing_ok = false ;
73237446 $$ = (Node *)n;
73247447 }
7325- | ALTER TABLESPACE name MOVE ALL TO name opt_nowait
7326- {
7327- AlterTableSpaceMoveStmt *n =
7328- makeNode (AlterTableSpaceMoveStmt);
7329- n->orig_tablespacename = $3 ;
7330- n->objtype = -1 ;
7331- n->move_all = true ;
7332- n->roles = NIL;
7333- n->new_tablespacename = $7 ;
7334- n->nowait = $8 ;
7335- $$ = (Node *)n;
7336- }
7337- | ALTER TABLESPACE name MOVE TABLES TO name opt_nowait
7338- {
7339- AlterTableSpaceMoveStmt *n =
7340- makeNode (AlterTableSpaceMoveStmt);
7341- n->orig_tablespacename = $3 ;
7342- n->objtype = OBJECT_TABLE;
7343- n->move_all = false ;
7344- n->roles = NIL;
7345- n->new_tablespacename = $7 ;
7346- n->nowait = $8 ;
7347- $$ = (Node *)n;
7348- }
7349- | ALTER TABLESPACE name MOVE INDEXES TO name opt_nowait
7350- {
7351- AlterTableSpaceMoveStmt *n =
7352- makeNode (AlterTableSpaceMoveStmt);
7353- n->orig_tablespacename = $3 ;
7354- n->objtype = OBJECT_INDEX;
7355- n->move_all = false ;
7356- n->roles = NIL;
7357- n->new_tablespacename = $7 ;
7358- n->nowait = $8 ;
7359- $$ = (Node *)n;
7360- }
7361- | ALTER TABLESPACE name MOVE MATERIALIZED VIEWS TO name opt_nowait
7362- {
7363- AlterTableSpaceMoveStmt *n =
7364- makeNode (AlterTableSpaceMoveStmt);
7365- n->orig_tablespacename = $3 ;
7366- n->objtype = OBJECT_MATVIEW;
7367- n->move_all = false ;
7368- n->roles = NIL;
7369- n->new_tablespacename = $8 ;
7370- n->nowait = $9 ;
7371- $$ = (Node *)n;
7372- }
7373- | ALTER TABLESPACE name MOVE ALL OWNED BY role_list TO name opt_nowait
7374- {
7375- AlterTableSpaceMoveStmt *n =
7376- makeNode (AlterTableSpaceMoveStmt);
7377- n->orig_tablespacename = $3 ;
7378- n->objtype = -1 ;
7379- n->move_all = true ;
7380- n->roles = $8 ;
7381- n->new_tablespacename = $10 ;
7382- n->nowait = $11 ;
7383- $$ = (Node *)n;
7384- }
7385- | ALTER TABLESPACE name MOVE TABLES OWNED BY role_list TO name opt_nowait
7386- {
7387- AlterTableSpaceMoveStmt *n =
7388- makeNode (AlterTableSpaceMoveStmt);
7389- n->orig_tablespacename = $3 ;
7390- n->objtype = OBJECT_TABLE;
7391- n->move_all = false ;
7392- n->roles = $8 ;
7393- n->new_tablespacename = $10 ;
7394- n->nowait = $11 ;
7395- $$ = (Node *)n;
7396- }
7397- | ALTER TABLESPACE name MOVE INDEXES OWNED BY role_list TO name opt_nowait
7398- {
7399- AlterTableSpaceMoveStmt *n =
7400- makeNode (AlterTableSpaceMoveStmt);
7401- n->orig_tablespacename = $3 ;
7402- n->objtype = OBJECT_INDEX;
7403- n->move_all = false ;
7404- n->roles = $8 ;
7405- n->new_tablespacename = $10 ;
7406- n->nowait = $11 ;
7407- $$ = (Node *)n;
7408- }
7409- | ALTER TABLESPACE name MOVE MATERIALIZED VIEWS OWNED BY role_list TO name opt_nowait
7410- {
7411- AlterTableSpaceMoveStmt *n =
7412- makeNode (AlterTableSpaceMoveStmt);
7413- n->orig_tablespacename = $3 ;
7414- n->objtype = OBJECT_MATVIEW;
7415- n->move_all = false ;
7416- n->roles = $9 ;
7417- n->new_tablespacename = $11 ;
7418- n->nowait = $12 ;
7419- $$ = (Node *)n;
7420- }
7421- | ALTER TABLESPACE name SET reloptions
7422- {
7423- AlterTableSpaceOptionsStmt *n =
7424- makeNode (AlterTableSpaceOptionsStmt);
7425- n->tablespacename = $3 ;
7426- n->options = $5 ;
7427- n->isReset = FALSE ;
7428- $$ = (Node *)n;
7429- }
7430- | ALTER TABLESPACE name RESET reloptions
7431- {
7432- AlterTableSpaceOptionsStmt *n =
7433- makeNode (AlterTableSpaceOptionsStmt);
7434- n->tablespacename = $3 ;
7435- n->options = $5 ;
7436- n->isReset = TRUE ;
7437- $$ = (Node *)n;
7438- }
74397448 | ALTER TEXT_P SEARCH PARSER any_name RENAME TO name
74407449 {
74417450 RenameStmt *n = makeNode(RenameStmt);
0 commit comments