Bug #32648 Test failure between NDB Cluster and other engines
Submitted: 23 Nov 2007 9:53 Modified: 1 Feb 2008 14:59
Reporter: Mats Kindahl Email Updates:
Status: Closed Impact on me:
Category:MySQL Cluster: Replication Severity:S3 (Non-critical)
Version: OS:Any
Assigned to: Tomas Ulin CPU Architecture:Any

[23 Nov 2007 9:53] Mats Kindahl
When replicating from a NDB storage engine, any changes made to mysql.ndb_apply status is replicated as well, so the table being replicated exists on the slave as, e.g., InnoDB but the ndb_apply_status is still a NDB engine. Since the NDB storage engine is self-logging, changes within the same statement cannot be made to several engines, so the test fails with an error message on the slave.

How to repeat:
Run rpl_ndb_2innodb, rpl_ndb_2myisam, or rpl_ndb_2other.

Suggested fix:
There are two ways to fix the test:

1) Change the storage engine of the mysql.ndb_apply_status to another engine
   that is not self-logging, is to the same engine as the table being replicated.

2) Filter out changes done to the mysql.ndb_apply_status by adding
   --replicate-ignore-table=mysql.ndb_apply_status to the .opt file.
[4 Jan 2008 14: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:


ChangeSet@1.2650, 2008-01-04 15:33:01+01:00, tomas@whalegate.ndb.mysql.com +24 -0
  Bug#32648 Test failure between NDB Cluster and other engines
[1 Feb 2008 14:59] Jon Stephens
Changes were to tests only, no user-visible changes; closed without further action.
[20 Feb 2008 16:02] Bugs System
Pushed into 5.1.24-rc
[20 Feb 2008 16:03] Bugs System
Pushed into 6.0.5-alpha