• Ramil Kalimullin's avatar
    Fix for bug #42957: no results from · 0fd7a359
    Ramil Kalimullin authored
    select where .. (col=col and col=col) or ... (false expression)
    
    Problem: optimizer didn't take into account a singular case 
    when we eliminated all the predicates at the AND level of WHERE.
    That may lead to wrong results.
    
    Fix: replace (a=a AND a=a...) with TRUE if we eliminated all the
    predicates.
    
    
    mysql-test/r/select.result:
      Fix for bug #42957: no results from 
      select where .. (col=col and col=col) or ... (false expression)
        - test result.
    mysql-test/t/select.test:
      Fix for bug #42957: no results from 
      select where .. (col=col and col=col) or ... (false expression)
        - test case.
    sql/sql_select.cc:
      Fix for bug #42957: no results from 
      select where .. (col=col and col=col) or ... (false expression)
        - replacing equality predicates by multiple equality items check
      if we eliminate all the predicates at the AND level and 
      replace them with TRUE if so.
    0fd7a359
select.result 127 KB