Stephen Frost wrote:
> Add ALTER TABLESPACE ... MOVE command
>
> This adds a 'MOVE' sub-command to ALTER TABLESPACE which allows moving sets of
> objects from one tablespace to another. This can be extremely handy and
> avoids
> a lot of error-prone scripting. ALTER TABLESPACE ... MOVE will only move
> objects the user owns, will notify the user if no objects were found, and can
> be used to move ALL objects or specific types of objects (TABLES, INDEXES, or
> MATERIALIZED VIEWS).
I just noticed that this commit added the new commands under the
"ALTER THING name RENAME TO" production (which were originally for
RenameStmt); since commit d86d51a95 had already added some
AlterTableSpaceOptionsStmt nodes to the possible results, maybe this
wasn't so bad in itself; but still it seems quite unlike the way we
organize our parse productions.
If we don't want to add new productions for these new node types, I
think at least this comment update is warranted:
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y
index 2867fa2..359bb8c 100644
--- a/src/backend/parser/gram.y
+++ b/src/backend/parser/gram.y
@@ -7009,6 +7009,8 @@ opt_force: FORCE
{ $$ = TRUE; }
/*****************************************************************************
*
* ALTER THING name RENAME TO newname
+ * ALTER TABLESPACE name MOVE blah
+ * ALTER TABLESPACE name SET/RESET blah
*
*****************************************************************************/
Other thoughts?
--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
--
Sent via pgsql-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers