Commit 16d8d189 authored by Sergei Petrunia's avatar Sergei Petrunia

Basic Optimizer Trace support for table condition pushdown

Print the condition being pushed.
parent eab219d5
...@@ -11587,11 +11587,16 @@ make_join_select(JOIN *join,SQL_SELECT *select,COND *cond) ...@@ -11587,11 +11587,16 @@ make_join_select(JOIN *join,SQL_SELECT *select,COND *cond)
HA_CAN_TABLE_CONDITION_PUSHDOWN) && HA_CAN_TABLE_CONDITION_PUSHDOWN) &&
!first_inner_tab) !first_inner_tab)
{ {
Json_writer_object wrap(thd);
Json_writer_object trace_cp(thd, "table_condition_pushdown");
trace_cp.add_table_name(tab->table);
COND *push_cond= COND *push_cond=
make_cond_for_table(thd, tmp_cond, current_map, current_map, make_cond_for_table(thd, tmp_cond, current_map, current_map,
-1, FALSE, FALSE); -1, FALSE, FALSE);
if (push_cond) if (push_cond)
{ {
trace_cp.add("push_cond", push_cond);
/* Push condition to handler */ /* Push condition to handler */
if (!tab->table->file->cond_push(push_cond)) if (!tab->table->file->cond_push(push_cond))
tab->table->file->pushed_cond= push_cond; tab->table->file->pushed_cond= push_cond;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment