mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Bug#49501 Inefficient information_schema check (system collation)
added check_length optimization for I_S_NAME comparison
This commit is contained in:
@ -618,7 +618,7 @@ int mysql_create_db(THD *thd, char *db, HA_CREATE_INFO *create_info,
|
||||
DBUG_ENTER("mysql_create_db");
|
||||
|
||||
/* do not create 'information_schema' db */
|
||||
if (!my_strcasecmp(system_charset_info, db, INFORMATION_SCHEMA_NAME.str))
|
||||
if (is_schema_db(db, strlen(db)))
|
||||
{
|
||||
my_error(ER_DB_CREATE_EXISTS, MYF(0), db);
|
||||
DBUG_RETURN(-1);
|
||||
@ -1557,8 +1557,7 @@ bool mysql_change_db(THD *thd, const LEX_STRING *new_db_name, bool force_switch)
|
||||
}
|
||||
}
|
||||
|
||||
if (my_strcasecmp(system_charset_info, new_db_name->str,
|
||||
INFORMATION_SCHEMA_NAME.str) == 0)
|
||||
if (is_schema_db(new_db_name->str, new_db_name->length))
|
||||
{
|
||||
/* Switch the current database to INFORMATION_SCHEMA. */
|
||||
|
||||
|
Reference in New Issue
Block a user