• gkodinov@mysql.com's avatar
    Bug #18895: BIT values cause joins to fail · 476d728a
    gkodinov@mysql.com authored
    The Field::eq() considered instances of Field_bit that differ only in 
    bit_ptr/bit_ofs equal. This caused equality conditions optimization 
    (build_equal_items_for_cond()) to make bad field substitutions that result
    in wrong predicates. 
    Field_bit requires an overloaded eq() function that checks the bit_ptr/bit_ofs
    in addition to Field::eq().
    476d728a
field.h 59.4 KB