mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
[SHOW] EXPLAIN UPDATE/DELETE, code re-structuring
- Merge with current 10.0-base
This commit is contained in:
@@ -620,6 +620,7 @@ bool st_select_lex_unit::exec()
|
||||
ulonglong add_rows=0;
|
||||
ha_rows examined_rows= 0;
|
||||
DBUG_ENTER("st_select_lex_unit::exec");
|
||||
bool was_executed= executed;
|
||||
|
||||
if (executed && !uncacheable && !describe)
|
||||
DBUG_RETURN(FALSE);
|
||||
@@ -629,6 +630,9 @@ bool st_select_lex_unit::exec()
|
||||
|
||||
saved_error= optimize();
|
||||
|
||||
if (!was_executed && thd->lex->query_plan_footprint)
|
||||
save_union_qpf(thd->lex->query_plan_footprint);
|
||||
|
||||
if (uncacheable || !item || !item->assigned() || describe)
|
||||
{
|
||||
for (SELECT_LEX *sl= select_cursor; sl; sl= sl->next_select())
|
||||
@@ -775,6 +779,9 @@ bool st_select_lex_unit::exec()
|
||||
*/
|
||||
if (!fake_select_lex->ref_pointer_array)
|
||||
fake_select_lex->n_child_sum_items+= global_parameters->n_sum_items;
|
||||
|
||||
if (!was_executed && thd->lex->query_plan_footprint)
|
||||
save_union_qpf_part2(thd->lex->query_plan_footprint);
|
||||
|
||||
saved_error= mysql_select(thd, &fake_select_lex->ref_pointer_array,
|
||||
&result_table_list,
|
||||
|
Reference in New Issue
Block a user