summaryrefslogtreecommitdiff
path: root/sql/mysql_priv.h
diff options
context:
space:
mode:
authorunknown <kroki@mysql.com>2006-04-07 15:30:40 +0400
committerunknown <kroki@mysql.com>2006-04-07 15:30:40 +0400
commit68a0487dabd767616eeeb305ce5732d642f245a2 (patch)
tree87dfde8ce1266ccd5eeae77fff585f947f244b55 /sql/mysql_priv.h
parentaa53b26d9fc90bab3dc69ae582ff7dd3d12fcbcc (diff)
downloadmariadb-git-68a0487dabd767616eeeb305ce5732d642f245a2.tar.gz
Bug#15933: max_used_connections is wrong after FLUSH STATUS if connections are cached
After FLUSH STATUS max_used_connections was reset to 0, and haven't been updated while cached threads were reused, until the moment a new thread was created. The first suggested fix from original bug report was implemented: a) On flushing the status, set max_used_connections to threads_connected, not to 0. b) Check if it is necessary to increment max_used_connections when taking a thread from the cache as well as when creating new threads mysql-test/r/status.result: Add result for bug#15933. mysql-test/t/status.test: Add test case for bug#15933. Fixed typo. sql/mysql_priv.h: Add declaration of refresh_status(), which is now external. sql/mysqld.cc: Remove start_cached_thread() (code moved directly into create_new_thread()). Add comment for create_new_thread (). In create_new_thread() update max_used_connections when creating new thread and when reusing the cached one. Move refresh_status() from sql/sql_parse.cc here, on refresh set max_used_connections to the current number of connections. sql/sql_parse.cc: refresh_status() moved to sql/mysqld.cc.
Diffstat (limited to 'sql/mysql_priv.h')
-rw-r--r--sql/mysql_priv.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sql/mysql_priv.h b/sql/mysql_priv.h
index ca7801039c5..03121383d8a 100644
--- a/sql/mysql_priv.h
+++ b/sql/mysql_priv.h
@@ -1097,6 +1097,7 @@ File open_binlog(IO_CACHE *log, const char *log_file_name,
/* mysqld.cc */
extern void MYSQLerror(const char*);
+void refresh_status(THD *thd);
/* item_func.cc */
extern bool check_reserved_words(LEX_STRING *name);