• Venkatesh Duggirala's avatar
    Bug#16416302 - CRASH WITH LOSSY RBR REPLICATION · e55d4a88
    Venkatesh Duggirala authored
    OF OLD STYLE DECIMALS
    
    Problem: In RBR, Slave is unable to read row buffer
    properly when the row event contains MYSQL_TYPE_DECIMAL
    (old style decimals) data type column.
    
    Analysis: In RBR, Slave assumes that Master sends
    meta data information for all column types like
    text,blob,varchar,old decimal,new decimal,float,
    and few  other types along with row buffer event.
    But Master is not sending this meta data information
    for old style decimal columns. Hence Slave is crashing
    due to unknown precision value for these column types.
    Master cannot send this precision value to Slave which
    will break replication cross-version compatibility.
    
    Fix: To fix the crash, Slave will now throw error if it
    receives old-style decimal datatype. User should
    consider changing the old-style decimal to new style
    decimal data type by executing "ALTER table modify column"
    query as mentioned in http://dev.mysql.com/
    doc/refman/5.0/en/upgrading-from-previous-series.html.
    e55d4a88
rpl_utility.cc 31.9 KB