Hi Timour,
Found another possible issue:
The code in best_extension_by_limited_search() calls
join->static_pushdown_cost(). static_pushdown_cost() may modify
join->position[$I].read_time for any $I.
Now, consider an example:
SELECT * FROM t1,t2,t3 WHERE subquery_conditions
The join optimizer
> +double JOIN::static_pushdown_cost(Item *pushed_cond, uint idx)
> +{
> + table_map cond_tables= pushed_cond->used_tables();
> + POSITION *last_pos= NULL;
> + POSITION *opt_pos;
> + double pushed_cond_cost;
Take the first example from condition_pushdown.inc:
explain extended
SELECT count(*) f
2 matches
Mail list logo