Bug #47375 Online alter table published new table definition too early
Submitted: 16 Sep 2009 13:24 Modified: 16 Sep 2009 16:18
Reporter: Jonas Oreland Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S3 (Non-critical)
Version:mysql-5.1-telco-7.0 OS:Any
Assigned to: Jonas Oreland CPU Architecture:Any

[16 Sep 2009 13:24] Jonas Oreland
Description:
During an online alter table, the new definition was made available
for users (ndbapi/mysqld or ndbd-internal) during the prepare-phase

When it should really only be exposed during/after commit.

This caused martin's new testcase with backup+alter table to fail

comment: the "general" problem also existed in 6.3, but
  backup had special handling, and the possible alters were less
  and some other coding details made it more unlikely

How to repeat:
re-enable martins testcase in ndb_alter_table_online

Suggested fix:
change to publish only on commit
[16 Sep 2009 13:30] 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/83486

3014 Jonas Oreland	2009-09-16
      ndb - bug#47375 - don't expose new table definition until commit, and reenable martins testcase
[16 Sep 2009 15:26] Jonas Oreland
pushed to 7.0.8 and 7.1
[16 Sep 2009 16:18] Jon Stephens
Documented bugfix in the NDB-7.0.8 changelog as follows:

        During an online alter table operation, the new table definition
        was made available for users during the prepare-phase when it
        should only be exposed during and after a commit. This issue
        could affect NDB API applications, mysqld processes, or data
        node processes.

Closed.
[30 Sep 2009 8:14] Bugs System
Pushed into 5.1.37-ndb-7.0.9 (revid:jonas@mysql.com-20090930075942-1q6asjcp0gaeynmj) (version source revid:jonas@mysql.com-20090916132958-skiowcb1ctc6zjjk) (merge vers: 5.1.37-ndb-7.0.8) (pib:11)
[30 Sep 2009 8:15] Bugs System
Pushed into 5.1.35-ndb-7.1.0 (revid:jonas@mysql.com-20090930080049-1c8a8cio9qgvhq35) (version source revid:jonas@mysql.com-20090916135407-3n3lg85753dlltjf) (merge vers: 5.1.35-ndb-7.1.0) (pib:11)