summaryrefslogtreecommitdiff
path: root/sql/sql_select.h
diff options
context:
space:
mode:
authorSergei Petrunia <psergey@askmonty.org>2014-05-27 20:13:17 +0400
committerSergei Petrunia <psergey@askmonty.org>2014-05-27 20:13:17 +0400
commiteaba1ba4a575c5280d41eaa3deac890dd25d82e4 (patch)
treee32cde5cead5e5d22209801049115a6c4dad998b /sql/sql_select.h
parent5a61516afd898f06a1b5504a4cce84cc8c95c9ed (diff)
downloadmariadb-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_select.h')
-rw-r--r--sql/sql_select.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/sql/sql_select.h b/sql/sql_select.h
index 271199e3d51..66d7b007bbb 100644
--- a/sql/sql_select.h
+++ b/sql/sql_select.h
@@ -250,7 +250,8 @@ typedef struct st_join_table {
/* Special content for EXPLAIN 'Extra' column or NULL if none */
enum explain_extra_tag info;
-
+
+ Explain_table_access *explain;
/*
Bitmap of TAB_INFO_* bits that encodes special line for EXPLAIN 'Extra'
column, or 0 if there is no info.
@@ -1854,14 +1855,14 @@ void push_index_cond(JOIN_TAB *tab, uint keyno);
/* EXPLAIN-related utility functions */
int print_explain_message_line(select_result_sink *result,
- uint8 options,
+ uint8 options, bool is_analyze,
uint select_number,
const char *select_type,
ha_rows *rows,
const char *message);
void explain_append_mrr_info(QUICK_RANGE_SELECT *quick, String *res);
int print_explain_row(select_result_sink *result,
- uint8 options,
+ uint8 options, bool is_analyze,
uint select_number,
const char *select_type,
const char *table_name,
@@ -1872,6 +1873,8 @@ int print_explain_row(select_result_sink *result,
const char *key_len,
const char *ref,
ha_rows *rows,
+ ha_rows *r_rows,
+ double r_filtered,
const char *extra);
void make_possible_keys_line(TABLE *table, key_map possible_keys, String *line);