Below is the list of changes that have just been committed into a local
5.1 repository of svoj. When svoj does a push these changes
will be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet@stripped, 2008-03-19 17:45:11+04:00, svoj@stripped +1 -0
BUG#34789 - drop server/create server leaks memory !
When CREATE SERVER is issued, it allocates memory on memory root
to store cached server structure. When DROP SERVER is issued,
it doesn't release this memory, as it is impossible with the
memory root.
This is fine, as we use memory root at least for plugins, and very
likely for acl. The problem here that there was no way (except for
the server restart) to force 'servers' code to release this memory.
With this fix it is possible to release unused server cache memory
by FLUSH PRIVILEGES.
No test case for this fix.
sql/sql_parse.cc@stripped, 2008-03-19 17:45:08+04:00, svoj@stripped +2 -0
Reload servers table on FLUSH PRIVILEGES.
diff -Nrup a/sql/sql_parse.cc b/sql/sql_parse.cc
--- a/sql/sql_parse.cc 2008-03-17 19:11:24 +04:00
+++ b/sql/sql_parse.cc 2008-03-19 17:45:08 +04:00
@@ -6486,6 +6486,8 @@ bool reload_acl_and_cache(THD *thd, ulon
result= 1;
if (grant_reload(thd))
result= 1;
+ if (servers_reload(thd))
+ result= 1;
}
if (tmp_thd)
{