1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

MDEV-8199 - first_breadth_first_tab() takes 0.07% in OLTP RO

Split first_breadth_first_tab() into
JOIN::first_breadth_first_optimization_tab() and
JOIN::first_breadth_first_execution_tab().

This allows to eliminate function call and one condition. Adjusted callers
accordingly.

Overhead change:
first_breadth_first_tab()        0.07% -> out of radar
next_breadth_first_tab()         0.04% -> 0.04%
JOIN::cleanup()                  0.15% -> 0.11%
JOIN::save_explain_data_intern() 0.28% -> 0.24%
This commit is contained in:
Sergey Vojtovich
2015-05-21 12:30:41 +04:00
parent 84568c2965
commit 45f41b52e8
2 changed files with 29 additions and 34 deletions

View File

@ -1531,6 +1531,8 @@ public:
int save_explain_data_intern(Explain_query *output, bool need_tmp_table,
bool need_order, bool distinct,
const char *message);
JOIN_TAB *first_breadth_first_optimization_tab() { return table_access_tabs; }
JOIN_TAB *first_breadth_first_execution_tab() { return join_tab; }
private:
/**
TRUE if the query contains an aggregate function but has no GROUP