• unknown's avatar
    Fixed bug #26017. · 7ab33d50
    unknown authored
    Objects of the class Item_equal contain an auxiliary member
    eval_item of the type cmp_item that is used only for direct 
    evaluation of multiple equalities. Currently a multiple equality
    is evaluated directly only in the cases when the equality holds
    at most for one row in the result set.
    The compare collation of eval_item was determined incorectly.
    It could lead to returning incorrect results for some queries.
    
    
    mysql-test/r/join_outer.result:
      Added a test case for bug #26017.
    mysql-test/t/join_outer.test:
      Added a test case for bug #26017.
    sql/item_cmpfunc.cc:
      Fixed bug #26017.
      Objects of the class Item_equal contain an auxiliary member
      eval_item of the type cmp_item that is used only for direct 
      evaluation of multiple equalities. Currently a multiple equality
      is evaluated directly only in the cases when the equality holds
      at most for one row in the result set.
      The compare collation of eval_item was determined incorrectly.
      It could lead to returning incorrect results for some queries.
    sql/item_cmpfunc.h:
      Fixed bug #26017.
      Removed the cmp_collation member from the Item_equal class as useless
      for the current implementation of the class.
    7ab33d50
join_outer.test 30.5 KB