Bug #19219 RBR: Table definition checked too early on slave
Submitted: 20 Apr 2006 13:09 Modified: 14 Dec 2006 16:12
Reporter: Mats Kindahl Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server: Row Based Replication ( RBR ) Severity:S1 (Critical)
Version:5.1 OS:Any (ALL)
Assigned to: Assigned Account CPU Architecture:Any

[20 Apr 2006 13:09] Mats Kindahl
Description:
When a table map event arrives to the slave, the definition in the table map is matched against the definition of the table on the slave. The tables are the collected into a list, which is used to lock all tables once the first binrow event is seen.

Potentially, the table definition could change between the matching and the lock of the table, causing errors when the rows are applied.

How to repeat:
See the code

Suggested fix:
Match the definition of the table against the one on the slave after the table is locked.