diff options
author | Sergei Petrunia <psergey@askmonty.org> | 2014-06-25 16:46:42 +0400 |
---|---|---|
committer | Sergei Petrunia <psergey@askmonty.org> | 2014-06-25 16:46:42 +0400 |
commit | 424d5de89de907f37826ec8afb77769fe380d1e4 (patch) | |
tree | b12fc5dd3223c1ceb7c6ad91cbd8e444d3efc605 /sql/sql_select.h | |
parent | 787ec317784d58ca00c0c8e772173c66c5145f50 (diff) | |
parent | b561a98a87c0326dce59eb49c1b4b8f31da21d1e (diff) | |
download | mariadb-git-424d5de89de907f37826ec8afb77769fe380d1e4.tar.gz |
Merge bb-10.1-explain-analyze into 10.1
Diffstat (limited to 'sql/sql_select.h')
-rw-r--r-- | sql/sql_select.h | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/sql/sql_select.h b/sql/sql_select.h index dc86825e8e9..817ecc9904d 100644 --- a/sql/sql_select.h +++ b/sql/sql_select.h @@ -250,7 +250,9 @@ typedef struct st_join_table { /* Special content for EXPLAIN 'Extra' column or NULL if none */ enum explain_extra_tag info; - + + Table_access_tracker *tracker; + Table_access_tracker *jbuf_tracker; /* Bitmap of TAB_INFO_* bits that encodes special line for EXPLAIN 'Extra' column, or 0 if there is no info. @@ -536,6 +538,11 @@ typedef struct st_join_table { } void remove_redundant_bnl_scan_conds(); + + void save_explain_data(Explain_table_access *eta, table_map prefix_tables, + bool distinct, struct st_join_table *first_top_tab); + + void update_explain_data(uint idx); } JOIN_TAB; @@ -1848,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, @@ -1866,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); |