diff options
author | Sergei Petrunia <psergey@askmonty.org> | 2014-05-27 20:13:17 +0400 |
---|---|---|
committer | Sergei Petrunia <psergey@askmonty.org> | 2014-05-27 20:13:17 +0400 |
commit | eaba1ba4a575c5280d41eaa3deac890dd25d82e4 (patch) | |
tree | e32cde5cead5e5d22209801049115a6c4dad998b /sql/sql_lex.cc | |
parent | 5a61516afd898f06a1b5504a4cce84cc8c95c9ed (diff) | |
download | mariadb-git-eaba1ba4a575c5280d41eaa3deac890dd25d82e4.tar.gz |
Re-commit in git:
MDEV-406: ANALYZE $stmt
- Ported the old patch to new explain code
- New SQL syntax (ANALYZE $stmt)
- ANALYZE UPDATE/DELETE is now supported (because EXPLAIN UPDATE/DELETE is supported)
- Basic counters are calculated for basic kinds of queries
(still need to see what happens with join buffer, ORDER BY...LIMIT queries, etc)
Diffstat (limited to 'sql/sql_lex.cc')
-rw-r--r-- | sql/sql_lex.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sql/sql_lex.cc b/sql/sql_lex.cc index c549a7be2cc..cd9f9238f71 100644 --- a/sql/sql_lex.cc +++ b/sql/sql_lex.cc @@ -483,6 +483,7 @@ void lex_start(THD *thd) if (lex->select_lex.group_list_ptrs) lex->select_lex.group_list_ptrs->clear(); lex->describe= 0; + lex->analyze_stmt= 0; lex->subqueries= FALSE; lex->context_analysis_only= 0; lex->derived_tables= 0; @@ -4181,12 +4182,12 @@ bool st_select_lex::is_merged_child_of(st_select_lex *ancestor) */ int LEX::print_explain(select_result_sink *output, uint8 explain_flags, - bool *printed_anything) + bool is_analyze, bool *printed_anything) { int res; if (explain && explain->have_query_plan()) { - res= explain->print_explain(output, explain_flags); + res= explain->print_explain(output, explain_flags, is_analyze); *printed_anything= true; } else |