mirror of
https://github.com/MariaDB/server.git
synced 2026-05-16 03:47:17 +02:00
Fixed the previous merge to be able to build mysqld.
Adjusted one result file.
This commit is contained in:
parent
17622bc088
commit
4de75afb45
4 changed files with 10 additions and 11 deletions
|
|
@ -580,7 +580,8 @@ The following options may be given as the first argument:
|
||||||
semijoin_with_cache, join_cache_incremental,
|
semijoin_with_cache, join_cache_incremental,
|
||||||
join_cache_hashed, join_cache_bka,
|
join_cache_hashed, join_cache_bka,
|
||||||
optimize_join_buffer_size, table_elimination,
|
optimize_join_buffer_size, table_elimination,
|
||||||
extended_keys, exists_to_in, orderby_uses_equalities
|
extended_keys, exists_to_in, orderby_uses_equalities,
|
||||||
|
condition_pushdown_for_derived
|
||||||
--optimizer-use-condition-selectivity=#
|
--optimizer-use-condition-selectivity=#
|
||||||
Controls selectivity of which conditions the optimizer
|
Controls selectivity of which conditions the optimizer
|
||||||
takes into account to calculate cardinality of a partial
|
takes into account to calculate cardinality of a partial
|
||||||
|
|
@ -1328,7 +1329,7 @@ old-style-user-limits FALSE
|
||||||
optimizer-prune-level 1
|
optimizer-prune-level 1
|
||||||
optimizer-search-depth 62
|
optimizer-search-depth 62
|
||||||
optimizer-selectivity-sampling-limit 100
|
optimizer-selectivity-sampling-limit 100
|
||||||
optimizer-switch index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,index_merge_sort_intersection=off,engine_condition_pushdown=off,index_condition_pushdown=on,derived_merge=on,derived_with_keys=on,firstmatch=on,loosescan=on,materialization=on,in_to_exists=on,semijoin=on,partial_match_rowid_merge=on,partial_match_table_scan=on,subquery_cache=on,mrr=off,mrr_cost_based=off,mrr_sort_keys=off,outer_join_with_cache=on,semijoin_with_cache=on,join_cache_incremental=on,join_cache_hashed=on,join_cache_bka=on,optimize_join_buffer_size=off,table_elimination=on,extended_keys=on,exists_to_in=on
|
optimizer-switch index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,index_merge_sort_intersection=off,engine_condition_pushdown=off,index_condition_pushdown=on,derived_merge=on,derived_with_keys=on,firstmatch=on,loosescan=on,materialization=on,in_to_exists=on,semijoin=on,partial_match_rowid_merge=on,partial_match_table_scan=on,subquery_cache=on,mrr=off,mrr_cost_based=off,mrr_sort_keys=off,outer_join_with_cache=on,semijoin_with_cache=on,join_cache_incremental=on,join_cache_hashed=on,join_cache_bka=on,optimize_join_buffer_size=off,table_elimination=on,extended_keys=on,exists_to_in=on,orderby_uses_equalities=off,condition_pushdown_for_derived=on
|
||||||
optimizer-use-condition-selectivity 1
|
optimizer-use-condition-selectivity 1
|
||||||
performance-schema FALSE
|
performance-schema FALSE
|
||||||
performance-schema-accounts-size -1
|
performance-schema-accounts-size -1
|
||||||
|
|
|
||||||
|
|
@ -10083,14 +10083,14 @@ const char *dbug_print_item(Item *item)
|
||||||
|
|
||||||
#endif /*DBUG_OFF*/
|
#endif /*DBUG_OFF*/
|
||||||
|
|
||||||
bool Item_field::exclusive_dependence_on_table_processor(uchar *map)
|
bool Item_field::exclusive_dependence_on_table_processor(void *map)
|
||||||
{
|
{
|
||||||
table_map tab_map= *((table_map *) map);
|
table_map tab_map= *((table_map *) map);
|
||||||
return !((used_tables() == tab_map ||
|
return !((used_tables() == tab_map ||
|
||||||
(item_equal && item_equal->used_tables() & tab_map)));
|
(item_equal && item_equal->used_tables() & tab_map)));
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Item_field::exclusive_dependence_on_grouping_fields_processor(uchar *arg)
|
bool Item_field::exclusive_dependence_on_grouping_fields_processor(void *arg)
|
||||||
{
|
{
|
||||||
st_select_lex *sl= (st_select_lex *)arg;
|
st_select_lex *sl= (st_select_lex *)arg;
|
||||||
List_iterator<Grouping_tmp_field> li(sl->grouping_tmp_fields);
|
List_iterator<Grouping_tmp_field> li(sl->grouping_tmp_fields);
|
||||||
|
|
|
||||||
10
sql/item.h
10
sql/item.h
|
|
@ -1481,12 +1481,10 @@ public:
|
||||||
virtual bool exists2in_processor(void *opt_arg) { return 0; }
|
virtual bool exists2in_processor(void *opt_arg) { return 0; }
|
||||||
virtual bool find_selective_predicates_list_processor(void *opt_arg)
|
virtual bool find_selective_predicates_list_processor(void *opt_arg)
|
||||||
{ return 0; }
|
{ return 0; }
|
||||||
virtual bool exclusive_dependence_on_table_processor(uchar *map)
|
virtual bool exclusive_dependence_on_table_processor(void *map)
|
||||||
{ return 0; }
|
{ return 0; }
|
||||||
virtual bool exclusive_dependence_on_grouping_fields_processor(uchar *arg)
|
virtual bool exclusive_dependence_on_grouping_fields_processor(void *arg)
|
||||||
{ return 0; }
|
{ return 0; }
|
||||||
//virtual Item *get_copy(THD *thd, MEM_ROOT *mem_root);
|
|
||||||
|
|
||||||
|
|
||||||
virtual Item *get_copy(THD *thd, MEM_ROOT *mem_root)=0;
|
virtual Item *get_copy(THD *thd, MEM_ROOT *mem_root)=0;
|
||||||
|
|
||||||
|
|
@ -2583,8 +2581,8 @@ public:
|
||||||
virtual Item *derived_field_transformer_for_having(THD *thd, uchar *arg);
|
virtual Item *derived_field_transformer_for_having(THD *thd, uchar *arg);
|
||||||
virtual Item *derived_field_transformer_for_where(THD *thd, uchar *arg);
|
virtual Item *derived_field_transformer_for_where(THD *thd, uchar *arg);
|
||||||
virtual void print(String *str, enum_query_type query_type);
|
virtual void print(String *str, enum_query_type query_type);
|
||||||
bool exclusive_dependence_on_table_processor(uchar *map);
|
bool exclusive_dependence_on_table_processor(void *map);
|
||||||
bool exclusive_dependence_on_grouping_fields_processor(uchar *arg);
|
bool exclusive_dependence_on_grouping_fields_processor(void *arg);
|
||||||
Item *get_copy(THD *thd, MEM_ROOT *mem_root)
|
Item *get_copy(THD *thd, MEM_ROOT *mem_root)
|
||||||
{ return get_item_copy<Item_field>(thd, mem_root, this); }
|
{ return get_item_copy<Item_field>(thd, mem_root, this); }
|
||||||
bool is_outer_field() const
|
bool is_outer_field() const
|
||||||
|
|
|
||||||
|
|
@ -7950,7 +7950,7 @@ void TABLE_LIST::check_pushable_cond_for_table(Item *cond)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (cond->walk(&Item::exclusive_dependence_on_table_processor,
|
else if (cond->walk(&Item::exclusive_dependence_on_table_processor,
|
||||||
0, (uchar *) &tab_map))
|
0, (void *) &tab_map))
|
||||||
cond->set_extraction_flag(NO_EXTRACTION_FL);
|
cond->set_extraction_flag(NO_EXTRACTION_FL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue