Bug #20706 CR: After replication InnoDB table has another Data_Lenght on slave
Submitted: 26 Jun 2006 20:06 Modified: 20 Nov 2006 12:11
Reporter: Serge Kozlov Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server: Replication Severity:S3 (Non-critical)
Version:5.1.12-bk OS:Linux (Linux FC4)
Assigned to: Lars Thalmann CPU Architecture:Any

[26 Jun 2006 20:06] Serge Kozlov
Description:
A table with 100K rows have based on NDB engine. Then one was converted to InnoDB engine. But size of tables on master and on slave have different sizes.
For my instance:
MASTER:
| account | InnoDB |      10 | Compact    | 101050 |            192 |    19415040|               0 |            0 |         0 |           NULL | 2006-06-26 21:
42:36 | NULL        | NULL       | latin1_swedish_ci |     NULL |
 | InnoDB free: 25600 kB |

SLAVE:
| account | InnoDB |      10 | Compact    | 94139 |            217 |    20463616
 |               0 |            0 |         0 |           NULL | 2006-06-26 21:4
4:03 | NULL        | NULL       | latin1_swedish_ci |     NULL |
| InnoDB free: 24576 kB |

How to repeat:
1. Create two cluster with same configuration except one is master, another is slave.
2. Start master.
3. Start slave.
4. Make sure that replication works.
5. Run ./load_tpcb.pl ndb16 3306 root BLANK ndb. It creates several tables and 'account' table has 100K (engine is NDB).
6. Change engine for this table (ALTER TABLE account ENGINE=InnoDB;)
7. Wait while changes fully replicated on slave.
8. Run SHOW TABLE STATUS on both servers and look at Data_lenght column.