MCPcopy Create free account
hub / github.com/MariaDB/server / test_if_quick_select

Function test_if_quick_select

sql/sql_select.cc:25655–25690  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

25653*/
25654
25655static quick_select_return
25656test_if_quick_select(JOIN_TAB *tab)
25657{
25658 DBUG_EXECUTE_IF("show_explain_probe_test_if_quick_select",
25659 if (dbug_user_var_equals_int(tab->join->thd,
25660 "show_explain_probe_select_id",
25661 tab->join->select_lex->select_number))
25662 dbug_serve_apcs(tab->join->thd, 1);
25663 );
25664
25665
25666 delete tab->select->quick;
25667 tab->select->quick=0;
25668
25669 if (tab->table->file->inited != handler::NONE)
25670 tab->table->file->ha_index_or_rnd_end();
25671
25672 quick_select_return res;
25673 Json_writer_object wrapper(tab->join->thd);
25674 Json_writer_object range_fer(tab->join->thd,
25675 "range-checked-for-each-record");
25676 range_fer.add_select_number(tab->join->select_lex->select_number);
25677 range_fer.add("loop", tab->join->explain->time_tracker.get_loops());
25678
25679 Json_writer_array rows_est(tab->join->thd, "rows_estimation");
25680 res= tab->select->test_quick_select(tab->join->thd, tab->keys,
25681 (table_map) 0, HA_POS_ERROR, 0,
25682 FALSE, /*remove where parts*/FALSE,
25683 FALSE,
25684 /* no unusable key notes */
25685 Item_func::BITMAP_NONE);
25686 if (tab->explain_plan && tab->explain_plan->range_checked_fer)
25687 tab->explain_plan->range_checked_fer->collect_data(tab->select->quick);
25688
25689 return res;
25690}
25691
25692
25693/*

Callers 2

Calls 7

dbug_user_var_equals_intFunction · 0.85
ha_index_or_rnd_endMethod · 0.80
test_quick_selectMethod · 0.80
collect_dataMethod · 0.80
ifFunction · 0.70
addMethod · 0.45
get_loopsMethod · 0.45

Tested by

no test coverage detected