Commit 39e6de43 authored by sergefp@mysql.com's avatar sergefp@mysql.com

BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...):

Fixed typo problem that surfaced after the merge
parent cced6255
...@@ -2973,14 +2973,14 @@ add_key_fields(JOIN *join, KEY_FIELD **key_fields, uint *and_level, ...@@ -2973,14 +2973,14 @@ add_key_fields(JOIN *join, KEY_FIELD **key_fields, uint *and_level,
if (cond->type() == Item::FUNC_ITEM && if (cond->type() == Item::FUNC_ITEM &&
((Item_func*)cond)->functype() == Item_func::TRIG_COND_FUNC) ((Item_func*)cond)->functype() == Item_func::TRIG_COND_FUNC)
{ {
cond= ((Item_func*)cond)->arguments()[0]; Item *cond_arg= ((Item_func*)cond)->arguments()[0];
if (!join->group_list && !join->order && if (!join->group_list && !join->order &&
join->unit->item && join->unit->item &&
join->unit->item->substype() == Item_subselect::IN_SUBS && join->unit->item->substype() == Item_subselect::IN_SUBS &&
!join->unit->first_select()->next_select()) !join->unit->first_select()->next_select())
{ {
KEY_FIELD *save= *key_fields; KEY_FIELD *save= *key_fields;
add_key_fields(join, key_fields, and_level, cond, usable_tables, add_key_fields(join, key_fields, and_level, cond_arg, usable_tables,
sargables); sargables);
// Indicate that this ref access candidate is for subquery lookup: // Indicate that this ref access candidate is for subquery lookup:
for (; save != *key_fields; save++) for (; save != *key_fields; save++)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment