• Alexander Barkov's avatar
    MDEV-11586 UNION of FLOAT type results in erroneous precision · a659291e
    Alexander Barkov authored
    Fixing the asymmetry in the array field_types_merge_rules[][]
    which caused data loss when mixing FLOAT + BIGINT in UNIONs
    or hybrid functions:
    
    1. FLOAT  + INT    = DOUBLE
    2. FLOAT  + BIGINT = FLOAT
    3. INT    + FLOAT  = DOUBLE
    4. BIGINT + FLOAT  = DOUBLE
    
    Now FLOAT + BIGINT (as in #2) also produces DOUBLE, like the cases #1,#3,#4 do.
    a659291e
field.cc 312 KB