summaryrefslogtreecommitdiff
path: root/sql/table.h
diff options
context:
space:
mode:
authorSergey Petrunya <psergey@askmonty.org>2012-04-02 21:41:54 +0400
committerSergey Petrunya <psergey@askmonty.org>2012-04-02 21:41:54 +0400
commit2a16e7674b9462586ef883e5678b21c87ca5f045 (patch)
tree629effcf9ae4f61c5c39368fccf4ab05dc5f1b0b /sql/table.h
parent84a53543c5cca294e771cd7629e8beb8327320f5 (diff)
downloadmariadb-git-2a16e7674b9462586ef883e5678b21c87ca5f045.tar.gz
BUG#913030: Optimizer chooses a suboptimal excution plan for Q18 from DBT-3
- When doing join optimization, pre-sort the tables so that they mimic the execution order we've had with 'semijoin=off'. - That way, we will not get regressions when there are two query plans (the old and the new) that have indentical costs but different execution times (because of factors that the optimizer was not able to take into account).
Diffstat (limited to 'sql/table.h')
-rw-r--r--sql/table.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/sql/table.h b/sql/table.h
index 710359b04c2..ab63250a8ce 100644
--- a/sql/table.h
+++ b/sql/table.h
@@ -1342,6 +1342,8 @@ struct TABLE_LIST
/* If this is a non-jtbm semi-join nest: corresponding subselect predicate */
Item_in_subselect *sj_subq_pred;
+ table_map original_subq_pred_used_tables;
+
/* If this is a jtbm semi-join object: corresponding subselect predicate */
Item_in_subselect *jtbm_subselect;
/* TODO: check if this can be joined with tablenr_exec */