diff options
author | unknown <kroki@mysql.com> | 2006-04-07 15:30:40 +0400 |
---|---|---|
committer | unknown <kroki@mysql.com> | 2006-04-07 15:30:40 +0400 |
commit | 68a0487dabd767616eeeb305ce5732d642f245a2 (patch) | |
tree | 87dfde8ce1266ccd5eeae77fff585f947f244b55 /sql/mysql_priv.h | |
parent | aa53b26d9fc90bab3dc69ae582ff7dd3d12fcbcc (diff) | |
download | mariadb-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.h | 1 |
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); |