Bug #43139 Excluding columns when restoring a table
Submitted: 24 Feb 2009 10:44 Modified: 20 Aug 2009 16:34
Reporter: Geert Vanderkelen Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S4 (Feature request)
Version:mysql-5.1-telco-6.3 OS:Any
Assigned to: Jonas Oreland CPU Architecture:Any

[24 Feb 2009 10:44] Geert Vanderkelen
Description:
It would be nice if we could select or exclude which columns we restore for a particular table. The option should only work when restore 1 table.

This would be particular useful for upgrades of application which have schema changes.

How to repeat:
(feature request)

Suggested fix:
Some examples:

 shell> ndb_restore --include-table=db1.t1 --exclude-columns=c12,c15
 This would exclude columns c12 and c15 while restore table db1.t1

 shell> ndb_restore --include-table=db1.t1 --include-columns=c1,c2,c5
 This would only restore columns c1, c2 and c5 excluding all the other columns.
[27 Feb 2009 11:36] Geert Vanderkelen
Additional option: --exclude-missing-columns: could be used then with all tables then.
[11 May 2009 13:47] Jonathan Miller
Note: need this to be compatible with replication abilities.

i.e can replicate some columns or have additional and would be nice to have a restore to match.
[18 Aug 2009 13:21] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/80986

3011 Jonas Oreland	2009-08-18
      ndb - bug#43139
        Add the option to allow columns to be ignored if there are more
        columns in the backup than in the database
[18 Aug 2009 13:51] Jonas Oreland
pushed to 6.3.26 and 7.0.7

docs: new option "--exclude-missing-columns" that allows one to restore a backup
that has more columns that is currently present in DB.
[19 Aug 2009 14:25] Jon Stephens
Documented feature addition in the NDB-6.3.26 and 7.0.7 changelogs as follows:

        A new option --exclude-missing-columns has been added for the
        ndb_restore program. In the event that any tables in the database 
        or databases being restored to have fewer columns than the 
        same-named tables in the backup, the extra columns in the backup's 
        versions of the tables are ignored. For more information, see
        http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-programs-ndb-restore.html.

Also added option info to ndb_restore description and noted addition in 6.3 and 7.0 Roadmap sections.
[20 Aug 2009 10:00] Jonas Oreland
jon: you documented it as "exclude-extra-columns" when it should be
"exclude-missing-columns"

(although extra might actually been better)...
[20 Aug 2009 16:34] Jon Stephens
This issue has been addressed in the documentation. The updated documentation will appear on our website shortly, and will be included in the next release of the relevant products.

Jonas, thanks for catching this.