1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

Bug#24988 FLUSH PRIVILEGES causes brief unavailability

- A race condition caused brief unavailablility when trying to acccess
  a table. 
- The variable 'grant_option' was removed to resolve the race condition and
  to simplify the design pattern. This flag was originally intended to optimize
  grant checks.


sql/mysql_priv.h:
  - removed 'grant_option' flag.
sql/sql_acl.cc:
  - removed 'grant_option' flag.
sql/sql_db.cc:
  - removed 'grant_option' flag.
sql/sql_insert.cc:
  - removed 'grant_option' flag.
sql/sql_parse.cc:
  - removed 'grant_option' flag.
  - removed unnecessary variables found_access, found
sql/sql_show.cc:
  - removed 'grant_option' flag.
sql/sql_update.cc:
  - removed 'grant_option' flag.
sql/sql_view.cc:
  - removed 'grant_option' flag.
This commit is contained in:
unknown
2007-05-28 14:08:04 +02:00
parent 2c06c07a7a
commit 416122b29c
8 changed files with 71 additions and 121 deletions

View File

@@ -1448,7 +1448,7 @@ bool mysql_change_db(THD *thd, const LEX_STRING *new_db_name, bool force_switch)
if (!force_switch &&
!(db_access & DB_ACLS) &&
(!grant_option || check_grant_db(thd, new_db_file_name.str)))
check_grant_db(thd, new_db_file_name.str))
{
my_error(ER_DBACCESS_DENIED_ERROR, MYF(0),
sctx->priv_user,