diff options
author | unknown <knielsen@knielsen-hq.org> | 2012-08-24 13:57:39 +0200 |
---|---|---|
committer | unknown <knielsen@knielsen-hq.org> | 2012-08-24 13:57:39 +0200 |
commit | caa535eb9fa97bd7c2190292bb4a3a3c1aaa71e3 (patch) | |
tree | 443fee6698968975faaeadba6ca0d5a532667b18 /sql/opt_subselect.cc | |
parent | 6c3a756dd92af851f421bd9791d4b6b95063b484 (diff) | |
parent | e44a800d91a887119d3b612276b37f09b076fee1 (diff) | |
download | mariadb-git-caa535eb9fa97bd7c2190292bb4a3a3c1aaa71e3.tar.gz |
Merge from 5.3
Diffstat (limited to 'sql/opt_subselect.cc')
-rw-r--r-- | sql/opt_subselect.cc | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/sql/opt_subselect.cc b/sql/opt_subselect.cc index 8d1cbeba5f4..e70e5a784ba 100644 --- a/sql/opt_subselect.cc +++ b/sql/opt_subselect.cc @@ -160,18 +160,18 @@ 3.2.1 Non-merged semi-joins and join optimization ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ For join optimization purposes, non-merged semi-join nests are similar to - base tables - they've got one JOIN_TAB, which can be accessed with one of - two methods: + base tables. Each such nest is represented by one one JOIN_TAB, which has + two possible access strategies: - full table scan (representing SJ-Materialization-Scan strategy) - eq_ref-like table lookup (representing SJ-Materialization-Lookup) Unlike regular base tables, non-merged semi-joins have: - non-zero JOIN_TAB::startup_cost, and - join_tab->table->is_filled_at_execution()==TRUE, which means one - cannot do const table detection or range analysis or other table data- - dependent inferences - // instead, get_delayed_table_estimates() runs optimization on the nest so that - // we get an idea about temptable size + cannot do const table detection, range analysis or other dataset-dependent + optimizations. + Instead, get_delayed_table_estimates() will run optimization for the + subquery and produce an E(materialized table size). 3.2.2 Merged semi-joins and join optimization ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |