• Georgi Kodinov's avatar
    Bug#37627: Killing query with sum(exists()) or avg(exists()) reproducibly crashes server · 0e1709bd
    Georgi Kodinov authored
    When there is an error executing EXISTS predicates they return NULL as their string
    or decimal value but don't set the NULL value flag.
    Fixed by returning 0 (as a decimal or a string) on error exectuting the subquery.
    Note that we can't return NULL as EXISTS is not supposed to return NULL.
    
    mysql-test/r/subselect.result:
      Bug#37627: test case
    mysql-test/t/subselect.test:
      Bug#37627: test case
    sql/item_subselect.cc:
      Bug#37627: return decimal (or string) 0 isntead of a NULL pointer on
      error calculating an EXISTS predicate.
    0e1709bd
subselect.test 121 KB