mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
Merge 10.10 into 10.11
This commit is contained in:
@@ -5337,6 +5337,7 @@ make_join_statistics(JOIN *join, List<TABLE_LIST> &tables_list,
|
||||
|
||||
/* The following should be optimized to only clear critical things */
|
||||
bzero((void*)stat, sizeof(JOIN_TAB)* table_count);
|
||||
join->top_join_tab_count= table_count;
|
||||
|
||||
/* Initialize POSITION objects */
|
||||
for (i=0 ; i <= table_count ; i++)
|
||||
@@ -5931,8 +5932,8 @@ make_join_statistics(JOIN *join, List<TABLE_LIST> &tables_list,
|
||||
join->cond_equal= &((Item_cond_and*) (join->conds))->m_cond_equal;
|
||||
|
||||
s->quick=select->quick;
|
||||
s->needed_reg=select->needed_reg;
|
||||
select->quick=0;
|
||||
s->needed_reg=select->needed_reg;
|
||||
impossible_range= records == 0 && s->table->reginfo.impossible_range;
|
||||
if (join->thd->lex->sql_command == SQLCOM_SELECT &&
|
||||
optimizer_flag(join->thd, OPTIMIZER_SWITCH_USE_ROWID_FILTER))
|
||||
@@ -14772,7 +14773,6 @@ void JOIN_TAB::cleanup()
|
||||
*/
|
||||
table->pos_in_table_list->table= NULL;
|
||||
free_tmp_table(join->thd, table);
|
||||
table= NULL;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -14785,8 +14785,8 @@ void JOIN_TAB::cleanup()
|
||||
multiple times (it may be)
|
||||
*/
|
||||
tmp->table= NULL;
|
||||
table= NULL;
|
||||
}
|
||||
table= NULL;
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
/*
|
||||
@@ -16065,7 +16065,8 @@ bool check_simple_equality(THD *thd, const Item::Context &ctx,
|
||||
Field *left_field= ((Item_field*) left_item)->field;
|
||||
Field *right_field= ((Item_field*) right_item)->field;
|
||||
|
||||
if (!left_field->eq_def(right_field))
|
||||
if (!left_field->eq_def(right_field) &&
|
||||
!fields_equal_using_narrowing(thd, left_field, right_field))
|
||||
return FALSE;
|
||||
|
||||
/* Search for multiple equalities containing field1 and/or field2 */
|
||||
|
Reference in New Issue
Block a user