-
Georgi Kodinov authored
The --initialize* mode was not initializing the ACL cache and thus all CREATE|DROP|ALTER USER commands and all GRANT|REVOKE commands were failing. Since --init-file commands were executed in the same mode all of the above ACL related statements were failing in them too. This was unline the "normal" server startup where, when the --init-file is played, the ACL cache is already initialized. Initialized the ACL cache (through invoking FLUSH PRIVILEGES) as part of the --initialize sequence right after the mysql_system_tables.sql replay and before the creation of the root@localhost user and subsequent commands. Fixed the --initialize code to use CREATE USER and GRANT statements instead of the INSERT statements it was using. Relaxed a condition of not running as an anonymous user when changing passwords, since the --initialize thread is running as one such user. Test case added.
Georgi Kodinov authoredThe --initialize* mode was not initializing the ACL cache and thus all CREATE|DROP|ALTER USER commands and all GRANT|REVOKE commands were failing. Since --init-file commands were executed in the same mode all of the above ACL related statements were failing in them too. This was unline the "normal" server startup where, when the --init-file is played, the ACL cache is already initialized. Initialized the ACL cache (through invoking FLUSH PRIVILEGES) as part of the --initialize sequence right after the mysql_system_tables.sql replay and before the creation of the root@localhost user and subsequent commands. Fixed the --initialize code to use CREATE USER and GRANT statements instead of the INSERT statements it was using. Relaxed a condition of not running as an anonymous user when changing passwords, since the --initialize thread is running as one such user. Test case added.
Loading