WL#6868: Support transportable tablespaces for single innodb partition
Affects: Server-5.7
—
Status: Complete
To enhance WL#6867, add ALTER TABLE t DISCARD PARTITION {p[[,p1]..]|ALL} TABLESPACE; ALTER TABLE t IMPORT PARTITION {p[[,p1]..]|ALL} TABLESPACE; to allow the user to select a subset of all [sub]partitions to DISCARD/IMPORT tablespaces for. This would allow selective backup/restore/archive/transport of a set of partitions instead of all partitions (as in WL#6867). This WL will not include enhancing FLUSH TABLES FOR EXPORT to only export the selected partitions! Related bugs: BUG#70196: DISCARD/IMPORT tablespace is not supported for partitioned InnoDB tables
FR1: The following new syntax should be supported (but only for partitioned tables!) ALTER TABLE t DISCARD PARTITION {p[[,p1]..]|ALL} TABLESPACE; ALTER TABLE t IMPORT PARTITION {p[[,p1]..]|ALL} TABLESPACE; FR2: for sub-partitioned tables, both partition names as well as sub-partition names are allowed. If a partition name is given, all sub-partitions within that partition will be included.
The changes needed for this enhancement are: Based on WL#6867. sql_yacc.yy - Needs to support the new syntax. mysql_discard_or_import_tablespace - Needs to mark which partitions that should be used for the command. ha_partition::discard_or_import_tablespace() - Should only forward the call to the marked/specified partitions.
See rb#3919.
Copyright (c) 2000, 2024, Oracle Corporation and/or its affiliates. All rights reserved.