diff options
author | Vicențiu Ciorbaru <vicentiu@mariadb.org> | 2016-09-19 20:45:30 +0200 |
---|---|---|
committer | Vicențiu Ciorbaru <vicentiu@mariadb.org> | 2016-09-24 15:12:34 +0200 |
commit | 62df3119a585837ac143ac5485fca4d650a8e5ff (patch) | |
tree | 2b853008df50c14a8d31850dbff1a6db1e2a272e | |
parent | 5cb568786a574fa5e8bc306330cd04a16c7217fc (diff) | |
download | mariadb-git-62df3119a585837ac143ac5485fca4d650a8e5ff.tar.gz |
Add a counter for the number of select statements using window functions
The counter is available via SHOW [GLOBAL] STATUS and will be reported
by the feedback plugin.
-rw-r--r-- | sql/mysqld.cc | 1 | ||||
-rw-r--r-- | sql/sql_class.h | 1 | ||||
-rw-r--r-- | sql/sql_select.cc | 2 |
3 files changed, 4 insertions, 0 deletions
diff --git a/sql/mysqld.cc b/sql/mysqld.cc index cf9e99b54a6..a5cfd0527e8 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -8411,6 +8411,7 @@ SHOW_VAR status_vars[]= { {"Feature_subquery", (char*) offsetof(STATUS_VAR, feature_subquery), SHOW_LONG_STATUS}, {"Feature_timezone", (char*) offsetof(STATUS_VAR, feature_timezone), SHOW_LONG_STATUS}, {"Feature_trigger", (char*) offsetof(STATUS_VAR, feature_trigger), SHOW_LONG_STATUS}, + {"Feature_window_functions", (char*) offsetof(STATUS_VAR, feature_window_functions), SHOW_LONG_STATUS}, {"Feature_xml", (char*) offsetof(STATUS_VAR, feature_xml), SHOW_LONG_STATUS}, {"Flush_commands", (char*) &show_flush_commands, SHOW_SIMPLE_FUNC}, {"Handler_commit", (char*) offsetof(STATUS_VAR, ha_commit_count), SHOW_LONG_STATUS}, diff --git a/sql/sql_class.h b/sql/sql_class.h index d2a489bfef6..51642ecf798 100644 --- a/sql/sql_class.h +++ b/sql/sql_class.h @@ -789,6 +789,7 @@ typedef struct system_status_var ulong feature_timezone; /* +1 when XPATH is used */ ulong feature_trigger; /* +1 opening a table with triggers */ ulong feature_xml; /* +1 when XPATH is used */ + ulong feature_window_functions; /* +1 when window functions are used */ /* From MASTER_GTID_WAIT usage */ ulonglong master_gtid_wait_timeouts; /* Number of timeouts */ diff --git a/sql/sql_select.cc b/sql/sql_select.cc index 1eaa1ced0b8..761f6c4b130 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -2699,6 +2699,8 @@ bool JOIN::make_aggr_tables_info() if (curr_tab->window_funcs_step->setup(thd, &select_lex->window_funcs, curr_tab)) DBUG_RETURN(true); + /* Count that we're using window functions. */ + status_var_increment(thd->status_var.feature_window_functions); } fields= curr_fields_list; |